Cree un trabajo de evaluación del modelo Amazon Bedrock - 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.

Cree un trabajo de evaluación del modelo Amazon Bedrock

Puede crear un trabajo de evaluación de modelos mediante el AWS Management Console, AWS CLI, o un compatible AWS SDK. Puede crear un trabajo de evaluación automática de modelos que genere métricas para la evaluación. También puede crear un trabajo de evaluación de modelos basado en humanos que aproveche a un equipo de trabajadores humanos para calificar y proporcionar sus opiniones para la evaluación.

Los siguientes ejemplos muestran cómo crear un trabajo de evaluación de modelos automático y basado en humanos mediante la consola Amazon Bedrock, AWS CLI, SDK para Python.

Visualización de los resultados del trabajo de evaluación de modelos mediante la consola de Amazon Bedrock

Cuando finaliza un trabajo de evaluación de modelos, los resultados se almacenan en el bucket de Amazon S3 que haya especificado. Si modifica la ubicación de los resultados de alguna manera, la tarjeta del informe de la evaluación de modelos ya no estará visible en la consola.

Trabajos de evaluación de modelos automática

Los siguientes ejemplos muestran cómo crear un trabajo de evaluación automática de modelos. Todos los trabajos de evaluación automática de modelos requieren la creación de un rol IAM de servicio. Para obtener más información sobre los IAM requisitos para configurar un trabajo de evaluación de modelos, consulteRequisitos de rol de servicio para los trabajos de evaluación de modelos.

Amazon Bedrock console

Utilice el siguiente procedimiento para crear un trabajo de evaluación de modelos mediante la consola Amazon Bedrock. Para completar correctamente este procedimiento, asegúrese de que su IAM usuario, grupo o rol tenga los permisos suficientes para acceder a la consola. Para obtener más información, consulte Permisos necesarios para la evaluación del modelo mediante la consola Amazon Bedrock.

Además, cualquier conjunto de datos de solicitudes personalizadas que desee especificar en el trabajo de evaluación del modelo debe tener los CORS permisos necesarios añadidos al bucket de Amazon S3. Para obtener más información sobre cómo añadir los CORS permisos necesarios, consulte,Se requiere el permiso de intercambio de recursos entre orígenes (CORS) en los buckets de S3.

Para crear un trabajo de evaluación automática de modelos
  1. Abre la consola Amazon Bedrock: https://console.aws.amazon.com/bedrock/

  2. En el panel de navegación, elija Evaluación de modelo.

  3. En la tarjeta Crear una evaluación, en Automático, elija Crear evaluación automática.

  4. En la página Crear evaluación automática, proporcione la siguiente información

    1. Nombre de la evaluación: asigne al trabajo de evaluación de modelos un nombre que describa el trabajo. Este nombre se muestra en su lista de trabajos de evaluación de modelos. El nombre debe ser único en su cuenta en un Región de AWS.

    2. Descripción (opcional): proporcione una descripción opcional.

    3. Modelos: elija el modelo que desee utilizar en el trabajo de evaluación de modelos.

      Para obtener más información sobre los modelos disponibles y cómo acceder a ellos en Amazon Bedrock, consulteAcceda a los modelos básicos de Amazon Bedrock.

    4. (Opcional) Para cambiar la configuración de inferencia, elija actualizar.

      Al cambiar la configuración de inferencia, se cambian las respuestas generadas por los modelos seleccionados. Para obtener más información sobre los parámetros de inferencia disponibles, consulte Parámetros de inferencia para modelos fundacionales.

    5. Tipo de tarea: elija el tipo de tarea que desea que el modelo intente realizar durante el trabajo de evaluación de modelos.

    6. Métricas y conjuntos de datos: la lista de métricas disponibles y los conjuntos de datos de peticiones integrados cambian en función de la tarea que seleccione. Puede elegir de la lista de Conjuntos de datos integrados disponibles o puede elegir Usar su propio conjunto de datos de peticiones. Si decide usar su propio conjunto de datos de solicitudes, introduzca el S3 exacto del archivo URI de conjunto de datos de solicitudes o elija Browse S3 para buscar su conjunto de datos de solicitudes.

    7. >Resultados de la evaluación: especifique el S3 URI del directorio en el que desea guardar los resultados. Elija Browse S3 para buscar una ubicación en Amazon S3.

    8. (Opcional) Para habilitar el uso de una clave administrada por el cliente, seleccione Personalizar la configuración de cifrado (avanzada). A continuación, proporcione el ARN AWS KMS clave que desee utilizar.

    9. IAMRol de Amazon Bedrock: elija Usar un rol existente para usar el rol de IAM servicio que ya tenga los permisos necesarios o elija Crear un nuevo rol para crear un nuevo rol de IAM servicio.

  5. A continuación, elija Crear.

Una vez que el estado cambie: Completado, podrás ver la libreta de calificaciones del trabajo.

SDK for Python

Procedimiento

import boto3 client = boto3.client('bedrock') job_request = client.create_evaluation_job( jobName="api-auto-job-titan", jobDescription="two different task types", roleArn="arn:aws:iam::111122223333:role/role-name", inferenceConfig={ "models": [ { "bedrockModel": { "modelIdentifier":"arn:aws:bedrock:us-west-2::foundation-model/amazon.titan-text-lite-v1", "inferenceParams":"{\"temperature\":\"0.0\", \"topP\":\"1\", \"maxTokenCount\":\"512\"}" } } ] }, outputDataConfig={ "s3Uri":"s3://model-evaluations/outputs/" }, evaluationConfig={ "automated": { "datasetMetricConfigs": [ { "taskType": "QuestionAndAnswer", "dataset": { "name": "Builtin.BoolQ" }, "metricNames": [ "Builtin.Accuracy", "Builtin.Robustness" ] } ] } } ) print(job_request)
AWS CLI

En el navegador AWS CLI, puede usar el help comando para ver qué parámetros son obligatorios y qué parámetros son opcionales al especificarlos create-evaluation-job en el AWS CLI.

aws bedrock create-evaluation-job help
aws bedrock create-evaluation-job \ --job-name 'automatic-eval-job-cli-001 \ --role-arn 'arn:aws:iam::111122223333:role/role-name' \ --evaluation-config '{"automated": {"datasetMetricConfigs": [{"taskType": "QuestionAndAnswer","dataset": {"name": "Builtin.BoolQ"},"metricNames": ["Builtin.Accuracy","Builtin.Robustness"]}]}}' \ --inference-config '{"models": [{"bedrockModel": {"modelIdentifier":"arn:aws:bedrock:us-west-2::foundation-model/amazon.titan-text-lite-v1","inferenceParams":"{\"temperature\":\"0.0\", \"topP\":\"1\", \"maxTokenCount\":\"512\"}"}}]}' \ --output-data-config '{"s3Uri":"s3://automatic-eval-jobs/outputs"}'

Trabajos de evaluación de modelos basados en humanos

Los siguientes ejemplos muestran cómo crear un trabajo de evaluación de modelos que utilice trabajadores humanos.

Consola

Para crear un trabajo de evaluación de modelos con trabajadores humanos:
  1. Abre la consola Amazon Bedrock: home https://console.aws.amazon.com/bedrock/

  2. En el panel de navegación, elija Evaluación de modelo.

  3. En la tarjeta Crea una evaluación, en Humano: trae tu propio equipo, elige Crear una evaluación basada en humanos.

  4. En la página Especificar detalles del proyecto, haga lo siguiente:

    1. Nombre de la evaluación: asigne al trabajo de evaluación de modelos un nombre que describa el trabajo. Este nombre se muestra en su lista de trabajos de evaluación de modelos. El nombre debe ser único en tu cuenta en un Región de AWS.

    2. Descripción (opcional): proporcione una descripción opcional.

  5. A continuación, elija Siguiente.

  6. En la página Configure la evaluación, proporcione lo siguiente.

    1. Modelos: puede elegir hasta dos modelos que desee utilizar en el trabajo de evaluación de modelos.

      Para obtener más información sobre los modelos disponibles en Amazon Bedrock, consulte Acceda a los modelos básicos de Amazon Bedrock.

    2. (Opcional) Para cambiar la configuración de inferencia de los modelos seleccionados, elija actualizar.

      Al cambiar la configuración de inferencia, se cambian las respuestas generadas por los modelos seleccionados. Para obtener más información sobre los parámetros de inferencia disponibles, consulte Parámetros de inferencia para modelos fundacionales.

    3. Tipo de tarea: elija el tipo de tarea que desea que el modelo intente realizar durante el trabajo de evaluación de modelos. Todas las instrucciones del modelo deben incluirse en las propias peticiones. El tipo de tarea no controla las respuestas del modelo.

    4. Métricas de evaluación: la lista de métricas recomendadas cambia en función de la tarea que seleccione. Para cada métrica recomendada, debe seleccionar un Método de calificación. Puede tener un máximo de 10 métricas de evaluación por trabajo de evaluación de modelos.

    5. (Opcional) Seleccione Añadir métrica para añadir una métrica. Debe definir la Métrica, la Descripción y el Método de calificación.

    6. En la tarjeta de conjuntos de datos, debe proporcionar lo siguiente.

      1. Elija un conjunto de datos de solicitudes: especifique el S3 URI del archivo de conjunto de datos de solicitudes o elija Buscar S3 para ver los depósitos de S3 disponibles. Puede tener un máximo de 1000 peticiones en un conjunto de datos de peticiones personalizado.

      2. Destino de los resultados de la evaluación: debe especificar el S3 URI del directorio en el que desea guardar los resultados del trabajo de evaluación del modelo o elegir Browse S3 para ver los depósitos de S3 disponibles.

    7. (Opcional) AWS KMS clave: proporcione ARN la clave gestionada por el cliente que desee utilizar para cifrar su trabajo de evaluación de modelos.

    8. En la tarjeta de IAMroles — Permisos de Amazon Bedrock, debes hacer lo siguiente. Para obtener más información sobre los permisos necesarios para las evaluaciones de modelos, consulte Permisos y funciones IAM de servicio necesarios para la evaluación de modelos en Amazon Bedrock.

      1. Para usar un rol de servicio de Amazon Bedrock existente, selecciona Usar un rol existente. De lo contrario, utilice Crear un nuevo rol para especificar los detalles de su nuevo rol de IAM servicio.

      2. En Nombre del rol de servicio, especifique el nombre del rol de IAM servicio.

      3. Cuando esté listo, elija Crear rol para crear el nuevo rol IAM de servicio.

  7. A continuación, elija Siguiente.

  8. En la tarjeta Permisos, especifique lo siguiente. Para obtener más información sobre los permisos necesarios para las evaluaciones de modelos, consulte Permisos y funciones IAM de servicio necesarios para la evaluación de modelos en Amazon Bedrock.

  9. IAMRol de flujo de trabajo humano: especifique un rol de SageMaker servicio que tenga los permisos necesarios.

  10. En la tarjeta Equipo de trabajo, especifique lo siguiente.

    Requisitos de notificación a los trabajadores humanos

    Cuando agregue un nuevo trabajador humano a un trabajo de evaluación de modelos, recibirá automáticamente un correo electrónico en el que se le invitará a participar en el trabajo de evaluación de modelos. Al añadir un trabajador humano existente a un trabajo de evaluación de modelos, debe notificárselo y proporcionarle un portal de trabajadores URL para el trabajo de evaluación de modelos. El trabajador actual no recibirá una notificación automática por correo electrónico de su incorporación al nuevo trabajo de evaluación de modelos.

    1. En el menú desplegable Seleccionar equipo, especifique Crear un nuevo equipo de trabajo o el nombre de un equipo de trabajo existente.

    2. (Opcional) Número de trabajadores por petición: actualiza la cantidad de trabajadores que evalúan cada petición. Una vez revisadas las respuestas de cada petición según el número de trabajadores que haya seleccionado, la petición y sus respuestas se retirarán de la circulación por parte del equipo de trabajo. El informe de resultados final incluirá todas las calificaciones de cada trabajador.

    3. (Opcional) Correo electrónico del trabajador existente: seleccione esta opción para copiar una plantilla de correo electrónico que contenga el portal del trabajadorURL.

    4. (Opcional) Correo electrónico del nuevo trabajador: seleccione esta opción para ver el correo electrónico que los nuevos trabajadores reciben automáticamente.

      importante

      Se sabe que los modelos de lenguaje grandes alucinan de vez en cuando y producen contenido tóxico u ofensivo. Es posible que a sus trabajadores se les muestre material tóxico u ofensivo durante esta evaluación. Asegúrese de tomar las medidas adecuadas para formarlos y notificarlos antes de que trabajen en la evaluación. Pueden rechazar y dejar en pausa las tareas o tomarse descansos durante la evaluación mientras acceden a la herramienta de evaluación humana.

  11. A continuación, elija Siguiente.

  12. En la página Proporcionar instrucciones, utilice el editor de texto para proporcionar instrucciones para completar la tarea. Puede obtener una vista previa de la interfaz de usuario de evaluación que su equipo de trabajo utiliza para evaluar las respuestas, incluidas las métricas, los métodos de calificación y sus instrucciones. Esta vista previa se basa en la configuración que ha creado para este trabajo.

  13. A continuación, elija Siguiente.

  14. En la página Revisar y crear, puede ver un resumen de las opciones que ha seleccionado en los pasos anteriores.

  15. Para comenzar su trabajo de evaluación de modelos, elija Crear.

    nota

    Una vez que el trabajo se haya iniciado correctamente, el estado cambiará a En curso. Cuando el trabajo haya finalizado, el estado cambiará a Completado. Mientras se esté realizando un trabajo de evaluación de modelos, puede optar por detenerlo antes de que su equipo de trabajo haya evaluado todas las respuestas de los modelos. Para ello, selecciona Detener la evaluación en la página de inicio de la evaluación del modelo. Esto cambiará el estado del trabajo de evaluación del modelo a Detenido. Una vez que el trabajo de evaluación del modelo se haya detenido correctamente, puede eliminarlo.

APIy AWS CLI

Cuando crea un trabajo de evaluación de modelos basado en humanos fuera de la consola de Amazon Bedrock, necesita crear una definición de SageMaker flujo de Amazon. ARN

La definición de flujo ARN es donde se define el flujo de trabajo de un trabajo de evaluación de modelos. La definición de flujo se utiliza para definir la interfaz de trabajo y el equipo de trabajo que desea asignar a la tarea y conectarse a Amazon Bedrock.

Para los trabajos de evaluación de modelos que comiencen a utilizar API las operaciones de Amazon Bedrock, debe crear una definición de flujo ARN mediante el AWS CLI o un compatible AWS SDK. Para obtener más información sobre cómo funcionan las definiciones de flujo y cómo crearlas mediante programación, consulte Crear un flujo de trabajo de revisión humana (API) en la Guía para SageMaker desarrolladores.

En el CreateFlowDefinitiondebe especificar AWS/Bedrock/Evaluation como entrada para el. AwsManagedHumanLoopRequestSource El rol de servicio de Amazon Bedrock también debe tener permisos para acceder al segmento de salida de la definición de flujo.

El siguiente es un ejemplo de solicitud que utiliza el AWS CLI. En la solicitud, HumanTaskUiArn es una SageMaker propiedadARN. En elARN, solo puede modificar el Región de AWS.

aws sagemaker create-flow-definition --cli-input-json ' { "FlowDefinitionName": "human-evaluation-task01", "HumanLoopRequestSource": { "AwsManagedHumanLoopRequestSource": "AWS/Bedrock/Evaluation" }, "HumanLoopConfig": { "WorkteamArn": "arn:aws:sagemaker:Región de AWS:111122223333:workteam/private-crowd/my-workteam", ## The Task UI ARN is provided by the service team, you can only modify the AWS Region. "HumanTaskUiArn":"arn:aws:sagemaker:AWS Region:394669845002:human-task-ui/Evaluation" "TaskTitle": "Human review tasks", "TaskDescription": "Provide a real good answer", "TaskCount": 1, "TaskAvailabilityLifetimeInSeconds": 864000, "TaskTimeLimitInSeconds": 3600, "TaskKeywords": [ "foo" ] }, "OutputConfig": { "S3OutputPath": "s3://your-output-bucket" }, "RoleArn": "arn:aws:iam::111122223333:role/SageMakerCustomerRoleArn" }'

Tras crear la definición de flujoARN, utilice los siguientes ejemplos para crear un trabajo de evaluación de modelos basado en humanos utilizando el AWS CLI o un compatible AWS SDK.

SDK for Python

El siguiente ejemplo de código muestra cómo crear un trabajo de evaluación de modelos que utilice trabajadores humanos mediante SDK for SDK for Python.

import boto3 client = boto3.client('bedrock') job_request = client.create_evaluation_job( jobName="111122223333-job-01", jobDescription="two different task types", roleArn="arn:aws:iam::111122223333:role/example-human-eval-api-role", inferenceConfig={ ## You must specify and array of models "models": [ { "bedrockModel": { "modelIdentifier":"arn:aws:bedrock:us-west-2::foundation-model/amazon.titan-text-lite-v1", "inferenceParams":"{\"temperature\":\"0.0\", \"topP\":\"1\", \"maxTokenCount\":\"512\"}" } }, { "bedrockModel": { "modelIdentifier": "anthropic.claude-v2", "inferenceParams": "{\"temperature\":\"0.25\",\"top_p\":\"0.25\",\"max_tokens_to_sample\":\"256\",\"top_k\":\"1\"}" } } ] }, outputDataConfig={ "s3Uri":"s3://job-bucket/outputs/" }, evaluationConfig={ "human": { "humanWorkflowConfig": { "flowDefinitionArn": "arn:aws:sagemaker:us-west-2:111122223333:flow-definition/example-workflow-arn", "instructions": "some human eval instruction" }, "customMetrics": [ { "name": "IndividualLikertScale", "description": "testing", "ratingMethod": "IndividualLikertScale" } ], "datasetMetricConfigs": [ { "taskType": "Summarization", "dataset": { "name": "Custom_Dataset1", "datasetLocation": { "s3Uri": "s3://job-bucket/custom-datasets/custom-trex.jsonl" } }, "metricNames": [ "IndividualLikertScale" ] } ] } } ) print(job_request)