View a markdown version of this page

Implementación de la política de razonamiento automatizado en su aplicación - Amazon Bedrock

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Implementación de la política de razonamiento automatizado en su aplicación

Una vez que haya probado su política de razonamiento automatizado y esté satisfecho con su rendimiento, podrá implementarla para utilizarla en su aplicación con Barreras de protección para Amazon Bedrock. En esta página, se describe todo el flujo de trabajo de implementación: guardar una versión inmutable, adjuntarla a una barrera, automatizar la implementación con canalizaciones e integrarla en las canalizaciones. CloudFormation CI/CD

Almacenamiento de una versión de su política de razonamiento automatizado

Cuando termines de probar tu política, crea una versión inmutable. Las versiones inmutables garantizan que la política adjunta a tu barandilla no cambie inesperadamente cuando continúes editando el DRAFT. Cada versión se identifica con un número de versión numérico (1, 2, 3,...) y no se puede modificar una vez creada.

Uso de la consola

  1. En el panel de navegación izquierdo, seleccione Razonamiento automatizado.

  2. Elija la política de razonamiento automatizado que quiera usar con su aplicación.

  3. Seleccione Guardar como versión nueva. Puede usar esta versión de la política con su barrera de protección.

Uso de la API

Usa la CreateAutomatedReasoningPolicyVersion API para crear una versión inmutable de tu política de razonamiento automatizado.

Parámetros de solicitud

policyArn (obligatorio)

El Nombre de recurso de Amazon (ARN) de la política de razonamiento automatizado para la que ha creado una versión.

lastUpdatedDefinitionHash (obligatorio)

El hash de la definición de política de la nueva versión. Recupera este hash de la GetAutomatedReasoningPolicy API. Esto garantiza que esté versionando la definición de política exacta que probó.

Ejemplo

# 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..."

Ejemplo de respuesta:

{ "policyArn": "arn:aws:bedrock:us-east-1:111122223333:automated-reasoning-policy/lnq5hhz70wgk", "version": "1", "name": "MyHRPolicy" }

Adición de la política de razonamiento automatizado a la barrera de protección

Cuando tengas una versión guardada de tu política de razonamiento automatizado, agrégala a una barrera. La barrera es el componente de tiempo de ejecución al que la aplicación llama para validar las respuestas de LLM. Puede agregar una política de razonamiento automatizado a una barrera nueva o existente.

Uso de la consola

  1. En el panel de navegación de la izquierda, selecciona Barandillas y, a continuación, elige Crear barandilla (o selecciona una barandilla existente y elige Editar).

  2. Cuando llegue a la pantalla Añadir verificaciones de razonamiento automatizado, seleccione Activar política de razonamiento automatizado.

  3. En Nombre de la política, elija una versión guardada de una política de razonamiento automatizado y, a continuación, seleccione Siguiente.

  4. Termina de crear o actualizar tu barandilla.

Uso de la API

Usa la UpdateGuardrail API CreateGuardrail o para agregar una política de razonamiento automatizado a tu barrera. Incluya el automatedReasoningConfig parámetro con el ARN de la política versionada.

Parámetros de solicitud

automatedReasoningConfig

La configuración de las verificaciones de razonamiento automatizado en Barreras de protección para Amazon Bedrock.

policyArn (obligatorio)

El ARN de la versión de la política de razonamiento automatizado que se va a utilizar con la barandilla. Usa el ARN versionado (que termina en:1, etc.):2, no el ARN no versionado.

Ejemplo

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

Utilice el ARN de la política versionada (por ejemplo,). arn:aws:bedrock:us-east-1:111122223333:automated-reasoning-policy/lnq5hhz70wgk:1 Si usas el ARN no versionado, la API devuelve un error. Crea primero una versión usando. CreateAutomatedReasoningPolicyVersion

importante

Las barreras que utilizan comprobaciones de razonamiento automático requieren un perfil de inferencia interregional. Incluye el --cross-region-config parámetro con un prefijo guardrailProfileIdentifier que coincida con el de tu región (por ejemplo, us.guardrail.v1:0 para las regiones de EE. UU. o eu.guardrail.v1:0 de la UE). Si omites este parámetro, la API devolverá un. ValidationException

Exporta una versión de la política para su implementación

Para implementar una política a través CloudFormation de una CI/CD canalización, necesita el JSON de definición de política. Usa la ExportAutomatedReasoningPolicyVersion API para exportar la definición de política completa (incluidas todas las reglas, variables y tipos personalizados) desde una versión guardada.

La definición exportada tiene el mismo formato que acepta la PolicyDefinition propiedad del CloudFormation AWS::Bedrock::AutomatedReasoningPolicy recurso. Esto facilita el traslado de una política del flujo de trabajo de la consola interactiva a la implementación automatizada.

# 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

El JSON exportado contiene la siguiente estructura:

{ "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": [] }

Guarda este archivo en el control de versiones junto con tus CloudFormation plantillas. Cuando actualices tu política, exporta la nueva versión y actualiza el archivo para activar una implementación.

Automatice la implementación con CloudFormation

Úselo CloudFormation para implementar su política de razonamiento automatizado y guardarrail como infraestructura como código. El AWS::Bedrock::AutomatedReasoningPolicy recurso crea una política con una definición de política que se exporta desde la API o la consola. En combinación con estoAWS::Bedrock::Guardrail, puede implementar toda la pila de validación en una sola plantilla.

nota

CloudFormation crea el recurso de política con la definición de política que usted proporciona. No ejecuta un flujo de trabajo de compilación ni extrae reglas de los documentos fuente. Primero debes crear y probar tu política de forma interactiva (mediante la consola, la API o la CLI de Kiro) y, a continuación, exportar la definición de política probada para usarla en tu plantilla. Para obtener más información, consulte Exporta una versión de la política para su implementación.

Para obtener la referencia de propiedad completa del recurso de política, consulte AWS::Bedrock:: AutomatedReasoningPolicy en la referencia de la CloudFormation plantilla.

Ejemplo: implementar una política y una barandilla

La siguiente CloudFormation plantilla crea una política de razonamiento automático con una definición de política y una barrera que hace referencia a ella. Sustituya la definición de la política por el JSON exportado desde la política probada.

AWSTemplateFormatVersion: '2010-09-09' Description: Deploy an Automated Reasoning policy and guardrail Parameters: PolicyName: Type: String Default: MyHRPolicy Description: Name of the Automated Reasoning policy GuardrailName: Type: String Default: HR-Policy-Guardrail Description: 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: A1B2C3D4E5F6 Expression: >- (=> (and isFullTime (> tenureMonths 12)) eligibleForParentalLeave) - Id: G7H8I9J0K1L2 Expression: >- (=> (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
sugerencia

Para las implementaciones de producción, guarda la definición de la política en un archivo JSON independiente y haz referencia a ella usándola Fn::Include o cargándola como parámetro de plantilla. Esto mantiene la plantilla limpia y facilita la actualización de la definición de la política de forma independiente.

importante

Las barreras que utilizan comprobaciones de razonamiento automático requieren un perfil de inferencia interregional. La CrossRegionConfig propiedad especifica el ARN del perfil de barandilla de su región. Sustituya el prefijo de la región (us) por el prefijo correspondiente a su región de despliegue (por ejemplo, eu para las regiones de la UE). Si omites esta propiedad, se producirá un error en la creación de la barandilla.

Ejemplo: implemente con una clave de KMS administrada por el cliente

Para cifrar su política con una clave de KMS administrada por el cliente, agregue la KmsKeyId propiedad. También debe configurar la política de claves para permitir que Amazon Bedrock utilice la clave. Para conocer los permisos necesarios para la política de claves, consultePermisos de KMS para las políticas de razonamiento automatizado.

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

Para cambiar la KmsKeyId propiedad es necesario reemplazar el recurso. CloudFormation eliminará la política existente y creará una nueva con un ARN nuevo. Actualice todas las barandillas que hagan referencia al ARN de la política anterior.

Siguientes pasos

Tras implementar la política y la barrera, integre las comprobaciones de razonamiento automatizado en su aplicación para validar las respuestas de la LLM en tiempo de ejecución. Para obtener más información, consulte Integre las comprobaciones de razonamiento automatizadas en su aplicación.