Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.
Lorsque vous avez créé une tâche d'évaluation de modèles utilisant des travailleurs humains, vous avez sélectionné un ou plusieurs types de métriques. Lorsque les membres de l'équipe de travail évaluent une réponse dans le portail des travailleurs, leurs réponses sont enregistrées dans l'objet
JSON. La façon dont ces réponses sont stockées change en fonction du type de métrique sélectionné lors de la création de la tâche.humanAnswers
Les sections suivantes expliquent ces différences et fournissent des exemples.
Référence de sortie JSON
Lorsqu'une tâche d'évaluation de modèle est terminée, les résultats sont enregistrés dans Amazon S3 sous forme de fichier JSON. L'objet JSON contient trois nœuds de haut niveau humanEvaluationResult
inputRecord
, et modelResponses
.La humanEvaluationResult
clé est un nœud de haut niveau qui contient les réponses de l'équipe de travail affectée à la tâche d'évaluation du modèle. La inputRecord
clé est un nœud de haut niveau qui contient les instructions fournies au (x) modèle (s) lors de la création de la tâche d'évaluation du modèle. La modelResponses
clé est un nœud de haut niveau qui contient les réponses aux demandes du ou des modèles.
Le tableau suivant récapitule les paires clé-valeur trouvées dans la sortie JSON de la tâche d'évaluation du modèle.
Les sections suivantes fournissent des informations plus détaillées sur chaque paire clé-valeur.
Paramètre | exemple | Description |
---|---|---|
|
arn:aws:sagemaker:us-west-2:
|
L'ARN du flux de travail de révision humaine (définition du flux) qui a créé la boucle humaine. |
humanAnswers |
Liste d'objets JSON spécifiques aux métriques d'évaluation sélectionnées. Pour en savoir plus, voir,Paires de valeurs clés trouvées sous humanAnswers. |
Liste d'objets JSON contenant les réponses des travailleurs. |
|
system-generated-hash |
Chaîne hexadécimale de 40 caractères générée par le système. |
inputRecord |
|
Objet JSON contenant une requête en entrée issue du jeu de données d’entrée. |
modelResponses |
|
Réponses individuelles des modèles. |
inputContent |
|
Le contenu d'entrée de la boucle humaine requis pour démarrer la boucle humaine dans votre compartiment Amazon S3. |
modelResponseIdMap |
|
Décrit comment chaque modèle est représenté dans le |
Paires de valeurs clés trouvées sous humanEvaluationResult
Les paires clé-valeur suivantes se trouvent humanEvaluationResult
sous le résultat de votre tâche d'évaluation de modèle.
Pour les paires clé-valeur associées àhumanAnswers
, voirPaires de valeurs clés trouvées sous humanAnswers.
flowDefinitionArn
-
L'ARN de la définition de flux utilisée pour terminer le travail d'évaluation du modèle.
-
Exemple :
arn:aws:sagemaker:us-west-2:
111122223333
:flow-definition/flow-definition-name
humanLoopName
-
Chaîne hexadécimale de 40 caractères générée par le système.
inputContent
-
Cette valeur clé décrit les types de mesures et les instructions que vous avez fournies aux travailleurs sur le portail des travailleurs.
-
additionalDataS3Uri
: emplacement dans Amazon S3 où les instructions destinées aux employés sont enregistrées. -
instructions
: les instructions que vous avez fournies aux travailleurs sur le portail des travailleurs. -
evaluationMetrics
: le nom de la métrique et sa description. La valeur clémetricType
est l'outil fourni aux travailleurs pour évaluer les réponses des modèles.
-
modelResponseIdMap
-
Cette paire clé-valeur identifie les noms complets des modèles sélectionnés et indique comment les choix des opérateurs sont mappés aux modèles des paires
humanAnswers
clé-valeur.
Paires de valeurs clés trouvées sous inputRecord
Les entrées suivantes décrivent les paires inputRecord
clé-valeur.
prompt
-
Le texte de l'invite envoyée au modèle.
category
-
Catégorie facultative qui classe l'invite. Visible par les travailleurs sur le portail des travailleurs lors de l'évaluation du modèle.
-
Exemple :
"American cities"
referenceResponse
-
Un champ facultatif du JSON d'entrée utilisé pour spécifier la vérité de base à laquelle vous souhaitez que les travailleurs fassent référence lors de l'évaluation.
responses
-
Champ facultatif du JSON d'entrée qui contient les réponses d'autres modèles.
Exemple d'enregistrement d'entrée 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."
}]
}
Paires de valeurs clés trouvées sous modelResponses
Un tableau de paires clé-valeur qui contient les réponses des modèles et le modèle qui a fourni les réponses.
text
-
Réponse du modèle à l'invite.
modelIdentifier
-
Nom du modèle.
Paires de valeurs clés trouvées sous humanAnswers
Un tableau de paires de valeurs clés contenant les réponses des modèles et la manière dont les travailleurs ont évalué les modèles.
acceptanceTime
-
Lorsque le travailleur a accepté la tâche dans le portail des travailleurs.
submissionTime
-
Quand le travailleur a soumis sa réponse.
timeSpentInSeconds
-
Combien de temps le travailleur a passé à exécuter la tâche.
workerId
-
ID du travailleur qui a effectué la tâche.
workerMetadata
-
Métadonnées indiquant quelle équipe de travail a été affectée à cette tâche d'évaluation du modèle.
Format du tableau answerContent
JSON
La structure de réponse dépend des métriques d'évaluation sélectionnées lors de la création de la tâche d'évaluation du modèle. Chaque réponse ou réponse du travailleur est enregistrée dans un nouvel objet JSON.
answerContent
-
evaluationResults
contient les réponses du travailleur.-
Lorsque les boutons Choix sont sélectionnés, les résultats de chaque travailleur sont les mêmes
"evaluationResults": "comparisonChoice"
.metricName
: nom de la métriqueresult
: L'objet JSON indique le modèle sélectionné par le travailleur à l'aide d'un0
ou1
. Pour voir quelle valeur un modèle est mappé,modelResponseIdMap
. -
Lorsque l'échelle de Likert est sélectionnée, la comparaison est sélectionnée, les résultats de chaque travailleur sont identiques
"evaluationResults": "comparisonLikertScale"
.metricName
: nom de la métrique.leftModelResponseId
: indique ce quimodelResponseIdMap
était affiché sur le côté gauche du portail des travailleurs.rightModelResponseId
: indique ce quimodelResponseIdMap
était affiché sur le côté gauche du portail des travailleurs.result
: L'objet JSON indique le modèle sélectionné par le travailleur à l'aide d'un0
ou1
. Pour connaître la valeur à laquelle un modèle est mappé,modelResponseIdMap
-
Lorsque le rang ordinal est sélectionné, les résultats de chaque travailleur sont les mêmes
"evaluationResults": "comparisonRank"
.metricName
: nom de la métriqueresult
: tableau d'objets JSON. Pour chaque modèle (modelResponseIdMap
), les travailleurs fournissent unrank
."result": [{ "modelResponseId": "0", "rank": 1 }, { "modelResponseId": "1", "rank": 1 }]
-
Lorsque l'échelle de Likert est sélectionnée, l'évaluation d'une seule réponse du modèle est sélectionnée, les résultats dans
"evaluationResults": "individualLikertScale"
lesquels un travailleur est enregistré sont enregistrés. Il s'agit d'un tableau JSON contenant les scoresmetricName
spécifiés lors de la création de la tâche.metricName
: nom de la métrique.modelResponseId
: Le modèle noté. Pour voir quelle valeur un modèle est mappé,modelResponseIdMap
.result
: une paire clé-valeur indiquant la valeur de l'échelle de Likert sélectionnée par le travailleur. -
Lorsque Thumbs up/down est sélectionné, les résultats d'un worker sont enregistrés sous forme de tableau JSON.
"evaluationResults": "thumbsUpDown"
metricName
: nom de la métrique.result
:true
Oufalse
en ce qui concerne lemetricName
. Lorsqu'un travailleur choisit le pouce levé,"result" : true
.
-
Exemple de résultat d'une tâche d'évaluation de modèle
L'objet JSON suivant est un exemple de sortie de tâche d'évaluation de modèle enregistrée dans Amazon S3. Pour en savoir plus sur chaque paire de valeurs clés, consultez leRéférence de sortie JSON.
Pour plus de clarté, ce travail ne contient que les réponses de deux travailleurs. Certaines paires clé-valeur peuvent également avoir été tronquées pour des raisons de lisibilité
{
"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"
}
]
}