Il servizio di valutazione dell'IA generativa ti consente di valutare i tuoi modelli linguistici di grandi dimensioni (LLM) in base a diverse metriche e ai tuoi criteri. Puoi fornire input in fase di inferenza, risposte LLM e parametri aggiuntivi e il servizio di valutazione dell'IA generativa restituisce metriche specifiche per l'attività di valutazione.
Le metriche includono metriche basate su modelli, come PointwiseMetric
e PairwiseMetric
, e metriche calcolate in memoria, come rouge
, bleu
e le metriche relative alle chiamate di funzioni dello strumento.
PointwiseMetric
e PairwiseMetric
sono metriche generiche basate su modelli che puoi personalizzare in base ai tuoi criteri.
Poiché il servizio prende come input i risultati di previsione direttamente dai modelli, il servizio di valutazione può eseguire sia l'inferenza sia la valutazione successiva su tutti i modelli supportati da Vertex AI.
Per ulteriori informazioni sulla valutazione di un modello, consulta la Panoramica del servizio di valutazione dell'IA generativa.
Limitazioni
Di seguito sono riportate le limitazioni del servizio di valutazione:
- Il servizio di valutazione potrebbe avere un ritardo di propagazione nella prima chiamata.
- La maggior parte delle metriche basate su modelli consuma la quota Gemini 1.5 Pro perché il servizio di valutazione dell'IA generativa utilizza
gemini-1.5-pro
come modello di giudizio sottostante per calcolare queste metriche. - Alcune metriche basate su modelli, come MetricX e COMET, utilizzano diversi modelli di machine learning, pertanto non consumano la quota gemini-1.5-pro.
Sintassi di esempio
Sintassi per inviare una chiamata di valutazione.
curl
curl -X POST \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json" \ https://${LOCATION}-aiplatform.googleapis.com/v1beta1/projects/${PROJECT_ID}/locations/${LOCATION}:evaluateInstances \ -d '{ "contents": [{ ... }], "tools": [{ "function_declarations": [ { ... } ] }] }'
Python
import json from google import auth from google.api_core import exceptions from google.auth.transport import requests as google_auth_requests creds, _ = auth.default( scopes=['https://www.googleapis.com/auth/cloud-platform']) data = { ... } uri = f'https://${LOCATION}-aiplatform.googleapis.com/v1beta1/projects/${PROJECT_ID}/locations/${LOCATION}:evaluateInstances' result = google_auth_requests.AuthorizedSession(creds).post(uri, json=data) print(json.dumps(result.json(), indent=2))
Elenco dei parametri
Parametri | |
---|---|
|
(Facoltativo) Input per valutare se la previsione corrisponde esattamente al riferimento. |
|
(Facoltativo) Input per calcolare il punteggio BLEU confrontando la previsione con il riferimento. |
|
(Facoltativo) Input per calcolare i punteggi |
|
(Facoltativo) Input per valutare la padronanza della lingua di una singola risposta. |
|
(Facoltativo) Input per valutare la capacità di una singola risposta di fornire una risposta coerente e facile da seguire. |
|
(Facoltativo) Input per valutare il livello di sicurezza di una singola risposta. |
|
(Facoltativo) Input per valutare la capacità di una singola risposta di fornire informazioni o fare riferimento a informazioni incluse solo nel testo inserito. |
|
(Facoltativo) Input per valutare la capacità di una singola risposta di soddisfare completamente le istruzioni. |
|
(Facoltativo) Input per valutare la capacità complessiva di una singola risposta di riassumere il testo. |
|
(Facoltativo) Input per confrontare la qualità complessiva del riepilogo di due risposte. |
|
(Facoltativo) Input per valutare la capacità di una singola risposta di fornire un riepilogo che contenga i dettagli necessari per sostituire il testo originale. |
|
(Facoltativo) Input per valutare la capacità di una singola risposta di fornire un riepilogo conciso. |
|
(Facoltativo) Input per valutare la capacità complessiva di una singola risposta di rispondere alle domande, in base a un testo di riferimento. |
|
(Facoltativo) Input per confrontare la capacità complessiva di due risposte di rispondere alle domande, dato un testo di riferimento. |
|
(Facoltativo) Input per valutare la capacità di una singola risposta di fornire informazioni pertinenti quando viene posta una domanda. |
|
(Facoltativo) Input per valutare la capacità di una singola risposta di fornire dettagli chiave quando si risponde a una domanda. |
|
(Facoltativo) Input per valutare la capacità di una singola risposta di rispondere correttamente a una domanda. |
|
(Facoltativo) Input per una valutazione generica basata su punti. |
|
(Facoltativo) Input per una valutazione generica basata su coppie. |
|
(Facoltativo) Input per valutare la capacità di una singola risposta di prevedere una chiamata allo strumento valida. |
|
(Facoltativo) Input per valutare la capacità di una singola risposta di prevedere una chiamata allo strumento con il nome dello strumento corretto. |
|
(Facoltativo) Input per valutare la capacità di una singola risposta di prevedere una chiamata allo strumento con i nomi dei parametri corretti. |
|
(Facoltativo) Input per valutare la capacità di una singola risposta di prevedere una chiamata allo strumento con nomi e valori dei parametri corretti |
|
(Facoltativo) Input da valutare utilizzando COMET. |
|
(Facoltativo) Input da valutare utilizzando MetricX. |
ExactMatchInput
{ "exact_match_input": { "metric_spec": {}, "instances": [ { "prediction": string, "reference": string } ] } }
Parametri | |
---|---|
|
(Facoltativo) Specifica della metrica, che definisce il comportamento della metrica. |
|
(Facoltativo) Input di valutazione, costituito dalla risposta e dal riferimento dell'LLM. |
|
(Facoltativo) Risposta LLM. |
|
(Facoltativo) Risposta LLM di riferimento. |
ExactMatchResults
{ "exact_match_results": { "exact_match_metric_values": [ { "score": float } ] } }
Output | |
---|---|
|
Risultati della valutazione per input istanza. |
|
Il valore sarà uno dei seguenti:
|
BleuInput
{ "bleu_input": { "metric_spec": { "use_effective_order": bool }, "instances": [ { "prediction": string, "reference": string } ] } }
Parametri | |
---|---|
|
(Facoltativo) Specifica della metrica, che definisce il comportamento della metrica. |
|
(Facoltativo) Indica se prendere in considerazione gli ordini di n-gram senza corrispondenze. |
|
(Facoltativo) Input di valutazione, composto dalla risposta e dal riferimento dell'LLM. |
|
(Facoltativo) Risposta LLM. |
|
(Facoltativo) Risposta LLM di riferimento. |
BleuResults
{ "bleu_results": { "bleu_metric_values": [ { "score": float } ] } }
Output | |
---|---|
|
Risultati della valutazione per input istanza. |
|
|
RougeInput
{ "rouge_input": { "metric_spec": { "rouge_type": string, "use_stemmer": bool, "split_summaries": bool }, "instances": [ { "prediction": string, "reference": string } ] } }
Parametri | |
---|---|
|
(Facoltativo) Specifica della metrica, che definisce il comportamento della metrica. |
|
(Facoltativo) Valori accettati:
|
|
(Facoltativo) Indica se lo stemmer di Porter deve essere utilizzato per rimuovere i suffissi delle parole al fine di migliorare la corrispondenza. |
|
(Facoltativo) Indica se aggiungere nuove righe tra le frasi per rougeLsum. |
|
(Facoltativo) Input di valutazione, costituito dalla risposta e dal riferimento dell'LLM. |
|
(Facoltativo) Risposta LLM. |
|
(Facoltativo) Risposta LLM di riferimento. |
RougeResults
{ "rouge_results": { "rouge_metric_values": [ { "score": float } ] } }
Output | |
---|---|
|
Risultati della valutazione per input istanza. |
|
|
FluencyInput
{ "fluency_input": { "metric_spec": {}, "instance": { "prediction": string } } }
Parametri | |
---|---|
|
(Facoltativo) Specifica della metrica, che definisce il comportamento della metrica. |
|
(Facoltativo) Input di valutazione, costituito dalla risposta dell'LLM. |
|
(Facoltativo) Risposta LLM. |
FluencyResult
{ "fluency_result": { "score": float, "explanation": string, "confidence": float } }
Output | |
---|---|
|
|
|
|
|
|
CoherenceInput
{ "coherence_input": { "metric_spec": {}, "instance": { "prediction": string } } }
Parametri | |
---|---|
|
(Facoltativo) Specifica della metrica, che definisce il comportamento della metrica. |
|
(Facoltativo) Input di valutazione, costituito dalla risposta dell'LLM. |
|
(Facoltativo) Risposta LLM. |
CoherenceResult
{ "coherence_result": { "score": float, "explanation": string, "confidence": float } }
Output | |
---|---|
|
|
|
|
|
|
SafetyInput
{ "safety_input": { "metric_spec": {}, "instance": { "prediction": string } } }
Parametri | |
---|---|
|
(Facoltativo) Specifica della metrica, che definisce il comportamento della metrica. |
|
(Facoltativo) Input di valutazione, costituito dalla risposta dell'LLM. |
|
(Facoltativo) Risposta LLM. |
SafetyResult
{ "safety_result": { "score": float, "explanation": string, "confidence": float } }
Output | |
---|---|
|
|
|
|
|
|
GroundednessInput
{ "groundedness_input": { "metric_spec": {}, "instance": { "prediction": string, "context": string } } }
Parametro |
Descrizione |
|
(Facoltativo) GroundednessSpec Specifica della metrica, che definisce il comportamento della metrica. |
|
(Facoltativo) GroundednessInstance Input di valutazione, composto da input di inferenza e risposta corrispondente. |
|
(Facoltativo) Risposta LLM. |
|
(Facoltativo) Testo al momento dell'inferenza contenente tutte le informazioni che possono essere utilizzate nella risposta dell'LLM. |
GroundednessResult
{ "groundedness_result": { "score": float, "explanation": string, "confidence": float } }
Output | |
---|---|
|
|
|
|
|
|
FulfillmentInput
{ "fulfillment_input": { "metric_spec": {}, "instance": { "prediction": string, "instruction": string } } }
Parametri | |
---|---|
|
(Facoltativo) Specifica della metrica, che definisce il comportamento della metrica. |
|
(Facoltativo) Input di valutazione, composto da input di inferenza e risposta corrispondente. |
|
(Facoltativo) Risposta LLM. |
|
(Facoltativo) Istruzione utilizzata al momento dell'inferenza. |
FulfillmentResult
{ "fulfillment_result": { "score": float, "explanation": string, "confidence": float } }
Output | |
---|---|
|
|
|
|
|
|
SummarizationQualityInput
{ "summarization_quality_input": { "metric_spec": {}, "instance": { "prediction": string, "instruction": string, "context": string, } } }
Parametri | |
---|---|
|
(Facoltativo) Specifica della metrica, che definisce il comportamento della metrica. |
|
(Facoltativo) Input di valutazione, composto da input di inferenza e risposta corrispondente. |
|
(Facoltativo) Risposta LLM. |
|
(Facoltativo) Istruzione utilizzata al momento dell'inferenza. |
|
(Facoltativo) Testo al momento dell'inferenza contenente tutte le informazioni che possono essere utilizzate nella risposta dell'LLM. |
SummarizationQualityResult
{ "summarization_quality_result": { "score": float, "explanation": string, "confidence": float } }
Output | |
---|---|
|
|
|
|
|
|
PairwiseSummarizationQualityInput
{ "pairwise_summarization_quality_input": { "metric_spec": {}, "instance": { "baseline_prediction": string, "prediction": string, "instruction": string, "context": string, } } }
Parametri | |
---|---|
|
(Facoltativo) Specifica della metrica, che definisce il comportamento della metrica. |
|
(Facoltativo) Input di valutazione, composto da input di inferenza e risposta corrispondente. |
|
(Facoltativo) Risposta del modello LLM di riferimento. |
|
(Facoltativo) Risposta del modello LLM candidato. |
|
(Facoltativo) Istruzione utilizzata al momento dell'inferenza. |
|
(Facoltativo) Testo al momento dell'inferenza contenente tutte le informazioni che possono essere utilizzate nella risposta dell'LLM. |
PairwiseSummarizationQualityResult
{ "pairwise_summarization_quality_result": { "pairwise_choice": PairwiseChoice, "explanation": string, "confidence": float } }
Output | |
---|---|
|
|
|
|
|
|
SummarizationHelpfulnessInput
{ "summarization_helpfulness_input": { "metric_spec": {}, "instance": { "prediction": string, "instruction": string, "context": string, } } }
Parametri | |
---|---|
|
(Facoltativo) Specifica della metrica, che definisce il comportamento della metrica. |
|
(Facoltativo) Input di valutazione, composto da input di inferenza e risposta corrispondente. |
|
(Facoltativo) Risposta LLM. |
|
(Facoltativo) Istruzione utilizzata al momento dell'inferenza. |
|
(Facoltativo) Testo al momento dell'inferenza contenente tutte le informazioni che possono essere utilizzate nella risposta dell'LLM. |
SummarizationHelpfulnessResult
{ "summarization_helpfulness_result": { "score": float, "explanation": string, "confidence": float } }
Output | |
---|---|
|
|
|
|
|
|
SummarizationVerbosityInput
{ "summarization_verbosity_input": { "metric_spec": {}, "instance": { "prediction": string, "instruction": string, "context": string, } } }
Parametri | |
---|---|
|
(Facoltativo) Specifica della metrica, che definisce il comportamento della metrica. |
|
(Facoltativo) Input di valutazione, composto da input di inferenza e risposta corrispondente. |
|
(Facoltativo) Risposta LLM. |
|
(Facoltativo) Istruzione utilizzata al momento dell'inferenza. |
|
(Facoltativo) Testo al momento dell'inferenza contenente tutte le informazioni che possono essere utilizzate nella risposta dell'LLM. |
SummarizationVerbosityResult
{ "summarization_verbosity_result": { "score": float, "explanation": string, "confidence": float } }
Output | |
---|---|
|
|
|
|
|
|
QuestionAnsweringQualityInput
{ "question_answering_quality_input": { "metric_spec": {}, "instance": { "prediction": string, "instruction": string, "context": string, } } }
Parametri | |
---|---|
|
(Facoltativo) Specifica della metrica, che definisce il comportamento della metrica. |
|
(Facoltativo) Input di valutazione, composto da input di inferenza e risposta corrispondente. |
|
(Facoltativo) Risposta LLM. |
|
(Facoltativo) Istruzione utilizzata al momento dell'inferenza. |
|
(Facoltativo) Testo al momento dell'inferenza contenente tutte le informazioni che possono essere utilizzate nella risposta dell'LLM. |
QuestionAnsweringQualityResult
{ "question_answering_quality_result": { "score": float, "explanation": string, "confidence": float } }
Output | |
---|---|
|
|
|
|
|
|
PairwiseQuestionAnsweringQualityInput
{ "question_answering_quality_input": { "metric_spec": {}, "instance": { "baseline_prediction": string, "prediction": string, "instruction": string, "context": string } } }
Parametri | |
---|---|
|
(Facoltativo) Specifica della metrica, che definisce il comportamento della metrica. |
|
(Facoltativo) Input di valutazione, composto da input di inferenza e risposta corrispondente. |
|
(Facoltativo) Risposta del modello LLM di riferimento. |
|
(Facoltativo) Risposta del modello LLM candidato. |
|
(Facoltativo) Istruzione utilizzata al momento dell'inferenza. |
|
(Facoltativo) Testo al momento dell'inferenza contenente tutte le informazioni che possono essere utilizzate nella risposta dell'LLM. |
PairwiseQuestionAnsweringQualityResult
{ "pairwise_question_answering_quality_result": { "pairwise_choice": PairwiseChoice, "explanation": string, "confidence": float } }
Output | |
---|---|
|
|
|
|
|
|
QuestionAnsweringRelevanceInput
{ "question_answering_quality_input": { "metric_spec": {}, "instance": { "prediction": string, "instruction": string, "context": string } } }
Parametri | |
---|---|
|
(Facoltativo) Specifica della metrica, che definisce il comportamento della metrica. |
|
(Facoltativo) Input di valutazione, composto da input di inferenza e risposta corrispondente. |
|
(Facoltativo) Risposta LLM. |
|
(Facoltativo) Istruzione utilizzata al momento dell'inferenza. |
|
(Facoltativo) Testo al momento dell'inferenza contenente tutte le informazioni che possono essere utilizzate nella risposta dell'LLM. |
QuestionAnsweringRelevancyResult
{ "question_answering_relevancy_result": { "score": float, "explanation": string, "confidence": float } }
Output | |
---|---|
|
|
|
|
|
|
QuestionAnsweringHelpfulnessInput
{ "question_answering_helpfulness_input": { "metric_spec": {}, "instance": { "prediction": string, "instruction": string, "context": string } } }
Parametri | |
---|---|
|
(Facoltativo) Specifica della metrica, che definisce il comportamento della metrica. |
|
(Facoltativo) Input di valutazione, composto da input di inferenza e risposta corrispondente. |
|
(Facoltativo) Risposta LLM. |
|
(Facoltativo) Istruzione utilizzata al momento dell'inferenza. |
|
(Facoltativo) Testo al momento dell'inferenza contenente tutte le informazioni che possono essere utilizzate nella risposta dell'LLM. |
QuestionAnsweringHelpfulnessResult
{ "question_answering_helpfulness_result": { "score": float, "explanation": string, "confidence": float } }
Output | |
---|---|
|
|
|
|
|
|
QuestionAnsweringCorrectnessInput
{ "question_answering_correctness_input": { "metric_spec": { "use_reference": bool }, "instance": { "prediction": string, "reference": string, "instruction": string, "context": string } } }
Parametri | |
---|---|
|
(Facoltativo) Specifica della metrica, che definisce il comportamento della metrica. |
|
(Facoltativo) Indica se il riferimento viene utilizzato o meno nella valutazione. |
|
(Facoltativo) Input di valutazione, composto da input di inferenza e risposta corrispondente. |
|
(Facoltativo) Risposta LLM. |
|
(Facoltativo) Risposta LLM di riferimento. |
|
(Facoltativo) Istruzione utilizzata al momento dell'inferenza. |
|
(Facoltativo) Testo al momento dell'inferenza contenente tutte le informazioni che possono essere utilizzate nella risposta dell'LLM. |
QuestionAnsweringCorrectnessResult
{ "question_answering_correctness_result": { "score": float, "explanation": string, "confidence": float } }
Output | |
---|---|
|
|
|
|
|
|
PointwiseMetricInput
{ "pointwise_metric_input": { "metric_spec": { "metric_prompt_template": string }, "instance": { "json_instance": string, } } }
Parametri | |
---|---|
|
Obbligatorio: Specifica della metrica, che definisce il comportamento della metrica. |
|
Obbligatorio: Un modello di prompt che definisce la metrica. Viene visualizzato dalle coppie chiave-valore in instance.json_instance |
|
Obbligatorio: Input di valutazione, costituito da json_instance. |
|
(Facoltativo) Le coppie chiave-valore in formato JSON. Ad esempio, {"key_1": "value_1", "key_2": "value_2"}. Viene utilizzato per visualizzare metric_spec.metric_prompt_template. |
PointwiseMetricResult
{ "pointwise_metric_result": { "score": float, "explanation": string, } }
Output | |
---|---|
|
|
|
|
PairwiseMetricInput
{ "pairwise_metric_input": { "metric_spec": { "metric_prompt_template": string }, "instance": { "json_instance": string, } } }
Parametri | |
---|---|
|
Obbligatorio: Specifica della metrica, che definisce il comportamento della metrica. |
|
Obbligatorio: Un modello di prompt che definisce la metrica. Viene visualizzato dalle coppie chiave-valore in instance.json_instance |
|
Obbligatorio: Input di valutazione, costituito da json_instance. |
|
(Facoltativo) Le coppie chiave-valore in formato JSON. Ad esempio, {"key_1": "value_1", "key_2": "value_2"}. Viene utilizzato per visualizzare metric_spec.metric_prompt_template. |
PairwiseMetricResult
{ "pairwise_metric_result": { "score": float, "explanation": string, } }
Output | |
---|---|
|
|
|
|
ToolCallValidInput
{ "tool_call_valid_input": { "metric_spec": {}, "instance": { "prediction": string, "reference": string } } }
Parametri | |
---|---|
|
(Facoltativo) Specifica della metrica, che definisce il comportamento della metrica. |
|
(Facoltativo) Input di valutazione, costituito dalla risposta e dal riferimento dell'LLM. |
|
(Facoltativo) Risposta del modello LLM candidato, ovvero una stringa JSON serializzata contenente le chiavi { "content": "", "tool_calls": [ { "name": "book_tickets", "arguments": { "movie": "Mission Impossible Dead Reckoning Part 1", "theater": "Regal Edwards 14", "location": "Mountain View CA", "showtime": "7:30", "date": "2024-03-30", "num_tix": "2" } } ] } |
|
(Facoltativo) Output del modello di riferimento nello stesso formato della previsione. |
ToolCallValidResults
{ "tool_call_valid_results": { "tool_call_valid_metric_values": [ { "score": float } ] } }
Output | |
---|---|
|
ripetuto |
|
|
ToolNameMatchInput
{ "tool_name_match_input": { "metric_spec": {}, "instance": { "prediction": string, "reference": string } } }
Parametri | |
---|---|
|
(Facoltativo) Specifica della metrica, che definisce il comportamento della metrica. |
|
(Facoltativo) Input di valutazione, composto dalla risposta e dal riferimento dell'LLM. |
|
(Facoltativo) Risposta del modello LLM candidato, ovvero una stringa JSON serializzata contenente le chiavi |
|
(Facoltativo) Output del modello di riferimento nello stesso formato della previsione. |
ToolNameMatchResults
{ "tool_name_match_results": { "tool_name_match_metric_values": [ { "score": float } ] } }
Output | |
---|---|
|
ripetuto |
|
|
ToolParameterKeyMatchInput
{ "tool_parameter_key_match_input": { "metric_spec": {}, "instance": { "prediction": string, "reference": string } } }
Parametri | |
---|---|
|
(Facoltativo) Specifica della metrica, che definisce il comportamento della metrica. |
|
(Facoltativo) Input di valutazione, costituito dalla risposta e dal riferimento dell'LLM. |
|
(Facoltativo) Risposta del modello LLM candidato, ovvero una stringa JSON serializzata contenente le chiavi |
|
(Facoltativo) Output del modello di riferimento nello stesso formato della previsione. |
ToolParameterKeyMatchResults
{ "tool_parameter_key_match_results": { "tool_parameter_key_match_metric_values": [ { "score": float } ] } }
Output | |
---|---|
|
ripetuto |
|
|
ToolParameterKVMatchInput
{ "tool_parameter_kv_match_input": { "metric_spec": {}, "instance": { "prediction": string, "reference": string } } }
Parametri | |
---|---|
|
(Facoltativo) Specifica della metrica, che definisce il comportamento della metrica. |
|
(Facoltativo) Input di valutazione, composto dalla risposta e dal riferimento dell'LLM. |
|
(Facoltativo) Risposta del modello LLM candidato, ovvero una stringa JSON serializzata contenente le chiavi |
|
(Facoltativo) Output del modello di riferimento nello stesso formato della previsione. |
ToolParameterKVMatchResults
{ "tool_parameter_kv_match_results": { "tool_parameter_kv_match_metric_values": [ { "score": float } ] } }
Output | |
---|---|
|
ripetuto |
|
|
CometInput
{ "comet_input" : { "metric_spec" : { "version": string }, "instance": { "prediction": string, "source": string, "reference": string, }, } }
Parametri | |
---|---|
|
(Facoltativo) Specifica della metrica, che definisce il comportamento della metrica. |
|
(Facoltativo)
|
|
(Facoltativo) Lingua di origine in formato BCP-47. Ad esempio, "es". |
|
(Facoltativo) Lingua di destinazione in formato BCP-47. Ad esempio, "es" |
|
(Facoltativo) Input di valutazione, composto dalla risposta e dal riferimento dell'LLM. I campi esatti utilizzati per la valutazione dipendono dalla versione di COMET. |
|
(Facoltativo) Risposta del modello LLM candidato. Questo è l'output dell'LLM in fase di valutazione. |
|
(Facoltativo) Testo di origine. nella lingua originale da cui è stata tradotta la previsione. |
|
(Facoltativo) Risposta basata su dati di fatto utilizzata per il confronto con la previsione. Deve essere nella stessa lingua della previsione. |
CometResult
{ "comet_result" : { "score": float } }
Output | |
---|---|
|
|
MetricxInput
{ "metricx_input" : { "metric_spec" : { "version": string }, "instance": { "prediction": string, "source": string, "reference": string, }, } }
Parametri | |
---|---|
|
(Facoltativo) Specifica della metrica, che definisce il comportamento della metrica. |
|
Facoltativamente,
Il valore sarà uno dei seguenti:
|
|
(Facoltativo) Lingua di origine in formato BCP-47. Ad esempio, "es". |
|
(Facoltativo) Lingua di destinazione in formato BCP-47. Ad esempio, "es". |
|
(Facoltativo) Input di valutazione, composto dalla risposta e dal riferimento dell'LLM. I campi esatti utilizzati per la valutazione dipendono dalla versione di MetricX. |
|
(Facoltativo) Risposta del modello LLM candidato. Questo è l'output dell'LLM in fase di valutazione. |
|
(Facoltativo) Testo di origine nella lingua originale da cui è stata tradotta la previsione. |
|
(Facoltativo) Risposta basata su dati di fatto utilizzata per il confronto con la previsione. È nella stessa lingua della previsione. |
MetricxResult
{ "metricx_result" : { "score": float } }
Output | |
---|---|
|
|
Esempi
Valutare un output
L'esempio seguente mostra come chiamare l'API Gen AI Evaluation per valutare l'output di un LLM utilizzando una serie di metriche di valutazione, tra cui:
summarization_quality
groundedness
fulfillment
summarization_helpfulness
summarization_verbosity
Python
Vai
Valutare un output: qualità del riepilogo a coppie
L'esempio seguente mostra come chiamare l'API del servizio di valutazione dell'IA generativa per valutare l'output di un LLM utilizzando un confronto della qualità del riepilogo a due.
REST
Prima di utilizzare i dati della richiesta, apporta le seguenti sostituzioni:
- PROJECT_ID: il tuo ID progetto.
- LOCATION: la regione in cui elaborare la richiesta.
- PREDICTION: risposta LLM.
- BASELINE_PREDICTION: risposta del modello LLM del modello di riferimento.
- INSTRUCTION: l'istruzione utilizzata al momento dell'inferenza.
- CONTEXT: testo in fase di inferenza contenente tutte le informazioni pertinenti che possono essere utilizzate nella risposta dell'LLM.
Metodo HTTP e URL:
POST https://LOCATION-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID-/locations/LOCATION:evaluateInstances \
Corpo JSON della richiesta:
{ "pairwise_summarization_quality_input": { "metric_spec": {}, "instance": { "prediction": "PREDICTION", "baseline_prediction": "BASELINE_PREDICTION", "instruction": "INSTRUCTION", "context": "CONTEXT", } } }
Per inviare la richiesta, scegli una delle seguenti opzioni:
curl
Salva il corpo della richiesta in un file denominato request.json
,
quindi esegui il comando seguente:
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://LOCATION-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID-/locations/LOCATION:evaluateInstances \"
PowerShell
Salva il corpo della richiesta in un file denominato request.json
,
quindi esegui il comando seguente:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://LOCATION-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID-/locations/LOCATION:evaluateInstances \" | Select-Object -Expand Content
Python
Python
Per scoprire come installare o aggiornare l'SDK Vertex AI per Python, consulta Installare l'SDK Vertex AI per Python. Per saperne di più, consulta la documentazione di riferimento dell'API Python.
Vai
Go
Prima di provare questo esempio, segui le istruzioni di configurazione Go riportate nella guida rapida all'utilizzo delle librerie client di Vertex AI. Per ulteriori informazioni, consulta la documentazione di riferimento dell'API Go di Vertex AI.
Per autenticarti in Vertex AI, configura le Credenziali predefinite dell'applicazione. Per ulteriori informazioni, consulta Configurare l'autenticazione per un ambiente di sviluppo locale.
Ottenere il punteggio ROUGE
Il seguente esempio chiama l'API Gen AI evaluation service per ottenere il punteggio ROUGE
di una previsione, generata da una serie di input. Gli input di ROUGE utilizzano
metric_spec
, che determina il comportamento della metrica.
REST
Prima di utilizzare i dati della richiesta, apporta le seguenti sostituzioni:
- PROJECT_ID: il tuo ID progetto.
- LOCATION: la regione in cui elaborare la richiesta.
- PREDICTION: risposta LLM.
- REFERENCE: risposta LLM ideale di riferimento.
- ROUGE_TYPE: il calcolo utilizzato per determinare il punteggio rouge. Vedi
metric_spec.rouge_type
per i valori accettabili. - USE_STEMMER: determina se lo stemmer di Porter viene utilizzato per rimuovere i suffissi delle parole al fine di migliorare la corrispondenza. Per i valori accettabili, consulta
metric_spec.use_stemmer
. - SPLIT_SUMMARIES: determina se vengono aggiunte nuove righe tra le frasi
rougeLsum
. Per i valori accettabili, consultametric_spec.split_summaries
.
Metodo HTTP e URL:
POST https://LOCATION-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID-/locations/REGION:evaluateInstances \
Corpo JSON della richiesta:
{ "rouge_input": { "instances": { "prediction": "PREDICTION", "reference": "REFERENCE.", }, "metric_spec": { "rouge_type": "ROUGE_TYPE", "use_stemmer": USE_STEMMER, "split_summaries": SPLIT_SUMMARIES, } } }
Per inviare la richiesta, scegli una delle seguenti opzioni:
curl
Salva il corpo della richiesta in un file denominato request.json
,
quindi esegui il comando seguente:
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://LOCATION-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID-/locations/REGION:evaluateInstances \"
PowerShell
Salva il corpo della richiesta in un file denominato request.json
,
quindi esegui il comando seguente:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://LOCATION-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID-/locations/REGION:evaluateInstances \" | Select-Object -Expand Content
Python
Python
Per scoprire come installare o aggiornare l'SDK Vertex AI per Python, consulta Installare l'SDK Vertex AI per Python. Per saperne di più, consulta la documentazione di riferimento dell'API Python.
Vai
Go
Prima di provare questo esempio, segui le istruzioni di configurazione Go riportate nella guida rapida all'utilizzo delle librerie client di Vertex AI. Per ulteriori informazioni, consulta la documentazione di riferimento dell'API Go di Vertex AI.
Per autenticarti in Vertex AI, configura le Credenziali predefinite dell'applicazione. Per ulteriori informazioni, consulta Configurare l'autenticazione per un ambiente di sviluppo locale.
Passaggi successivi
- Per una documentazione dettagliata, consulta Eseguire una valutazione.