Gen AI 평가 서비스를 사용하면 자체 기준에 따라 여러 측정항목에서 대규모 언어 모델 (LLM)을 평가할 수 있습니다. 추론 시간 입력, LLM 응답, 추가 매개변수를 제공할 수 있으며 Gen AI 평가 서비스는 평가 태스크와 관련된 측정항목을 반환합니다.
측정항목에는 PointwiseMetric
및 PairwiseMetric
와 같은 모델 기반 측정항목과 rouge
, bleu
, 도구 함수 호출 측정항목과 같은 메모리 내 계산된 측정항목이 포함됩니다.
PointwiseMetric
및 PairwiseMetric
는 자체 기준으로 맞춤설정할 수 있는 일반 모델 기반 측정항목입니다.
이 서비스는 모델에서 예측 결과를 직접 입력으로 가져오므로 평가 서비스는 Vertex AI에서 지원하는 모든 모델에 대해 추론과 후속 평가를 모두 실행할 수 있습니다.
모델 평가에 관한 자세한 내용은 Gen AI 평가 서비스 개요를 참고하세요.
제한사항
평가 서비스의 제한사항은 다음과 같습니다.
- 평가 서비스는 첫 번째 호출 시 적용이 지연될 수 있습니다.
- 대부분의 모델 기반 측정항목은 gemini-1.5-pro 할당량을 사용합니다. Gen AI 평가 서비스가 이러한 모델 기반 측정항목을 계산하기 위해
gemini-1.5-pro
를 기본 심사 모델로 활용하기 때문입니다. - MetricX 및 COMET와 같은 일부 모델 기반 측정항목은 다른 머신러닝 모델을 사용하므로 gemini-1.5-pro 할당량을 사용하지 않습니다.
예시 문법
평가 호출을 전송하는 문법입니다.
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))
매개변수 목록
매개변수 | |
---|---|
|
(선택사항) 예측이 참조와 정확하게 일치하는지 평가하기 위한 입력입니다. |
|
(선택사항) 참조와 예측을 비교하여 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 } ] } }
매개변수 | |
---|---|
|
(선택사항) 측정항목 동작을 정의하는 측정항목 사양입니다. |
|
(선택사항) 사용 가능한 값은 다음과 같습니다.
|
|
(선택사항) 일치를 개선하기 위해 포터 스테머를 사용하여 단어 서픽스를 제거해야 하는지 여부입니다. |
|
(선택사항) 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 응답과 참조로 구성된 평가 입력입니다. |
|
(선택사항)
{ "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 응답과 참조로 구성된 평가 입력입니다. |
|
(선택사항)
|
|
(선택사항) 예측과 동일한 형식의 특별한 모델 출력입니다. |
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 응답과 참조로 구성된 평가 입력입니다. |
|
(선택사항)
|
|
(선택사항) 예측과 동일한 형식의 특별한 모델 출력입니다. |
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 응답과 참조로 구성된 평가 입력입니다. |
|
(선택사항)
|
|
(선택사항) 예측과 동일한 형식의 특별한 모델 출력입니다. |
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 Evaluation API를 호출하여 다음을 포함한 다양한 평가 측정항목을 사용하여 LLM의 출력을 평가하는 방법을 보여줍니다.
summarization_quality
groundedness
fulfillment
summarization_helpfulness
summarization_verbosity
Python
Go
출력 평가: 쌍별 요약 품질
다음 예에서는 Gen AI 평가 서비스 API를 호출하여 쌍별 요약 품질 비교를 사용하여 LLM의 출력을 평가하는 방법을 보여줍니다.
REST
요청 데이터를 사용하기 전에 다음을 바꿉니다.
- PROJECT_ID: 프로젝트 ID입니다.
- LOCATION: 요청을 처리하는 리전
- PREDICTION: LLM 응답
- BASELINE_PREDICTION: 기준 모델 LLM 응답
- INSTRUCTION: 추론 시간에 사용되는 명령
- CONTEXT: LLM 응답에 사용할 수 있는 모든 관련 정보가 포함된 추론 시간 텍스트
HTTP 메서드 및 URL:
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
Vertex AI SDK for Python을 설치하거나 업데이트하는 방법은 Vertex AI SDK for Python 설치를 참조하세요. 자세한 내용은 Python API 참고 문서를 확인하세요.
Go
Go
이 샘플을 사용해 보기 전에 Vertex AI 빠른 시작: 클라이언트 라이브러리 사용의 Go 설정 안내를 따르세요. 자세한 내용은 Vertex AI Go API 참고 문서를 참조하세요.
Vertex AI에 인증하려면 애플리케이션 기본 사용자 인증 정보를 설정합니다. 자세한 내용은 로컬 개발 환경의 인증 설정을 참조하세요.
ROUGE 점수 가져오기
다음 예에서는 Gen AI 평가 서비스 API를 호출하여 여러 입력으로 생성된 예측의 ROUGE 점수를 가져옵니다. ROUGE 입력은 측정항목 동작을 결정하는 metric_spec
를 사용합니다.
REST
요청 데이터를 사용하기 전에 다음을 바꿉니다.
- PROJECT_ID: 프로젝트 ID입니다.
- LOCATION: 요청을 처리하는 리전
- PREDICTION: LLM 응답
- REFERENCE: 참조를 위한 특별한 LLM 응답
- ROUGE_TYPE: Rouge 점수를 결정하는 데 사용되는 계산. 허용되는 값은
metric_spec.rouge_type
을 참조하세요. - USE_STEMMER: 일치를 개선하기 위해 포터 스테머를 사용하여 단어 접미사를 제거하는지 여부를 결정합니다. 허용되는 값은
metric_spec.use_stemmer
를 참고하세요. - SPLIT_SUMMARIES:
rougeLsum
문장 사이에 새 줄이 추가되는지 결정합니다. 허용되는 값은metric_spec.split_summaries
를 참조하세요.
HTTP 메서드 및 URL:
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
Vertex AI SDK for Python을 설치하거나 업데이트하는 방법은 Vertex AI SDK for Python 설치를 참조하세요. 자세한 내용은 Python API 참고 문서를 확인하세요.
Go
Go
이 샘플을 사용해 보기 전에 Vertex AI 빠른 시작: 클라이언트 라이브러리 사용의 Go 설정 안내를 따르세요. 자세한 내용은 Vertex AI Go API 참고 문서를 참조하세요.
Vertex AI에 인증하려면 애플리케이션 기본 사용자 인증 정보를 설정합니다. 자세한 내용은 로컬 개발 환경의 인증 설정을 참조하세요.
다음 단계
- 자세한 문서는 평가 실행을 참고하세요.