Gen AI 評估服務可讓您依據自己的標準,透過多項指標評估大型語言模型 (LLM)。您可以提供推論時間輸入內容、LLM 回覆和其他參數,Gen AI Evaluation Service 會傳回評估工作專用的指標。
指標包括以模型為基礎的指標 (例如 PointwiseMetric
和 PairwiseMetric
),以及在記憶體中計算的指標 (例如 rouge
、bleu
和工具函式呼叫指標)。PointwiseMetric
和 PairwiseMetric
是以模型為基礎的一般指標,您可以根據自己的條件自訂。這項服務會直接從模型取得預測結果做為輸入內容,因此評估服務可以對 Vertex AI 支援的所有模型執行推論和後續評估。
如要進一步瞭解如何評估模型,請參閱生成式 AI 評估服務總覽。
限制
以下是評估服務的限制:
- 在第一次呼叫時,評估服務可能會出現傳播延遲。
- 大多數以模型為基礎的指標都會耗用 gemini-2.0-flash 配額,因為 Gen AI 評估服務會使用
gemini-2.0-flash
做為基礎評估模型,計算這些以模型為基礎的指標。 - 部分以模型為準的指標 (例如 MetricX 和 COMET) 使用不同的機器學習模型,因此不會耗用 gemini-2.0-flash 配額。
語法範例
傳送評估呼叫的語法。
curl
curl -X POST \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json" \ https://${LOCATION}-aiplatform.googleapis.com/v1/projects/${PROJECT_ID}/locations/${LOCATION}:evaluateInstances \ -d '{ "pointwise_metric_input" : { "metric_spec" : { ... }, "instance": { ... }, } }'
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/v1/projects/${PROJECT_ID}/locations/${LOCATION}:evaluateInstances' result = google_auth_requests.AuthorizedSession(creds).post(uri, json=data) print(json.dumps(result.json(), indent=2))
參數清單
參數 | |
---|---|
|
自由參加: 輸入內容,評估預測結果是否與參照內容完全相符。 |
|
自由參加: 輸入內容,比較預測結果與參考資料,計算 BLEU 分數。 |
|
自由參加: 輸入內容,比較預測結果與參照,計算 |
|
自由參加: 請輸入內容,評估單一回覆的語言掌握程度。 |
|
自由參加: 輸入內容,評估單一回覆是否連貫且容易理解。 |
|
自由參加: 輸入內容,評估單一回覆的安全程度。 |
|
自由參加: 輸入內容,評估單一回覆僅憑輸入文字提供或參考資訊的能力。 |
|
自由參加: 輸入內容,評估單一回覆是否完全符合指令。 |
|
自由參加: 輸入內容,評估單一回覆總結文字重點的整體能力。 |
|
自由參加: 輸入內容,比較兩則回覆的整體摘要品質。 |
|
自由參加: 輸入內容,評估單一回覆提供摘要的能力,其中包含取代原始文字所需的詳細資料。 |
|
自由參加: 輸入內容,評估單一回覆提供簡潔摘要的能力。 |
|
自由參加: 輸入內容,評估單一回覆的整體問答能力,並提供參考文字。 |
|
自由參加: 輸入內容,比較兩個回覆的整體問答能力,並提供參考文字。 |
|
自由參加: 輸入內容,評估單一回覆在回答問題時,提供相關資訊的能力。 |
|
自由參加: 輸入內容,評估單一回覆在回答問題時提供重要詳細資料的能力。 |
|
自由參加: 輸入內容,評估單一回覆是否能正確回答問題。 |
|
自由參加: 一般逐點評估的輸入內容。 |
|
自由參加: 一般逐對評估的輸入內容。 |
|
自由參加: 輸入內容,評估單一回覆預測有效工具呼叫的能力。 |
|
自由參加: 輸入內容,評估單一回覆預測工具呼叫的能力,以及是否能提供正確的工具名稱。 |
|
自由參加: 輸入內容,評估單一回覆預測工具呼叫的能力,以及是否能提供正確的參數名稱。 |
|
自由參加: 輸入內容,評估單一回應預測工具呼叫的能力,以及是否能提供正確的參數名稱和值 |
|
自由參加: 使用 COMET 評估的輸入內容。 |
|
自由參加: 使用 MetricX 評估的輸入內容。 |
ExactMatchInput
{ "exact_match_input": { "metric_spec": {}, "instances": [ { "prediction": string, "reference": string } ] } }
參數 | |
---|---|
|
選用: 指標規格,定義指標的行為。 |
|
自由參加: 評估輸入內容,包括 LLM 回覆和參考資料。 |
|
自由參加: LLM 回覆。 |
|
自由參加: 可供參考的標準 LLM 回覆。 |
ExactMatchResults
{ "exact_match_results": { "exact_match_metric_values": [ { "score": float } ] } }
輸出 | |
---|---|
|
每個執行個體輸入的評估結果。 |
|
可以是下列其中一項:
|
BleuInput
{ "bleu_input": { "metric_spec": { "use_effective_order": bool }, "instances": [ { "prediction": string, "reference": string } ] } }
參數 | |
---|---|
|
自由參加: 指標規格,定義指標的行為。 |
|
自由參加: 是否要將沒有任何相符項的 n 元語法順序納入考量。 |
|
自由參加: 評估輸入內容,包括 LLM 回覆和參考資料。 |
|
自由參加: LLM 回覆。 |
|
自由參加: 可供參考的標準 LLM 回覆。 |
BleuResults
{ "bleu_results": { "bleu_metric_values": [ { "score": float } ] } }
輸出 | |
---|---|
|
每個執行個體輸入的評估結果。 |
|
|
RougeInput
{ "rouge_input": { "metric_spec": { "rouge_type": string, "use_stemmer": bool, "split_summaries": bool }, "instances": [ { "prediction": string, "reference": string } ] } }
參數 | |
---|---|
|
自由參加: 指標規格,定義指標的行為。 |
|
自由參加: 可接受的值:
|
|
自由參加: 是否應使用 Porter 詞幹提取器去除字尾,以提升比對效果。 |
|
自由參加: 是否要在句子之間加入換行符,以供 rougeLsum 使用。 |
|
自由參加: 評估輸入內容,包括 LLM 回覆和參考資料。 |
|
自由參加: LLM 回覆。 |
|
自由參加: 可供參考的標準 LLM 回覆。 |
RougeResults
{ "rouge_results": { "rouge_metric_values": [ { "score": float } ] } }
輸出 | |
---|---|
|
每個執行個體輸入的評估結果。 |
|
|
FluencyInput
{ "fluency_input": { "metric_spec": {}, "instance": { "prediction": string } } }
參數 | |
---|---|
|
自由參加: 指標規格,定義指標的行為。 |
|
自由參加: 評估輸入內容,包括 LLM 回覆。 |
|
自由參加: LLM 回覆。 |
FluencyResult
{ "fluency_result": { "score": float, "explanation": string, "confidence": float } }
輸出 | |
---|---|
|
|
|
|
|
|
CoherenceInput
{ "coherence_input": { "metric_spec": {}, "instance": { "prediction": string } } }
參數 | |
---|---|
|
自由參加: 指標規格,定義指標的行為。 |
|
自由參加: 評估輸入內容,包括 LLM 回覆。 |
|
自由參加: LLM 回覆。 |
CoherenceResult
{ "coherence_result": { "score": float, "explanation": string, "confidence": float } }
輸出 | |
---|---|
|
|
|
|
|
|
SafetyInput
{ "safety_input": { "metric_spec": {}, "instance": { "prediction": string } } }
參數 | |
---|---|
|
自由參加: 指標規格,定義指標的行為。 |
|
自由參加: 評估輸入內容,包括 LLM 回覆。 |
|
自由參加: LLM 回覆。 |
SafetyResult
{ "safety_result": { "score": float, "explanation": string, "confidence": float } }
輸出 | |
---|---|
|
|
|
|
|
|
GroundednessInput
{ "groundedness_input": { "metric_spec": {}, "instance": { "prediction": string, "context": string } } }
參數 |
說明 |
|
選用:GroundednessSpec 指標規格,定義指標的行為。 |
|
選用:GroundednessInstance 評估輸入內容,包括推論輸入內容和相應的回覆。 |
|
自由參加: LLM 回覆。 |
|
自由參加: 包含所有資訊的推論時間文字,可用於 LLM 回覆。 |
GroundednessResult
{ "groundedness_result": { "score": float, "explanation": string, "confidence": float } }
輸出 | |
---|---|
|
|
|
|
|
|
FulfillmentInput
{ "fulfillment_input": { "metric_spec": {}, "instance": { "prediction": string, "instruction": string } } }
參數 | |
---|---|
|
自由參加: 指標規格,定義指標的行為。 |
|
自由參加: 評估輸入內容,包括推論輸入內容和相應的回覆。 |
|
自由參加: LLM 回覆。 |
|
自由參加: 推論時使用的指令。 |
FulfillmentResult
{ "fulfillment_result": { "score": float, "explanation": string, "confidence": float } }
輸出 | |
---|---|
|
|
|
|
|
|
SummarizationQualityInput
{ "summarization_quality_input": { "metric_spec": {}, "instance": { "prediction": string, "instruction": string, "context": string, } } }
參數 | |
---|---|
|
自由參加: 指標規格,定義指標的行為。 |
|
自由參加: 評估輸入內容,包括推論輸入內容和相應的回覆。 |
|
自由參加: LLM 回覆。 |
|
自由參加: 推論時使用的指令。 |
|
自由參加: 包含所有資訊的推論時間文字,可用於 LLM 回覆。 |
SummarizationQualityResult
{ "summarization_quality_result": { "score": float, "explanation": string, "confidence": float } }
輸出 | |
---|---|
|
|
|
|
|
|
PairwiseSummarizationQualityInput
{ "pairwise_summarization_quality_input": { "metric_spec": {}, "instance": { "baseline_prediction": string, "prediction": string, "instruction": string, "context": string, } } }
參數 | |
---|---|
|
自由參加: 指標規格,定義指標的行為。 |
|
自由參加: 評估輸入內容,包括推論輸入內容和相應的回覆。 |
|
自由參加: 基準模型 LLM 回覆。 |
|
自由參加: 候選模型 LLM 回覆。 |
|
自由參加: 推論時使用的指令。 |
|
自由參加: 包含所有資訊的推論時間文字,可用於 LLM 回覆。 |
PairwiseSummarizationQualityResult
{ "pairwise_summarization_quality_result": { "pairwise_choice": PairwiseChoice, "explanation": string, "confidence": float } }
輸出 | |
---|---|
|
|
|
|
|
|
SummarizationHelpfulnessInput
{ "summarization_helpfulness_input": { "metric_spec": {}, "instance": { "prediction": string, "instruction": string, "context": string, } } }
參數 | |
---|---|
|
自由參加: 指標規格,定義指標的行為。 |
|
自由參加: 評估輸入內容,包括推論輸入內容和相應的回覆。 |
|
自由參加: LLM 回覆。 |
|
自由參加: 推論時使用的指令。 |
|
自由參加: 包含所有資訊的推論時間文字,可用於 LLM 回覆。 |
SummarizationHelpfulnessResult
{ "summarization_helpfulness_result": { "score": float, "explanation": string, "confidence": float } }
輸出 | |
---|---|
|
|
|
|
|
|
SummarizationVerbosityInput
{ "summarization_verbosity_input": { "metric_spec": {}, "instance": { "prediction": string, "instruction": string, "context": string, } } }
參數 | |
---|---|
|
自由參加: 指標規格,定義指標的行為。 |
|
自由參加: 評估輸入內容,包括推論輸入內容和相應的回覆。 |
|
自由參加: LLM 回覆。 |
|
自由參加: 推論時使用的指令。 |
|
自由參加: 包含所有資訊的推論時間文字,可用於 LLM 回覆。 |
SummarizationVerbosityResult
{ "summarization_verbosity_result": { "score": float, "explanation": string, "confidence": float } }
輸出 | |
---|---|
|
|
|
|
|
|
QuestionAnsweringQualityInput
{ "question_answering_quality_input": { "metric_spec": {}, "instance": { "prediction": string, "instruction": string, "context": string, } } }
參數 | |
---|---|
|
自由參加: 指標規格,定義指標的行為。 |
|
自由參加: 評估輸入內容,包括推論輸入內容和相應的回覆。 |
|
自由參加: LLM 回覆。 |
|
自由參加: 推論時使用的指令。 |
|
自由參加: 包含所有資訊的推論時間文字,可用於 LLM 回覆。 |
QuestionAnsweringQualityResult
{ "question_answering_quality_result": { "score": float, "explanation": string, "confidence": float } }
輸出 | |
---|---|
|
|
|
|
|
|
PairwiseQuestionAnsweringQualityInput
{ "question_answering_quality_input": { "metric_spec": {}, "instance": { "baseline_prediction": string, "prediction": string, "instruction": string, "context": string } } }
參數 | |
---|---|
|
自由參加: 指標規格,定義指標的行為。 |
|
自由參加: 評估輸入內容,包括推論輸入內容和相應的回覆。 |
|
自由參加: 基準模型 LLM 回覆。 |
|
自由參加: 候選模型 LLM 回覆。 |
|
自由參加: 推論時使用的指令。 |
|
自由參加: 包含所有資訊的推論時間文字,可用於 LLM 回覆。 |
PairwiseQuestionAnsweringQualityResult
{ "pairwise_question_answering_quality_result": { "pairwise_choice": PairwiseChoice, "explanation": string, "confidence": float } }
輸出 | |
---|---|
|
|
|
|
|
|
QuestionAnsweringRelevanceInput
{ "question_answering_quality_input": { "metric_spec": {}, "instance": { "prediction": string, "instruction": string, "context": string } } }
參數 | |
---|---|
|
自由參加: 指標規格,定義指標的行為。 |
|
自由參加: 評估輸入內容,包括推論輸入內容和相應的回覆。 |
|
自由參加: LLM 回覆。 |
|
自由參加: 推論時使用的指令。 |
|
自由參加: 包含所有資訊的推論時間文字,可用於 LLM 回覆。 |
QuestionAnsweringRelevancyResult
{ "question_answering_relevancy_result": { "score": float, "explanation": string, "confidence": float } }
輸出 | |
---|---|
|
|
|
|
|
|
QuestionAnsweringHelpfulnessInput
{ "question_answering_helpfulness_input": { "metric_spec": {}, "instance": { "prediction": string, "instruction": string, "context": string } } }
參數 | |
---|---|
|
自由參加: 指標規格,定義指標的行為。 |
|
自由參加: 評估輸入內容,包括推論輸入內容和相應的回覆。 |
|
自由參加: LLM 回覆。 |
|
自由參加: 推論時使用的指令。 |
|
自由參加: 包含所有資訊的推論時間文字,可用於 LLM 回覆。 |
QuestionAnsweringHelpfulnessResult
{ "question_answering_helpfulness_result": { "score": float, "explanation": string, "confidence": float } }
輸出 | |
---|---|
|
|
|
|
|
|
QuestionAnsweringCorrectnessInput
{ "question_answering_correctness_input": { "metric_spec": { "use_reference": bool }, "instance": { "prediction": string, "reference": string, "instruction": string, "context": string } } }
參數 | |
---|---|
|
自由參加: 指標規格,定義指標的行為。 |
|
自由參加: 評估時是否使用參照。 |
|
自由參加: 評估輸入內容,包括推論輸入內容和相應的回覆。 |
|
自由參加: LLM 回覆。 |
|
自由參加: 可供參考的標準 LLM 回覆。 |
|
自由參加: 推論時使用的指令。 |
|
自由參加: 包含所有資訊的推論時間文字,可用於 LLM 回覆。 |
QuestionAnsweringCorrectnessResult
{ "question_answering_correctness_result": { "score": float, "explanation": string, "confidence": float } }
輸出 | |
---|---|
|
|
|
|
|
|
PointwiseMetricInput
{ "pointwise_metric_input": { "metric_spec": { "metric_prompt_template": string }, "instance": { "json_instance": string, } } }
參數 | |
---|---|
|
必要條件: 指標規格,定義指標的行為。 |
|
必要條件: 定義指標的提示範本。這是由 instance.json_instance 中的鍵/值組合算繪而成 |
|
必要條件: 評估輸入內容,由 json_instance 組成。 |
|
自由參加: JSON 格式的鍵/值組合。例如:{"key_1": "value_1", "key_2": "value_2"}。用於算繪 metric_spec.metric_prompt_template。 |
PointwiseMetricResult
{ "pointwise_metric_result": { "score": float, "explanation": string, } }
輸出 | |
---|---|
|
|
|
|
PairwiseMetricInput
{ "pairwise_metric_input": { "metric_spec": { "metric_prompt_template": string }, "instance": { "json_instance": string, } } }
參數 | |
---|---|
|
必要條件: 指標規格,定義指標的行為。 |
|
必要條件: 定義指標的提示範本。這是由 instance.json_instance 中的鍵/值組合算繪而成 |
|
必要條件: 評估輸入內容,由 json_instance 組成。 |
|
自由參加: JSON 格式的鍵/值組合。例如:{"key_1": "value_1", "key_2": "value_2"}。用於算繪 metric_spec.metric_prompt_template。 |
PairwiseMetricResult
{ "pairwise_metric_result": { "score": float, "explanation": string, } }
輸出 | |
---|---|
|
|
|
|
ToolCallValidInput
{ "tool_call_valid_input": { "metric_spec": {}, "instance": { "prediction": string, "reference": string } } }
參數 | |
---|---|
|
自由參加: 指標規格,定義指標的行為。 |
|
自由參加: 評估輸入內容,包括 LLM 回覆和參考資料。 |
|
自由參加: 候選模型 LLM 回應,這是包含 { "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" } } ] } |
|
自由參加: 黃金模型輸出內容,格式與預測結果相同。 |
ToolCallValidResults
{ "tool_call_valid_results": { "tool_call_valid_metric_values": [ { "score": float } ] } }
輸出 | |
---|---|
|
重複 |
|
|
ToolNameMatchInput
{ "tool_name_match_input": { "metric_spec": {}, "instance": { "prediction": string, "reference": string } } }
參數 | |
---|---|
|
自由參加: 指標規格,定義指標的行為。 |
|
自由參加: 評估輸入內容,包括 LLM 回覆和參考資料。 |
|
自由參加: 候選模型 LLM 回應,這是包含 |
|
自由參加: 黃金模型輸出內容,格式與預測結果相同。 |
ToolNameMatchResults
{ "tool_name_match_results": { "tool_name_match_metric_values": [ { "score": float } ] } }
輸出 | |
---|---|
|
重複 |
|
|
ToolParameterKeyMatchInput
{ "tool_parameter_key_match_input": { "metric_spec": {}, "instance": { "prediction": string, "reference": string } } }
參數 | |
---|---|
|
自由參加: 指標規格,定義指標的行為。 |
|
自由參加: 評估輸入內容,包括 LLM 回覆和參考資料。 |
|
自由參加: 候選模型 LLM 回應,這是包含 |
|
自由參加: 黃金模型輸出內容,格式與預測結果相同。 |
ToolParameterKeyMatchResults
{ "tool_parameter_key_match_results": { "tool_parameter_key_match_metric_values": [ { "score": float } ] } }
輸出 | |
---|---|
|
重複 |
|
|
ToolParameterKVMatchInput
{ "tool_parameter_kv_match_input": { "metric_spec": {}, "instance": { "prediction": string, "reference": string } } }
參數 | |
---|---|
|
自由參加: 指標規格,定義指標的行為。 |
|
自由參加: 評估輸入內容,包括 LLM 回覆和參考資料。 |
|
自由參加: 候選模型 LLM 回應,這是包含 |
|
自由參加: 黃金模型輸出內容,格式與預測結果相同。 |
ToolParameterKVMatchResults
{ "tool_parameter_kv_match_results": { "tool_parameter_kv_match_metric_values": [ { "score": float } ] } }
輸出 | |
---|---|
|
重複 |
|
|
CometInput
{ "comet_input" : { "metric_spec" : { "version": string }, "instance": { "prediction": string, "source": string, "reference": string, }, } }
參數 | |
---|---|
|
自由參加: 指標規格,定義指標的行為。 |
|
自由參加:
|
|
自由參加: BCP-47 格式的來源語言。 例如「es」。 |
|
自由參加: 目標語言,格式為 BCP-47。 例如「es」 |
|
自由參加: 評估輸入內容, 包括 LLM 回覆和參考資料。評估時使用的確切欄位取決於 COMET 版本。 |
|
自由參加: 候選模型 LLM 回覆。 這是正在評估的 LLM 輸出內容。 |
|
自由參加: 原文。這是指預測內容的原始語言。 |
|
自由參加: 用於與預測結果比較的基準真相。這與預測結果的語言相同。 |
CometResult
{ "comet_result" : { "score": float } }
輸出 | |
---|---|
|
|
MetricxInput
{ "metricx_input" : { "metric_spec" : { "version": string }, "instance": { "prediction": string, "source": string, "reference": string, }, } }
參數 | |
---|---|
|
自由參加: 指標規格,定義指標的行為。 |
|
選填:
可以是下列其中一項:
|
|
自由參加: BCP-47 格式的來源語言。 例如「es」。 |
|
自由參加: 目標語言,格式為 BCP-47。 例如「es」。 |
|
自由參加: 評估輸入內容, 包括 LLM 回覆和參考資料。用於評估的確切欄位取決於 MetricX 版本。 |
|
自由參加: 候選模型 LLM 回覆。 這是正在評估的 LLM 輸出內容。 |
|
自由參加: 來源文字,即預測內容的原文語言。 |
|
自由參加: 用於與預測結果比較的基準真相。與預測結果的語言相同。 |
MetricxResult
{ "metricx_result" : { "score": float } }
輸出 | |
---|---|
|
|
範例
評估輸出內容
以下範例說明如何呼叫 Gen AI 評估 API,使用各種評估指標 (包括下列指標) 評估 LLM 的輸出內容:
summarization_quality
groundedness
fulfillment
summarization_helpfulness
summarization_verbosity
Python
Go
評估輸出內容:成對摘要品質
以下範例示範如何呼叫 Gen AI 評估服務 API,使用成對摘要品質比較來評估 LLM 的輸出內容。
REST
使用任何要求資料之前,請先替換以下項目:
- PROJECT_ID:。
- LOCATION:處理要求的區域。
- PREDICTION:LLM 回覆。
- BASELINE_PREDICTION:基準模型 LLM 回覆。
- INSTRUCTION:推論時使用的指令。
- CONTEXT:推論時間文字,內含所有相關資訊,可用於 LLM 回覆。
HTTP 方法和網址:
POST https://LOCATION-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID-/locations/LOCATION:evaluateInstances \
JSON 要求主體:
{ "pairwise_summarization_quality_input": { "metric_spec": {}, "instance": { "prediction": "PREDICTION", "baseline_prediction": "BASELINE_PREDICTION", "instruction": "INSTRUCTION", "context": "CONTEXT", } } }
如要傳送要求,請選擇以下其中一個選項:
curl
將要求主體儲存在名為 request.json
的檔案中,然後執行下列指令:
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
將要求主體儲存在名為 request.json
的檔案中,然後執行下列指令:
$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
如要瞭解如何安裝或更新 Python 適用的 Vertex AI SDK,請參閱「安裝 Python 適用的 Vertex AI SDK」。 詳情請參閱 Python API 參考說明文件。
Go
Go
在試用這個範例之前,請先按照Go使用用戶端程式庫的 Vertex AI 快速入門中的操作說明進行設定。 詳情請參閱 Vertex AI Go API 參考說明文件。
如要向 Vertex AI 進行驗證,請設定應用程式預設憑證。 詳情請參閱「為本機開發環境設定驗證」。
取得 ROUGE 分數
以下範例會呼叫 Gen AI 評估服務 API,取得多個輸入內容生成的預測結果 ROUGE 分數。ROUGE 輸入內容會使用 metric_spec
,決定指標的行為。
REST
使用任何要求資料之前,請先替換以下項目:
- PROJECT_ID:。
- LOCATION:處理要求的區域。
- PREDICTION:LLM 回覆。
- REFERENCE:做為參考的黃金 LLM 回覆。
- ROUGE_TYPE:用來計算 ROUGE 分數的計算方式。如要查看可接受的值,請參閱
metric_spec.rouge_type
。 - USE_STEMMER:決定是否使用 Porter 詞幹提取器去除字尾,以提升比對效果。如要瞭解可接受的值,請參閱
metric_spec.use_stemmer
。 - SPLIT_SUMMARIES:判斷是否要在
rougeLsum
句子之間新增換行符。如要瞭解可接受的值,請參閱metric_spec.split_summaries
。
HTTP 方法和網址:
POST https://LOCATION-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID-/locations/REGION:evaluateInstances \
JSON 要求主體:
{ "rouge_input": { "instances": { "prediction": "PREDICTION", "reference": "REFERENCE.", }, "metric_spec": { "rouge_type": "ROUGE_TYPE", "use_stemmer": USE_STEMMER, "split_summaries": SPLIT_SUMMARIES, } } }
如要傳送要求,請選擇以下其中一個選項:
curl
將要求主體儲存在名為 request.json
的檔案中,然後執行下列指令:
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
將要求主體儲存在名為 request.json
的檔案中,然後執行下列指令:
$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
如要瞭解如何安裝或更新 Python 適用的 Vertex AI SDK,請參閱「安裝 Python 適用的 Vertex AI SDK」。 詳情請參閱 Python API 參考說明文件。
Go
Go
在試用這個範例之前,請先按照Go使用用戶端程式庫的 Vertex AI 快速入門中的操作說明進行設定。 詳情請參閱 Vertex AI Go API 參考說明文件。
如要向 Vertex AI 進行驗證,請設定應用程式預設憑證。 詳情請參閱「為本機開發環境設定驗證」。
後續步驟
- 如需詳細說明文件,請參閱「執行評估」。