Informazioni sui risultati di un processo di valutazione umana - Amazon SageMaker AI

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à.

Informazioni sui risultati di un processo di valutazione umana

Quando hai creato un processo di valutazione del modello con lavoratori umani, hai selezionato uno o più tipi di metriche. Quando i membri del team di lavoro valutano una risposta nel portale per i lavoratori, le loro risposte vengono salvate nell’oggetto json humanAnswers. Il modo in cui tali risposte vengono archiviate cambia in base al tipo di metrica selezionato al momento della creazione del processo.

Le sezioni seguenti spiegano queste differenze e forniscono esempi.

Documentazione di riferimento dell’output JSON

Al termine di un processo di valutazione del modello, i risultati vengono salvati in Amazon S3 come file JSON. L’oggetto JSON contiene tre nodi generali, humanEvaluationResult, inputRecord e modelResponses. La humanEvaluationResult chiave è un nodo generale che contiene le risposte del team di lavoro assegnato al processo di valutazione del modello. La chiave inputRecord è un nodo generale che contiene i prompt forniti ai modelli al momento della creazione del processo di valutazione del modello. La chiave modelResponses è un nodo generale che contiene le risposte ai prompt di uno o più modelli.

La tabella seguente riassume le coppie chiave-valore trovate nell’output JSON del processo di valutazione del modello.

Le sezioni successive forniscono dettagli più granulari su ciascuna coppia chiave-valore.

Parametro Esempio Description

flowDefinitionArn

arn:aws:sagemaker:us-west-2:111122223333:flow-definition/flow-definition-name

L’ARN del flusso di lavoro di revisione umana (definizione del flusso) utilizzato per creare il ciclo umano.

humanAnswers

Un elenco di oggetti JSON specifici per le metriche di valutazione selezionate. Per ulteriori informazioni, consulta Coppie chiave-valore trovate in humanAnswers..

Un elenco di oggetti JSON che contiene le risposte dei lavoratori.

humanLoopName

system-generated-hash Una stringa esadecimale di 40 caratteri generata dal sistema.
inputRecord
"inputRecord": { "prompt": { "text": "Who invented the airplane?" }, "category": "Airplanes", "referenceResponse": { "text": "Orville and Wilbur Wright" }, "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." }] }
Un oggetto JSON contenente un prompt di immissione dal set di dati di input.
modelResponses
"modelResponses": [{ "modelIdentifier": "arn:aws:bedrock:us-west-2::foundation-model/model-id", "text": "the-models-response-to-the-prompt" }]
Le risposte individuali dei modelli.
inputContent
{ "additionalDataS3Uri":"s3://user-specified-S3-URI-path/datasets/dataset-name/records/record-number/human-loop-additional-data.json", "evaluationMetrics":[ { "description":"brief-name", "metricName":"metric-name", "metricType":"IndividualLikertScale" } ], "instructions":"example instructions" }

Il contenuto di input del ciclo umano necessario per avviare tale ciclo nel tuo bucket Amazon S3.

modelResponseIdMap
{ "0": "sm-margaret-meta-textgeneration-llama-2-7b-1711485008-0612", "1": "jumpstart-dft-hf-llm-mistral-7b-ins-20240327-043352" }

Descrive come viene rappresentato ogni modello in answerContent.

Coppie chiave-valore trovate in humanEvaluationResult.

Le seguenti coppie chiave-valore sono state trovate in humanEvaluationResult nell’output del processo di valutazione del modello.

Per le coppie chiave-valore associate a humanAnswers, consulta Coppie chiave-valore trovate in humanAnswers..

flowDefinitionArn

  • L’ARN della definizione del flusso utilizzato per completare il processo di valutazione del modello.

  • Esempioarn:aws:sagemaker:us-west-2:111122223333:flow-definition/flow-definition-name:

humanLoopName

  • Una stringa esadecimale di 40 caratteri generata dal sistema.

inputContent

  • Questo valore della chiave descrive i tipi di metriche e le istruzioni fornite ai lavoratori nel portale per i lavoratori.

    • additionalDataS3Uri: la posizione in Amazon S3 in cui vengono salvate le istruzioni per i lavoratori.

    • instructions: le istruzioni fornite ai lavoratori nel portale per i lavoratori.

    • evaluationMetrics: il nome della metrica e la relativa descrizione. Il valore della chiave metricType è lo strumento fornito ai lavoratori per valutare le risposte dei modelli.

modelResponseIdMap

  • Questa coppia chiave-valore identifica i nomi completi dei modelli selezionati e il modo in cui le scelte dei lavoratori vengono mappate ai modelli nelle coppie chiave-valore humanAnswers.

Coppie chiave-valore trovate in inputRecord.

Le voci seguenti descrivono le coppie chiave-valore inputRecord.

prompt

  • Il testo del prompt inviato al modello.

category

  • Una categoria facoltativa che classifica il prompt. Visibile ai lavoratori nel portale per i lavoratori durante la valutazione del modello.

  • Esempio"American cities":

referenceResponse

  • Un campo facoltativo dell’input JSON utilizzato per specificare la Ground Truth a cui si desidera che i lavoratori facciano riferimento durante la valutazione.

responses

  • Un campo facoltativo dell’input JSON che contiene le risposte di altri modelli.

Un esempio di record di input 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." }] }

Coppie chiave-valore trovate in modelResponses.

Un array di coppie chiave-valore che contiene le risposte dei modelli e il modello che ha fornito le risposte.

text

  • La risposta del modello al prompt.

modelIdentifier

  • Il nome del modello.

Coppie chiave-valore trovate in humanAnswers.

Un array di coppie chiave-valore che contiene le risposte dei modelli e il modo in cui i lavoratori hanno valutato i modelli.

acceptanceTime

  • L’ora in cui il lavoratore ha accettato l’attività nel portale per i lavoratori.

submissionTime

  • L’ora in cui il lavoratore ha inviato la risposta.

timeSpentInSeconds

  • La durata per il completamento dell’attività del lavoratore.

workerId

  • L’ID del lavoratore che ha completato l’attività.

workerMetadata

  • Metadati relativi al team di lavoro assegnato a questo processo di valutazione del modello.

Formato dell’array JSON answerContent

La struttura della risposta dipende dalle metriche di valutazione selezionate al momento della creazione del processo di valutazione del modello. Ogni risposta o risposta del lavoratore viene registrata in un nuovo oggetto JSON.

answerContent

  • evaluationResults contiene le risposte del lavoratore.

    • Quando è selezionato Pulsanti di scelta, i risultati di ogni lavoratore sono uguali a "evaluationResults": "comparisonChoice".

      metricName: il nome della metrica.

      result: l’oggetto JSON indica quale modello ha selezionato il lavoratore utilizzando 0 o1. Per vedere a quale valore viene mappato un modello, consulta modelResponseIdMap.

    • Quando è selezionato Scala Likert - Confronto, i risultati di ogni lavoratore sono uguali a "evaluationResults": "comparisonLikertScale".

      metricName: il nome della metrica.

      leftModelResponseId: indica quale modelResponseIdMap era visualizzato sul lato sinistro del portale per i lavoratori.

      rightModelResponseId: indica quale modelResponseIdMap era visualizzato sul lato sinistro del portale per i lavoratori.

      result: l’oggetto JSON indica quale modello ha selezionato il lavoratore utilizzando 0 o1. Per vedere a quale valore viene mappato un modello, consulta modelResponseIdMap.

    • Quando è selezionato Classificazione ordinale, i risultati di ogni lavoratore sono uguali a "evaluationResults": "comparisonRank".

      metricName: il nome della metrica.

      result: un array di oggetti JSON. I lavoratori forniscono rank per ogni modello (modelResponseIdMap).

      "result": [{ "modelResponseId": "0", "rank": 1 }, { "modelResponseId": "1", "rank": 1 }]
    • Quando è selezionato Scala Likert, valutazione della risposta di un singolo modello, i risultati di un lavoratore vengono salvati in "evaluationResults": "individualLikertScale". Si tratta di un array JSON che contiene i punteggi per metricName specificati al momento della creazione del processo.

      metricName: il nome della metrica.

      modelResponseId: il modello a cui viene assegnato il punteggio. Per vedere a quale valore viene mappato un modello, consulta modelResponseIdMap.

      result: una coppia chiave-valore che indica il valore della scala likert selezionato dal worker.

    • Quando è selezionato Pollice su/giù, i risultati di un lavoratore vengono salvati come array JSON "evaluationResults": "thumbsUpDown".

      metricName: il nome della metrica.

      result: true o false, perché è associato a metricName. Quando un lavoratore sceglie il pollice su, "result" : true.

Esempio di output di un processo di valutazione del modello

Il seguente oggetto JSON è un esempio di output del processo di valutazione del modello salvato in Amazon S3. Per ulteriori informazioni su ciascuna coppia chiave-valore, consulta Documentazione di riferimento dell’output JSON.

Per chiarezza, questo processo contiene solo le risposte di due lavoratori. Inoltre, alcune coppie chiave-valore potrebbero essere state troncate per una maggiore leggibilità.

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