O serviço de avaliação de IA generativa permite avaliar modelos de linguagem grandes (LLMs) em várias métricas com seus próprios critérios. É possível fornecer entradas de tempo de inferência, respostas do LLM e outros parâmetros. O serviço de avaliação de IA generativa retorna métricas específicas para a tarefa de avaliação.
As métricas incluem métricas com base em modelo, como PointwiseMetric
e PairwiseMetric
, e métricas
calculadas na memória, como rouge
, bleu
e métricas de chamada de função da ferramenta.
PointwiseMetric
e PairwiseMetric
são métricas genéricas baseadas em modelo que podem ser personalizadas
de acordo com seus próprios critérios.
Como o serviço recebe os resultados de previsão diretamente dos modelos como entrada,
ele pode realizar inferência e avaliação subsequente em
todos os modelos compatíveis com a
Vertex AI.
Para mais informações sobre como avaliar um modelo, consulte Visão geral do serviço de avaliação de IA generativa.
Limitações
Veja a seguir as limitações do serviço de avaliação:
- O serviço de avaliação pode ter um atraso de propagação na primeira chamada.
- A maioria das métricas baseadas em modelo consome a
cota do gemini-1.5-pro,
porque o serviço de avaliação de IA generativa usa
gemini-1.5-pro
como o modelo juiz subjacente para calcular essas métricas. - Algumas métricas baseadas em modelo, como MetricX e COMET, usam modelos de aprendizado de máquina diferentes, por isso não consomem a cota do gemini-1.5-pro.
Exemplo de sintaxe
Sintaxe para enviar uma chamada de avaliação.
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))
Lista de parâmetros
Parâmetros | |
---|---|
|
Opcional: Entrada para avaliar se a previsão corresponde exatamente à referência. |
|
Opcional: Entrada para calcular a pontuação BLEU comparando a previsão com a referência. |
|
Opcional: Entrada para calcular pontuações |
|
Opcional: Entrada para avaliar o domínio do idioma de uma única resposta. |
|
Opcional: Entrada para avaliar a capacidade de uma única resposta de fornecer uma resposta coerente e fácil de acompanhar. |
|
Opcional: Entrada para avaliar o nível de segurança de uma única resposta. |
|
Opcional: Entrada para avaliar a capacidade de uma única resposta de fornecer ou referenciar informações incluídas apenas no texto de entrada. |
|
Opcional: Entrada para avaliar a capacidade de uma única resposta de atender completamente às instruções. |
|
Opcional: Entrada para avaliar a capacidade geral de resumir textos de uma única resposta. |
|
Opcional: Entrada para comparar a qualidade geral do resumo de duas respostas. |
|
Opcional: Entrada para avaliar a capacidade de uma única resposta de gerar um resumo com os detalhes necessários para substituir o texto original. |
|
Opcional: Entrada para avaliar a capacidade de uma única resposta de fornecer um resumo sucinto. |
|
Opcional: Entrada para avaliar a capacidade geral de uma única resposta de responder a perguntas, com um corpo de texto para referência. |
|
Opcional: Entrada para comparar a capacidade geral de responder a perguntas de duas respostas, com um corpo de texto para referência. |
|
Opcional: Entrada para avaliar a capacidade de uma única resposta de responder com informações relevantes quando uma pergunta é feita. |
|
Opcional: Entrada para avaliar a capacidade de uma única resposta de fornecer detalhes importantes ao responder a uma pergunta. |
|
Opcional: Entrada para avaliar a capacidade de uma única resposta de responder corretamente a uma pergunta. |
|
Opcional: Entrada para uma avaliação pontual genérica. |
|
Opcional: Entrada para uma avaliação genérica em pares. |
|
Opcional: Entrada para avaliar a capacidade de uma única resposta de prever uma chamada de ferramenta válida. |
|
Opcional: Entrada para avaliar a capacidade de uma única resposta de prever uma chamada de ferramenta com o nome correto da ferramenta. |
|
Opcional: Entrada para avaliar a capacidade de uma única resposta de prever uma chamada de ferramenta com nomes de parâmetros corretos. |
|
Opcional: Entrada para avaliar a capacidade de uma única resposta de prever uma chamada de ferramenta com nomes e valores de parâmetros corretos |
|
Opcional: Entrada para avaliação usando COMET. |
|
Opcional: Entrada para avaliar usando a MetricX. |
ExactMatchInput
{ "exact_match_input": { "metric_spec": {}, "instances": [ { "prediction": string, "reference": string } ] } }
Parâmetros | |
---|---|
|
Opcional: Especificação da métrica que define o comportamento dela. |
|
Opcional: Entrada de avaliação, que consiste em resposta e referência do LLM. |
|
Opcional: Resposta do LLM. |
|
Opcional: Resposta do LLM Golden para referência. |
ExactMatchResults
{ "exact_match_results": { "exact_match_metric_values": [ { "score": float } ] } }
Saída | |
---|---|
|
Resultados da avaliação por entrada da instância. |
|
Opções:
|
BleuInput
{ "bleu_input": { "metric_spec": { "use_effective_order": bool }, "instances": [ { "prediction": string, "reference": string } ] } }
Parâmetros | |
---|---|
|
Opcional: Especificação da métrica que define o comportamento dela. |
|
Opcional: Define se são considerados pedidos n-grama sem nenhuma correspondência. |
|
Opcional: Entrada de avaliação, que consiste em resposta e referência do LLM. |
|
Opcional: Resposta do LLM. |
|
Opcional: Resposta do LLM Golden para referência. |
BleuResults
{ "bleu_results": { "bleu_metric_values": [ { "score": float } ] } }
Saída | |
---|---|
|
Resultados da avaliação por entrada da instância. |
|
|
RougeInput
{ "rouge_input": { "metric_spec": { "rouge_type": string, "use_stemmer": bool, "split_summaries": bool }, "instances": [ { "prediction": string, "reference": string } ] } }
Parâmetros | |
---|---|
|
Opcional: Especificação da métrica que define o comportamento dela. |
|
Opcional: Valores aceitáveis:
|
|
Opcional: Define se a derivação de Porter deve ser usada para remover sufixos de palavras para melhorar a correspondência. |
|
Opcional: Define se novas linhas serão adicionadas entre as frases do rougeLsum. |
|
Opcional: Entrada de avaliação, que consiste em resposta e referência do LLM. |
|
Opcional: Resposta do LLM. |
|
Opcional: Resposta do LLM Golden para referência. |
RougeResults
{ "rouge_results": { "rouge_metric_values": [ { "score": float } ] } }
Saída | |
---|---|
|
Resultados da avaliação por entrada da instância. |
|
|
FluencyInput
{ "fluency_input": { "metric_spec": {}, "instance": { "prediction": string } } }
Parâmetros | |
---|---|
|
Opcional: Especificação da métrica que define o comportamento dela. |
|
Opcional: Entrada de avaliação, que consiste na resposta do LLM. |
|
Opcional: Resposta do LLM. |
FluencyResult
{ "fluency_result": { "score": float, "explanation": string, "confidence": float } }
Saída | |
---|---|
|
|
|
|
|
|
CoherenceInput
{ "coherence_input": { "metric_spec": {}, "instance": { "prediction": string } } }
Parâmetros | |
---|---|
|
Opcional: Especificação da métrica que define o comportamento dela. |
|
Opcional: Entrada de avaliação, que consiste na resposta do LLM. |
|
Opcional: Resposta do LLM. |
CoherenceResult
{ "coherence_result": { "score": float, "explanation": string, "confidence": float } }
Saída | |
---|---|
|
|
|
|
|
|
SafetyInput
{ "safety_input": { "metric_spec": {}, "instance": { "prediction": string } } }
Parâmetros | |
---|---|
|
Opcional: Especificação da métrica que define o comportamento dela. |
|
Opcional: Entrada de avaliação, que consiste na resposta do LLM. |
|
Opcional: Resposta do LLM. |
SafetyResult
{ "safety_result": { "score": float, "explanation": string, "confidence": float } }
Saída | |
---|---|
|
|
|
|
|
|
GroundednessInput
{ "groundedness_input": { "metric_spec": {}, "instance": { "prediction": string, "context": string } } }
Parâmetro |
Descrição |
|
Opcional: GroundednessSpec Especificação da métrica que define o comportamento dela. |
|
Opcional: GroundednessInstance Entrada de avaliação, que consiste em entradas de inferência e na resposta correspondente. |
|
Opcional: Resposta do LLM. |
|
Opcional: Texto de tempo de inferência contendo todas as informações, que podem ser usadas na resposta do LLM. |
GroundednessResult
{ "groundedness_result": { "score": float, "explanation": string, "confidence": float } }
Saída | |
---|---|
|
|
|
|
|
|
FulfillmentInput
{ "fulfillment_input": { "metric_spec": {}, "instance": { "prediction": string, "instruction": string } } }
Parâmetros | |
---|---|
|
Opcional: Especificação da métrica que define o comportamento dela. |
|
Opcional: Entrada de avaliação, que consiste em entradas de inferência e na resposta correspondente. |
|
Opcional: Resposta do LLM. |
|
Opcional: Instrução usada no momento da inferência. |
FulfillmentResult
{ "fulfillment_result": { "score": float, "explanation": string, "confidence": float } }
Saída | |
---|---|
|
|
|
|
|
|
SummarizationQualityInput
{ "summarization_quality_input": { "metric_spec": {}, "instance": { "prediction": string, "instruction": string, "context": string, } } }
Parâmetros | |
---|---|
|
Opcional: Especificação da métrica que define o comportamento dela. |
|
Opcional: Entrada de avaliação, que consiste em entradas de inferência e na resposta correspondente. |
|
Opcional: Resposta do LLM. |
|
Opcional: Instrução usada no momento da inferência. |
|
Opcional: Texto de tempo de inferência contendo todas as informações, que podem ser usadas na resposta do LLM. |
SummarizationQualityResult
{ "summarization_quality_result": { "score": float, "explanation": string, "confidence": float } }
Saída | |
---|---|
|
|
|
|
|
|
PairwiseSummarizationQualityInput
{ "pairwise_summarization_quality_input": { "metric_spec": {}, "instance": { "baseline_prediction": string, "prediction": string, "instruction": string, "context": string, } } }
Parâmetros | |
---|---|
|
Opcional: Especificação da métrica que define o comportamento dela. |
|
Opcional: Entrada de avaliação, que consiste em entradas de inferência e na resposta correspondente. |
|
Opcional: Resposta do LLM do modelo de referência. |
|
Opcional: Resposta do LLM do modelo candidato. |
|
Opcional: Instrução usada no momento da inferência. |
|
Opcional: Texto de tempo de inferência contendo todas as informações, que podem ser usadas na resposta do LLM. |
PairwiseSummarizationQualityResult
{ "pairwise_summarization_quality_result": { "pairwise_choice": PairwiseChoice, "explanation": string, "confidence": float } }
Saída | |
---|---|
|
|
|
|
|
|
SummarizationHelpfulnessInput
{ "summarization_helpfulness_input": { "metric_spec": {}, "instance": { "prediction": string, "instruction": string, "context": string, } } }
Parâmetros | |
---|---|
|
Opcional: Especificação da métrica que define o comportamento dela. |
|
Opcional: Entrada de avaliação, que consiste em entradas de inferência e na resposta correspondente. |
|
Opcional: Resposta do LLM. |
|
Opcional: Instrução usada no momento da inferência. |
|
Opcional: Texto de tempo de inferência contendo todas as informações, que podem ser usadas na resposta do LLM. |
SummarizationHelpfulnessResult
{ "summarization_helpfulness_result": { "score": float, "explanation": string, "confidence": float } }
Saída | |
---|---|
|
|
|
|
|
|
SummarizationVerbosityInput
{ "summarization_verbosity_input": { "metric_spec": {}, "instance": { "prediction": string, "instruction": string, "context": string, } } }
Parâmetros | |
---|---|
|
Opcional: Especificação da métrica que define o comportamento dela. |
|
Opcional: Entrada de avaliação, que consiste em entradas de inferência e na resposta correspondente. |
|
Opcional: Resposta do LLM. |
|
Opcional: Instrução usada no momento da inferência. |
|
Opcional: Texto de tempo de inferência contendo todas as informações, que podem ser usadas na resposta do LLM. |
SummarizationVerbosityResult
{ "summarization_verbosity_result": { "score": float, "explanation": string, "confidence": float } }
Saída | |
---|---|
|
|
|
|
|
|
QuestionAnsweringQualityInput
{ "question_answering_quality_input": { "metric_spec": {}, "instance": { "prediction": string, "instruction": string, "context": string, } } }
Parâmetros | |
---|---|
|
Opcional: Especificação da métrica que define o comportamento dela. |
|
Opcional: Entrada de avaliação, que consiste em entradas de inferência e na resposta correspondente. |
|
Opcional: Resposta do LLM. |
|
Opcional: Instrução usada no momento da inferência. |
|
Opcional: Texto de tempo de inferência contendo todas as informações, que podem ser usadas na resposta do LLM. |
QuestionAnsweringQualityResult
{ "question_answering_quality_result": { "score": float, "explanation": string, "confidence": float } }
Saída | |
---|---|
|
|
|
|
|
|
PairwiseQuestionAnsweringQualityInput
{ "question_answering_quality_input": { "metric_spec": {}, "instance": { "baseline_prediction": string, "prediction": string, "instruction": string, "context": string } } }
Parâmetros | |
---|---|
|
Opcional: Especificação da métrica que define o comportamento dela. |
|
Opcional: Entrada de avaliação, que consiste em entradas de inferência e na resposta correspondente. |
|
Opcional: Resposta do LLM do modelo de referência. |
|
Opcional: Resposta do LLM do modelo candidato. |
|
Opcional: Instrução usada no momento da inferência. |
|
Opcional: Texto de tempo de inferência contendo todas as informações, que podem ser usadas na resposta do LLM. |
PairwiseQuestionAnsweringQualityResult
{ "pairwise_question_answering_quality_result": { "pairwise_choice": PairwiseChoice, "explanation": string, "confidence": float } }
Saída | |
---|---|
|
|
|
|
|
|
QuestionAnsweringRelevanceInput
{ "question_answering_quality_input": { "metric_spec": {}, "instance": { "prediction": string, "instruction": string, "context": string } } }
Parâmetros | |
---|---|
|
Opcional: Especificação da métrica que define o comportamento dela. |
|
Opcional: Entrada de avaliação, que consiste em entradas de inferência e na resposta correspondente. |
|
Opcional: Resposta do LLM. |
|
Opcional: Instrução usada no momento da inferência. |
|
Opcional: Texto de tempo de inferência contendo todas as informações, que podem ser usadas na resposta do LLM. |
QuestionAnsweringRelevancyResult
{ "question_answering_relevancy_result": { "score": float, "explanation": string, "confidence": float } }
Saída | |
---|---|
|
|
|
|
|
|
QuestionAnsweringHelpfulnessInput
{ "question_answering_helpfulness_input": { "metric_spec": {}, "instance": { "prediction": string, "instruction": string, "context": string } } }
Parâmetros | |
---|---|
|
Opcional: Especificação da métrica que define o comportamento dela. |
|
Opcional: Entrada de avaliação, que consiste em entradas de inferência e na resposta correspondente. |
|
Opcional: Resposta do LLM. |
|
Opcional: Instrução usada no momento da inferência. |
|
Opcional: Texto de tempo de inferência contendo todas as informações, que podem ser usadas na resposta do LLM. |
QuestionAnsweringHelpfulnessResult
{ "question_answering_helpfulness_result": { "score": float, "explanation": string, "confidence": float } }
Saída | |
---|---|
|
|
|
|
|
|
QuestionAnsweringCorrectnessInput
{ "question_answering_correctness_input": { "metric_spec": { "use_reference": bool }, "instance": { "prediction": string, "reference": string, "instruction": string, "context": string } } }
Parâmetros | |
---|---|
|
Opcional: Especificação da métrica que define o comportamento dela. |
|
Opcional: Se a referência é usada ou não na avaliação. |
|
Opcional: Entrada de avaliação, que consiste em entradas de inferência e na resposta correspondente. |
|
Opcional: Resposta do LLM. |
|
Opcional: Resposta do LLM Golden para referência. |
|
Opcional: Instrução usada no momento da inferência. |
|
Opcional: Texto de tempo de inferência contendo todas as informações, que podem ser usadas na resposta do LLM. |
QuestionAnsweringCorrectnessResult
{ "question_answering_correctness_result": { "score": float, "explanation": string, "confidence": float } }
Saída | |
---|---|
|
|
|
|
|
|
PointwiseMetricInput
{ "pointwise_metric_input": { "metric_spec": { "metric_prompt_template": string }, "instance": { "json_instance": string, } } }
Parâmetros | |
---|---|
|
Obrigatório: Especificação da métrica que define o comportamento dela. |
|
Obrigatório: Um modelo de comando que define a métrica. Ele é renderizado pelos pares de chave-valor em instance.json_instance. |
|
Obrigatório: Entrada de avaliação, que consiste em json_instance. |
|
Opcional: Os pares de chave-valor no formato JSON. Por exemplo, {"key_1": "value_1", "key_2": "value_2"}. Use para renderizar metric_spec.metric_prompt_template. |
PointwiseMetricResult
{ "pointwise_metric_result": { "score": float, "explanation": string, } }
Saída | |
---|---|
|
|
|
|
PairwiseMetricInput
{ "pairwise_metric_input": { "metric_spec": { "metric_prompt_template": string }, "instance": { "json_instance": string, } } }
Parâmetros | |
---|---|
|
Obrigatório: Especificação da métrica que define o comportamento dela. |
|
Obrigatório: Um modelo de comando que define a métrica. Ele é renderizado pelos pares de chave-valor em instance.json_instance. |
|
Obrigatório: Entrada de avaliação, que consiste em json_instance. |
|
Opcional: Os pares de chave-valor no formato JSON. Por exemplo, {"key_1": "value_1", "key_2": "value_2"}. Use para renderizar metric_spec.metric_prompt_template. |
PairwiseMetricResult
{ "pairwise_metric_result": { "score": float, "explanation": string, } }
Saída | |
---|---|
|
|
|
|
ToolCallValidInput
{ "tool_call_valid_input": { "metric_spec": {}, "instance": { "prediction": string, "reference": string } } }
Parâmetros | |
---|---|
|
Opcional: Especificação da métrica que define o comportamento dela. |
|
Opcional: Entrada de avaliação, que consiste em resposta e referência do LLM. |
|
Opcional: Resposta do LLM do modelo candidato, que é uma string serializada em JSON que contém as chaves { "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" } } ] } |
|
Opcional: Saída do modelo Golden no mesmo formato que a previsão. |
ToolCallValidResults
{ "tool_call_valid_results": { "tool_call_valid_metric_values": [ { "score": float } ] } }
Saída | |
---|---|
|
|
|
|
ToolNameMatchInput
{ "tool_name_match_input": { "metric_spec": {}, "instance": { "prediction": string, "reference": string } } }
Parâmetros | |
---|---|
|
Opcional: Especificação da métrica que define o comportamento dela. |
|
Opcional: Entrada de avaliação, que consiste em resposta e referência do LLM. |
|
Opcional: Resposta do LLM do modelo candidato, que é uma string serializada em JSON que contém as chaves |
|
Opcional: Saída do modelo Golden no mesmo formato que a previsão. |
ToolNameMatchResults
{ "tool_name_match_results": { "tool_name_match_metric_values": [ { "score": float } ] } }
Saída | |
---|---|
|
|
|
|
ToolParameterKeyMatchInput
{ "tool_parameter_key_match_input": { "metric_spec": {}, "instance": { "prediction": string, "reference": string } } }
Parâmetros | |
---|---|
|
Opcional: Especificação da métrica que define o comportamento dela. |
|
Opcional: Entrada de avaliação, que consiste em resposta e referência do LLM. |
|
Opcional: Resposta do LLM do modelo candidato, que é uma string serializada em JSON que contém as chaves |
|
Opcional: Saída do modelo Golden no mesmo formato que a previsão. |
ToolParameterKeyMatchResults
{ "tool_parameter_key_match_results": { "tool_parameter_key_match_metric_values": [ { "score": float } ] } }
Saída | |
---|---|
|
|
|
|
ToolParameterKVMatchInput
{ "tool_parameter_kv_match_input": { "metric_spec": {}, "instance": { "prediction": string, "reference": string } } }
Parâmetros | |
---|---|
|
Opcional: Especificação da métrica que define o comportamento dela. |
|
Opcional: Entrada de avaliação, que consiste em resposta e referência do LLM. |
|
Opcional: Resposta do LLM do modelo candidato, que é uma string serializada em JSON que contém as chaves |
|
Opcional: Saída do modelo Golden no mesmo formato que a previsão. |
ToolParameterKVMatchResults
{ "tool_parameter_kv_match_results": { "tool_parameter_kv_match_metric_values": [ { "score": float } ] } }
Saída | |
---|---|
|
|
|
|
CometInput
{ "comet_input" : { "metric_spec" : { "version": string }, "instance": { "prediction": string, "source": string, "reference": string, }, } }
Parâmetros | |
---|---|
|
Opcional: Especificação da métrica que define o comportamento dela. |
|
Opcional:
|
|
Opcional: Idioma de origem no formato BCP-47. Por exemplo, "es". |
|
Opcional: Idioma de destino no formato BCP-47. Por exemplo, "es" |
|
Opcional: Entrada de avaliação, que consiste em resposta e referência do LLM. Os campos exatos usados para avaliação dependem da versão do COMET. |
|
Opcional: Resposta do LLM do modelo candidato. Essa é a saída do LLM que está sendo avaliado. |
|
Opcional: Texto de origem. Esse é o idioma original em que a previsão foi traduzida. |
|
Opcional: Informações empíricas usadas para comparar com a previsão. Está no mesmo idioma da previsão. |
CometResult
{ "comet_result" : { "score": float } }
Saída | |
---|---|
|
|
MetricxInput
{ "metricx_input" : { "metric_spec" : { "version": string }, "instance": { "prediction": string, "source": string, "reference": string, }, } }
Parâmetros | |
---|---|
|
Opcional: Especificação da métrica que define o comportamento dela. |
|
Opcional:
Opções:
|
|
Opcional: Idioma de origem no formato BCP-47. Por exemplo, "es". |
|
Opcional: Idioma de destino no formato BCP-47. Por exemplo, "es". |
|
Opcional: Entrada de avaliação, que consiste em resposta e referência do LLM. Os campos exatos usados para avaliação dependem da versão do MetricX. |
|
Opcional: Resposta do LLM do modelo candidato. Essa é a saída do LLM que está sendo avaliado. |
|
Opcional: Texto de origem que está no idioma original em que a previsão foi traduzida. |
|
Opcional: Informações empíricas usadas para comparar com a previsão. Ele está no mesmo idioma da previsão. |
MetricxResult
{ "metricx_result" : { "score": float } }
Saída | |
---|---|
|
|
Exemplos
Avaliar uma saída
Este exemplo demonstra como chamar a API Gen AI Evaluation para avaliar a saída de um LLM usando várias métricas de avaliação, incluindo:
summarization_quality
groundedness
fulfillment
summarization_helpfulness
summarization_verbosity
Python
Go
Avaliar uma saída: qualidade do resumo em pares
O exemplo a seguir demonstra como chamar a API do serviço de avaliação do Gen AI para avaliar a saída de um LLM usando uma comparação de qualidade de resumo em pares.
REST
Antes de usar os dados da solicitação abaixo, faça as substituições a seguir:
- PROJECT_ID: o ID do projeto.
- LOCATION: a região para processar a solicitação.
- PREDICTION: resposta do LLM.
- BASELINE_PREDICTION: resposta do LLM do modelo de referência.
- INSTRUCTION: a instrução usada no momento da inferência.
- CONTEXT: texto de tempo de inferência contendo todas as informações relevantes, que podem ser usadas na resposta do LLM.
Método HTTP e URL:
POST https://LOCATION-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID-/locations/LOCATION:evaluateInstances \
Corpo JSON da solicitação:
{ "pairwise_summarization_quality_input": { "metric_spec": {}, "instance": { "prediction": "PREDICTION", "baseline_prediction": "BASELINE_PREDICTION", "instruction": "INSTRUCTION", "context": "CONTEXT", } } }
Para enviar a solicitação, escolha uma destas opções:
curl
Salve o corpo da solicitação em um arquivo com o nome request.json
e execute o comando a seguir:
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
Salve o corpo da solicitação em um arquivo com o nome request.json
e execute o comando a seguir:
$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
Para saber como instalar o SDK da Vertex AI para Python, consulte Instalar o SDK da Vertex AI para Python. Para mais informações, consulte a documentação de referência da API Python.
Go
Go
Antes de testar esse exemplo, siga as instruções de configuração para Go no Guia de início rápido da Vertex AI sobre como usar bibliotecas de cliente. Para mais informações, consulte a documentação de referência da API Vertex AI para Go.
Para autenticar na Vertex AI, configure o Application Default Credentials. Para mais informações, consulte Configurar a autenticação para um ambiente de desenvolvimento local.
Receber a pontuação média
O exemplo a seguir chama a API do serviço de avaliação de IA generativa para receber a pontuação ROUGE
de uma previsão gerada por várias entradas. As entradas ROUGE usam
metric_spec
, que determina o comportamento da métrica.
REST
Antes de usar os dados da solicitação abaixo, faça as substituições a seguir:
- PROJECT_ID: o ID do projeto.
- LOCATION: a região para processar a solicitação.
- PREDICTION: resposta do LLM.
- REFERENCE: resposta do LLM Golden para referência.
- ROUGE_TYPE: o cálculo usado para determinar o valor mínimo. Consulte
metric_spec.rouge_type
para conferir os valores aceitáveis. - USE_STEMMER: determina se o stemmer de Porter é usado para remover sufixos de palavras para melhorar a correspondência. Para valores aceitáveis, consulte
metric_spec.use_stemmer
. - SPLIT_SUMMARIES: determina se novas linhas são adicionadas entre
rougeLsum
frases. Para valores aceitáveis, consultemetric_spec.split_summaries
.
Método HTTP e URL:
POST https://LOCATION-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID-/locations/REGION:evaluateInstances \
Corpo JSON da solicitação:
{ "rouge_input": { "instances": { "prediction": "PREDICTION", "reference": "REFERENCE.", }, "metric_spec": { "rouge_type": "ROUGE_TYPE", "use_stemmer": USE_STEMMER, "split_summaries": SPLIT_SUMMARIES, } } }
Para enviar a solicitação, escolha uma destas opções:
curl
Salve o corpo da solicitação em um arquivo com o nome request.json
e execute o comando a seguir:
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
Salve o corpo da solicitação em um arquivo com o nome request.json
e execute o comando a seguir:
$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
Para saber como instalar o SDK da Vertex AI para Python, consulte Instalar o SDK da Vertex AI para Python. Para mais informações, consulte a documentação de referência da API Python.
Go
Go
Antes de testar esse exemplo, siga as instruções de configuração para Go no Guia de início rápido da Vertex AI sobre como usar bibliotecas de cliente. Para mais informações, consulte a documentação de referência da API Vertex AI para Go.
Para autenticar na Vertex AI, configure o Application Default Credentials. Para mais informações, consulte Configurar a autenticação para um ambiente de desenvolvimento local.
A seguir
- Consulte a documentação detalhada em Realizar uma avaliação.