Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
Implementare la policy di ragionamento automatico nell’applicazione
Dopo aver testato la policy di ragionamento automatico e averne trovato soddisfacenti le prestazioni, puoi distribuirla per utilizzarla nell’applicazione con Guardrail per Amazon Bedrock. Questa pagina illustra l'intero flusso di lavoro di implementazione: salvataggio di una versione immutabile, collegamento a un guardrail, automazione della distribuzione e integrazione nelle pipeline. CloudFormation CI/CD
Salvare una versione della policy di ragionamento automatico
Quando hai finito di testare la tua policy, crea una versione immutabile. Le versioni immutabili assicurano che la policy allegata al guardrail non cambi inaspettatamente quando continui a modificare la BOZZA. Ogni versione è identificata da un numero di versione numerico (1, 2, 3,...) e non può essere modificata dopo la creazione.
Utilizzo della console
-
Nel riquadro di navigazione a sinistra, scegli Ragionamento automatico.
-
Scegli la policy di Ragionamento automatico che desideri utilizzare con l’applicazione.
-
Scegli Salva come nuova versione. Puoi utilizzare questa versione della policy con il guardrail.
Uso dell’API
Usa l'CreateAutomatedReasoningPolicyVersionAPI per creare una versione immutabile della tua policy di ragionamento automatico.
Parametri della richiesta
policyArn(obbligatorio)-
Il nome della risorsa Amazon (ARN) della policy di ragionamento automatico per cui creare la versione.
lastUpdatedDefinitionHash(richiesto)-
L'hash della definizione della policy per la nuova versione. Recupera questo hash dall'API.
GetAutomatedReasoningPolicyCiò garantisce che tu stia verificando la versione esatta della definizione della policy che hai testato.
Esempio
# Get the current definition hash aws bedrock get-automated-reasoning-policy \ --policy-arn "arn:aws:bedrock:us-east-1:111122223333:automated-reasoning-policy/lnq5hhz70wgk" \ --query "definitionHash" --output text # Create the version aws bedrock create-automated-reasoning-policy-version \ --policy-arn "arn:aws:bedrock:us-east-1:111122223333:automated-reasoning-policy/lnq5hhz70wgk" \ --last-updated-definition-hash "583463f067a8a4f49fc1206b4642fd40..."
Risposta di esempio:
{ "policyArn": "arn:aws:bedrock:us-east-1:111122223333:automated-reasoning-policy/lnq5hhz70wgk", "version": "1", "name": "MyHRPolicy" }
Aggiungere la policy di ragionamento automatico al guardrail
Una volta salvata una versione della tua policy di ragionamento automatico, aggiungila a un guardrail. Il guardrail è il componente di runtime che l'applicazione chiama per convalidare le risposte LLM. È possibile aggiungere una politica di ragionamento automatico a un guardrail nuovo o esistente.
Utilizzo della console
-
Nella barra di navigazione a sinistra, scegli Guardrails, quindi scegli Crea guardrail (o seleziona un guardrail esistente e scegli Modifica).
-
Quando arrivi alla schermata Aggiungi controlli del ragionamento automatico, scegli Abilita la policy del ragionamento automatico.
-
Per Nome della policy, scegli una versione salvata di una policy di ragionamento automatico, quindi scegli Avanti.
-
Completa la creazione o l'aggiornamento del guardrail.
Uso dell’API
Usa l'UpdateGuardrailAPI CreateGuardrail o per aggiungere una politica di ragionamento automatico al tuo guardrail. Includi il automatedReasoningConfig parametro con la policy ARN con versione.
Parametri della richiesta
automatedReasoningConfig-
La configurazione per i controlli del ragionamento automatico in Guardrail per Amazon Bedrock.
policyArn(obbligatorio)-
L'ARN della versione della policy di ragionamento automatico da utilizzare con il guardrail. Usa l'ARN con versione (che termina con, ecc.)
:1:2, non l'ARN senza versione.
Esempio
aws bedrock create-guardrail \ --name "HR-Policy-Guardrail" \ --description "Guardrail for HR policy validation" \ --automated-reasoning-policy-config policies="arn:aws:bedrock:us-east-1:111122223333:automated-reasoning-policy/lnq5hhz70wgk:1" \ --cross-region-config '{"guardrailProfileIdentifier": "us.guardrail.v1:0"}' \ --blocked-input-messaging "I cannot process this request." \ --blocked-outputs-messaging "I cannot provide this response."
Importante
Utilizza la policy ARN con versione (ad esempio,). arn:aws:bedrock:us-east-1:111122223333:automated-reasoning-policy/lnq5hhz70wgk:1 Se si utilizza l'ARN senza versione, l'API restituisce un errore. Crea prima una versione utilizzando. CreateAutomatedReasoningPolicyVersion
Importante
I guardrail che utilizzano i controlli di ragionamento automatico richiedono un profilo di inferenza interregionale. Includi il --cross-region-config parametro con un guardrailProfileIdentifier che corrisponda al prefisso della tua regione (ad esempio, per le regioni degli Stati Uniti o us.guardrail.v1:0 per le regioni dell'UE). eu.guardrail.v1:0 Se ometti questo parametro, l'API restituisce un. ValidationException
Esporta una versione della policy per la distribuzione
Per implementare una policy tramite CloudFormation o una CI/CD pipeline, è necessario il JSON di definizione della policy. Utilizza l'ExportAutomatedReasoningPolicyVersionAPI per esportare la definizione completa della policy, incluse tutte le regole, le variabili e i tipi personalizzati, da una versione salvata.
La definizione esportata è lo stesso formato accettato dalla PolicyDefinition proprietà della CloudFormation
AWS::Bedrock::AutomatedReasoningPolicy risorsa. Ciò semplifica lo spostamento di una policy dal flusso di lavoro della console interattiva alla distribuzione automatica.
# Export the policy definition from version 1 aws bedrock export-automated-reasoning-policy-version \ --policy-arn "arn:aws:bedrock:us-east-1:111122223333:automated-reasoning-policy/lnq5hhz70wgk:1" \ --query "policyDefinition" \ --output json >policy-definition.json
Il JSON esportato contiene la seguente struttura:
{ "version": "1.0", "variables": [ { "name": "isFullTime", "type": "BOOL", "description": "Whether the employee works full-time (true) or part-time (false)." }, { "name": "tenureMonths", "type": "INT", "description": "The number of complete months the employee has been continuously employed." } ], "rules": [ { "id": "A1B2C3D4E5F6", "expression": "(=> (and isFullTime (> tenureMonths 12)) eligibleForParentalLeave)" } ], "types": [] }
Memorizza questo file nel controllo della versione insieme ai tuoi CloudFormation modelli. Quando aggiorni la tua policy, esporta la nuova versione e aggiorna il file per attivare una distribuzione.
Automatizza la distribuzione con CloudFormation
Utilizzalo CloudFormation per implementare la tua policy di ragionamento automatico e il guardrail come infrastruttura come codice. La AWS::Bedrock::AutomatedReasoningPolicy risorsa crea una policy con una definizione di policy che puoi esportare dall'API o dalla console. In combinazione conAWS::Bedrock::Guardrail, puoi distribuire lo stack di convalida completo in un unico modello.
Nota
CloudFormation crea la risorsa politica con la definizione della politica fornita. Non esegue un flusso di lavoro di compilazione né estrae regole dai documenti di origine. Devi prima creare e testare la tua policy in modo interattivo (usando la console, l'API o l'interfaccia a riga di comando di Kiro), quindi esportare la definizione della policy testata per utilizzarla nel tuo modello. Per ulteriori informazioni, consulta Esporta una versione della policy per la distribuzione.
Per il riferimento completo alle proprietà della risorsa politica, vedi AWS::Bedrock: AutomatedReasoningPolicy nel Riferimento al CloudFormation modello.
Esempio: implementazione di una policy e di un guardrail
Il CloudFormation modello seguente crea una politica di ragionamento automatico con una definizione della politica e un guardrail che fa riferimento ad essa. Sostituisci la definizione della policy con il JSON esportato dalla tua policy testata.
AWSTemplateFormatVersion: '2010-09-09' Description: Deploy an Automated Reasoning policy and guardrail Parameters: PolicyName: Type: String Default:MyHRPolicyDescription: Name of the Automated Reasoning policy GuardrailName: Type: String Default:HR-Policy-GuardrailDescription: Name of the guardrail Resources: AutomatedReasoningPolicy: Type: AWS::Bedrock::AutomatedReasoningPolicy Properties: Name: !Ref PolicyName Description: Validates HR chatbot responses about leave eligibility PolicyDefinition: Version: '1.0' Variables: - Name: isFullTime Type: BOOL Description: >- Whether the employee works full-time (true) or part-time (false). Set to true when users mention being full-time or working 40+ hours per week. - Name: tenureMonths Type: INT Description: >- The number of complete months the employee has been continuously employed. When users mention years of service, convert to months (for example, 2 years = 24 months). - Name: eligibleForParentalLeave Type: BOOL Description: >- Whether the employee is eligible for parental leave based on employment status and tenure. Rules: - Id:A1B2C3D4E5F6Expression: >- (=> (and isFullTime (> tenureMonths 12)) eligibleForParentalLeave) - Id:G7H8I9J0K1L2Expression: >- (=> (or (not isFullTime) (<= tenureMonths 12)) (not eligibleForParentalLeave)) Types: [] Tags: - Key: Environment Value: Production - Key: Team Value: HR Guardrail: Type: AWS::Bedrock::Guardrail Properties: Name: !Ref GuardrailName Description: Guardrail with Automated Reasoning checks for HR policy BlockedInputMessaging: I cannot process this request. BlockedOutputsMessaging: I cannot provide this response. AutomatedReasoningPolicyConfig: Policies: - !GetAtt AutomatedReasoningPolicy.PolicyArn CrossRegionConfig: GuardrailProfileArn: !Sub "arn:aws:bedrock:${AWS::Region}:${AWS::AccountId}:guardrail-profile/us.guardrail.v1:0" Outputs: PolicyArn: Description: ARN of the Automated Reasoning policy Value: !GetAtt AutomatedReasoningPolicy.PolicyArn PolicyId: Description: ID of the Automated Reasoning policy Value: !GetAtt AutomatedReasoningPolicy.PolicyId GuardrailId: Description: ID of the guardrail Value: !Ref Guardrail
Suggerimento
Per le implementazioni di produzione, mantieni la definizione della policy in un file JSON separato e fai riferimento ad essa utilizzando Fn::Include o caricandola come parametro del modello. Ciò mantiene pulito il modello e semplifica l'aggiornamento della definizione della politica in modo indipendente.
Importante
I guardrail che utilizzano i controlli di ragionamento automatico richiedono un profilo di inferenza interregionale. La CrossRegionConfig proprietà specifica l'ARN del profilo guardrail per la tua regione. Sostituisci il prefisso della regione (us) con il prefisso appropriato per la regione di distribuzione (ad esempio, per le regioni dell'UE). eu Se ometti questa proprietà, la creazione del guardrail ha esito negativo.
Esempio: implementazione con una chiave KMS gestita dal cliente
Per crittografare la tua policy con una chiave KMS gestita dal cliente, aggiungi la proprietà. KmsKeyId È inoltre necessario configurare la policy chiave per consentire ad Amazon Bedrock di utilizzare la chiave. Per le autorizzazioni chiave richieste, consulta. Autorizzazioni KMS per le policy di ragionamento automatico
AutomatedReasoningPolicy: Type: AWS::Bedrock::AutomatedReasoningPolicy Properties: Name: !Ref PolicyName Description: Validates HR chatbot responses about leave eligibility KmsKeyId: !GetAtt PolicyEncryptionKey.Arn PolicyDefinition: # ... policy definition ... Tags: - Key: Environment Value: Production
Importante
La modifica della KmsKeyId proprietà richiede la sostituzione della risorsa. CloudFormation eliminerà la policy esistente e ne creerà una nuova con un nuovo ARN. Aggiorna tutti i guardrail che fanno riferimento al vecchio ARN della policy.
Fasi successive
Dopo aver implementato la policy e il guardrail, integra i controlli di ragionamento automatico nella tua applicazione per convalidare le risposte LLM in fase di esecuzione. Per ulteriori informazioni, consulta Integra i controlli di ragionamento automatizzato nella tua applicazione.