Explicación de los resultados de un trabajo de evaluación humana
Al crear un trabajo de evaluación del modelo en el que intervengan trabajadores humanos, ha seleccionado uno o más tipos de métricas. Cuando los miembros del equipo de trabajo evalúan una respuesta en el portal de trabajadores, sus respuestas se guardan en el objeto JSON
. La forma en que se almacenan esas respuestas cambia en función del tipo de métrica seleccionada al crear el trabajo.humanAnswers
En las siguientes secciones, se explican estas diferencias y se proporcionan ejemplos.
Referencia de salida de JSON
Cuando se completa un trabajo de evaluación del modelo, los resultados se guardan en Amazon S3 como un archivo JSON. El objeto JSON contiene tres nodos de alto nivel: humanEvaluationResult
, inputRecord
y modelResponses
. La clave humanEvaluationResult
es un nodo de alto nivel que contiene las respuestas del equipo de trabajo asignado al trabajo de evaluación del modelo. La clave inputRecord
es un nodo de alto nivel que contiene las peticiones que se proporcionaron a los modelos cuando se creó el trabajo de evaluación del modelo. La clave modelResponses
es un nodo de alto nivel que contiene las respuestas a las peticiones de los modelos.
La siguiente tabla resume los pares clave-valor que se encuentran en la salida JSON del trabajo de evaluación del modelo.
En las secciones siguientes, se proporcionan más detalles sobre cada par clave-valor.
Parámetro | Ejemplo | Descripción |
---|---|---|
|
arn:aws:sagemaker:us-west-2:
|
El ARN del flujo de trabajo de revisión humana (definición de flujo) que creó el bucle humano. |
humanAnswers |
Una lista de objetos JSON específicos de las métricas de evaluación seleccionadas. Para obtener más información, consulte Los pares clave-valor se encuentran en humanAnswers. |
Una lista de objetos JSON que contienen las respuestas de los trabajadores. |
|
system-generated-hash |
Un sistema generó una cadena hexadecimal de 40 caracteres. |
inputRecord |
|
Un objeto JSON que contiene una petición de entrada del conjunto de datos de entrada. |
modelResponses |
|
Las respuestas individuales de los modelos. |
inputContent |
|
Es el contenido de entrada de bucle humano necesario para iniciar un bucle humano en el bucket de Amazon S3. |
modelResponseIdMap |
|
Describe cómo se representa cada modelo en |
Los pares clave-valor se encuentran en humanEvaluationResult
Los siguientes pares clave-valor se encuentran debajo del humanEvaluationResult
en la salida del trabajo de evaluación del modelo.
Para ver los pares clave-valor asociados a humanAnswers
, consulte Los pares clave-valor se encuentran en humanAnswers.
flowDefinitionArn
-
El ARN de la definición de flujo utilizado para completar el trabajo de evaluación del modelo.
-
Ejemplo:
arn:aws:sagemaker:us-west-2:
111122223333
:flow-definition/flow-definition-name
humanLoopName
-
Un sistema generó una cadena hexadecimal de 40 caracteres.
inputContent
-
Este valor clave describe los tipos de métricas y las instrucciones que proporcionó a los trabajadores en el portal del trabajador.
-
additionalDataS3Uri
: la ubicación en Amazon S3 donde se guardan las instrucciones para los trabajadores. -
instructions
: las instrucciones que proporcionó a los trabajadores en el portal del trabajador. -
evaluationMetrics
: el nombre de la métrica y su descripción. El valor de clavemetricType
es la herramienta que se proporciona a los trabajadores para evaluar las respuestas de los modelos.
-
modelResponseIdMap
-
Este par clave-valor identifica los nombres completos de los modelos seleccionados y la forma en que las elecciones de los trabajadores se asignan a los modelos en los pares clave-valor
humanAnswers
.
Los pares clave-valor se encuentran en inputRecord
En las entradas siguientes se describen los pares clave-valor inputRecord
.
prompt
-
El texto de la petición enviada al modelo.
category
-
Una categoría opcional que clasifica la petición. Visible para los trabajadores en el portal del trabajador durante la evaluación del modelo.
-
Ejemplo:
"American cities"
referenceResponse
-
Un campo opcional del JSON de entrada que se utiliza para especificar la verdad fundamental a la que quiere que se remitan los trabajadores durante la evaluación
responses
-
Un campo opcional del JSON de entrada que contiene respuestas de otros modelos.
Un ejemplo de registro de entrada JSON.
{ "prompt": { "text": "Who invented the airplane?" }, "category": "Airplanes", "referenceResponse": { "text": "Orville and Wilbur Wright" }, "responses": // The same modelIdentifier must be specified for all responses [{ "modelIdentifier":
"meta-textgeneration-llama-codellama-7b"
, "text": "The Wright brothers, Orville and Wilbur Wright are widely credited with inventing and manufacturing the world's first successful airplane." }] }
Los pares clave-valor se encuentran en modelResponses
Matriz de pares clave-valor que contiene las respuestas de los modelos y el modelo que proporcionó las respuestas.
text
-
La respuesta del modelo a la petición.
modelIdentifier
-
El nombre del modelo.
Los pares clave-valor se encuentran en humanAnswers
Matriz de pares clave-valor que contiene las respuestas de los modelos y la forma en que los trabajadores evaluaron los modelos.
acceptanceTime
-
Cuando el trabajador ha aceptado la tarea en el portal del trabajador.
submissionTime
-
Cuando el trabajador ha enviado su respuesta.
timeSpentInSeconds
-
Cuánto tiempo dedicó el trabajador a completar la tarea.
workerId
-
El identificador del trabajador que completó la tarea.
workerMetadata
-
Metadatos sobre el equipo de trabajo asignado a este trabajo de evaluación del modelo.
Formato de la matriz answerContent
JSON
La estructura de la respuesta depende de las métricas de evaluación seleccionadas al crear el trabajo de evaluación del modelo. La respuesta de cada trabajador se registra en un nuevo objeto JSON.
answerContent
-
evaluationResults
contiene las respuestas del trabajador.-
Cuando se selecciona Botones de elección, los resultados de cada trabajador son
"evaluationResults": "comparisonChoice"
.metricName
: el nombre de la métrica.result
: el objeto JSON indica qué modelo seleccionó el trabajador mediante0
o1
. Para ver qué valor tiene asignado para ver un modelo,modelResponseIdMap
. -
Cuando se selecciona Escala Likert: comparación, los resultados de cada trabajador son
"evaluationResults": "comparisonLikertScale"
.metricName
: el nombre de la métrica.leftModelResponseId
: indica quémodelResponseIdMap
se mostró en la parte izquierda del portal del trabajador.rightModelResponseId
: indica quémodelResponseIdMap
se mostró en la parte izquierda del portal del trabajador.result
: el objeto JSON indica qué modelo seleccionó el trabajador mediante0
o1
. Para ver qué valor tiene asignado para ver un modelo,modelResponseIdMap
-
Cuando se selecciona Clasificación ordinal, los resultados de cada trabajador son
"evaluationResults": "comparisonRank"
.metricName
: el nombre de la métrica.result
: una matriz de objetos JSON. Para cada modelo (modelResponseIdMap
), los trabajadores proporcionan unarank
."result": [{ "modelResponseId": "0", "rank": 1 }, { "modelResponseId": "1", "rank": 1 }]
-
Cuando se selecciona Escala Likert, evaluación de la respuesta de un solo modelo, los resultados de un trabajador se guardan en
"evaluationResults": "individualLikertScale"
. Se trata de una matriz JSON que contiene las puntuaciones demetricName
especificadas en el momento en que se creó el trabajo.metricName
: el nombre de la métrica.modelResponseId
: el modelo que se puntúa. Para ver qué valor tiene asignado para ver un modelo,modelResponseIdMap
.result
: un par clave-valor que indica el valor de la escala Likert seleccionado por el trabajador. -
Cuando se selecciona Pulgares arriba o abajo, los resultados de un trabajador se guardan como una matriz JSON
"evaluationResults": "thumbsUpDown"
.metricName
: el nombre de la métrica.result
: estrue
ofalse
en lo que se refiere ametricName
. Cuando un trabajador elige el pulgar hacia arriba,"result" : true
.
-
Ejemplo de salida de un trabajo de evaluación del modelo
El siguiente objeto JSON es un ejemplo de la salida de un trabajo de evaluación del modelo que se guarda en Amazon S3. Para obtener más información acerca de cada par clave-valor, consulte Referencia de salida de JSON.
Para mayor claridad, este trabajo solo contiene las respuestas de dos trabajadores. Es posible que algunos pares clave-valor también se hayan truncado para facilitar la lectura.
{ "humanEvaluationResult": { "flowDefinitionArn": "arn:aws:sagemaker:
us-west-2
:111122223333
:flow-definition/flow-definition-name
", "humanAnswers": [ { "acceptanceTime": "2024-06-07T22:31:57.066Z", "answerContent": { "evaluationResults": { "comparisonChoice": [ { "metricName": "Fluency", "result": { "modelResponseId": "0" } } ], "comparisonLikertScale": [ { "leftModelResponseId": "0", "metricName": "Coherence", "result": 1, "rightModelResponseId": "1" } ], "comparisonRank": [ { "metricName": "Toxicity", "result": [ { "modelResponseId": "0", "rank": 1 }, { "modelResponseId": "1", "rank": 1 } ] } ], "individualLikertScale": [ { "metricName": "Correctness", "modelResponseId": "0", "result": 2 }, { "metricName": "Correctness", "modelResponseId": "1", "result": 3 }, { "metricName": "Completeness", "modelResponseId": "0", "result": 1 }, { "metricName": "Completeness", "modelResponseId": "1", "result": 4 } ], "thumbsUpDown": [ { "metricName": "Accuracy", "modelResponseId": "0", "result": true }, { "metricName": "Accuracy", "modelResponseId": "1", "result": true } ] } }, "submissionTime": "2024-06-07T22:32:19.640Z", "timeSpentInSeconds": 22.574, "workerId": "ead1ba56c1278175", "workerMetadata": { "identityData": { "identityProviderType": "Cognito", "issuer": "https://cognito-idp.us-west-2.amazonaws.com/us-west-2_WxGLvNMy4", "sub": "cd2848f5-6105-4f72-b44e-68f9cb79ba07" } } }, { "acceptanceTime": "2024-06-07T22:32:19.721Z", "answerContent": { "evaluationResults": { "comparisonChoice": [ { "metricName": "Fluency", "result": { "modelResponseId": "1" } } ], "comparisonLikertScale": [ { "leftModelResponseId": "0", "metricName": "Coherence", "result": 1, "rightModelResponseId": "1" } ], "comparisonRank": [ { "metricName": "Toxicity", "result": [ { "modelResponseId": "0", "rank": 2 }, { "modelResponseId": "1", "rank": 1 } ] } ], "individualLikertScale": [ { "metricName": "Correctness", "modelResponseId": "0", "result": 3 }, { "metricName": "Correctness", "modelResponseId": "1", "result": 4 }, { "metricName": "Completeness", "modelResponseId": "0", "result": 1 }, { "metricName": "Completeness", "modelResponseId": "1", "result": 5 } ], "thumbsUpDown": [ { "metricName": "Accuracy", "modelResponseId": "0", "result": true }, { "metricName": "Accuracy", "modelResponseId": "1", "result": false } ] } }, "submissionTime": "2024-06-07T22:32:57.918Z", "timeSpentInSeconds": 38.197, "workerId": "bad258db224c3db6", "workerMetadata": { "identityData": { "identityProviderType": "Cognito", "issuer": "https://cognito-idp.us-west-2.amazonaws.com/us-west-2_WxGLvNMy4", "sub": "84d5194a-3eed-4ecc-926d-4b9e1b724094" } } } ], "humanLoopName": "a757 11d3e75a 8d41f35b9873d 253f5b7bce0256e", "inputContent": { "additionalDataS3Uri": "s3://mgrt-test-us-west-2/test-2-workers-2-model/datasets/custom_dataset/0/task-input-additional-data.json", "instructions": "worker instructions provided by the model evaluation job administrator", "evaluationMetrics": [ { "metricName": "Fluency", "metricType": "ComparisonChoice", "description": "Measures the linguistic quality of a generated text." }, { "metricName": "Coherence", "metricType": "ComparisonLikertScale", "description": "Measures the organization and structure of a generated text." }, { "metricName": "Toxicity", "metricType": "ComparisonRank", "description": "Measures the harmfulness of a generated text." }, { "metricName": "Accuracy", "metricType": "ThumbsUpDown", "description": "Indicates the accuracy of a generated text." }, { "metricName": "Correctness", "metricType": "IndividualLikertScale", "description": "Measures a generated answer's satisfaction in the context of the question." }, { "metricName": "Completeness", "metricType": "IndividualLikertScale", "description": "Measures a generated answer's inclusion of all relevant information." } ], "disableRandomization": "true" }, "modelResponseIdMap": { "0": "sm-margaret-meta-textgeneration-llama-2-7b-1711485008-0612", "1": "jumpstart-dft-hf-llm-mistral-7b-ins-20240327-043352" } }, "inputRecord": { "prompt": { "text": "What is high intensity interval training?" }, "category": "Fitness", "referenceResponse": { "text": "High-Intensity Interval Training (HIIT)" } }, "modelResponses": [ { "text": "High Intensity Interval Training (HIIT) is a form of exercise that alternates between periods of high intensity work and low intensity recovery.HIIT is an excellent way to increase your fitness and improve your health, but it can be difficult to get started.In this article, we will", "modelIdentifier": "sm-margaret-meta-textgeneration-llama-2-7b-1711485008-0612" }, { "text": "High intensity interval training is a form of exercise consisting of short bursts of maximum effort followed by periods of rest. The theory behind HIIT is that it can often be more effective at improving cardiovascular and metabolic health than longer, lower intensity workouts.The work intervals can range in length depending on the specific type of exercise, but are typically between 20 and 90 seconds. The recovery periods are generally longer, lasting between 1 and 5 minutes. This pattern is then repeated for multiple sets.\n\nSince the work intervals are high intensity, they require more effort from your body and therefore result in a greater calorie burn. The body also continues to burn calories at an increased rate after the workout due to an effect called excess post exercise oxygen consumption (EPOC), also know as the afterburn effect.\n\nHIIT is a versatile form of training that can be adapted to different fitness levels and can be performed using a variety of exercises including cycling, running, bodyweight movements, and even swimming. It can be done in as little as 20 minutes once or twice a week, making it an efficient option for busy individuals.\n\nWhat are the benefits of high intensity interval training", "modelIdentifier": "jumpstart-dft-hf-llm-mistral-7b-ins-20240327-043352" } ] }