로컬 Scorer는 Weave Python SDK에서만 사용할 수 있습니다. Weave TypeScript SDK에서는 아직 지원되지 않습니다.TypeScript에서 Weave Scorer를 사용하려면 함수 기반 Scorer를 참조하세요.
설치
model_id를 설정하세요. 지원되는 모델을 확인하세요.
HallucinationFreeScorer
- Scorer의
system_prompt및user_prompt필드를 사용자 지정하여 “hallucination”의 의미를 원하는 방식에 맞게 정의하세요.
score메서드는context라는 이름의 입력 컬럼을 필요로 합니다. 데이터셋에서 다른 이름을 사용하는 경우,column_map속성을 사용하여context를 데이터셋 컬럼에 매핑하세요.
HallucinationFreeScorer를 사용합니다:
SummarizationScorer
- 엔터티 밀도: 요약에 언급된 고유 엔터티(예: 이름, 장소, 사물) 수를 요약의 전체 단어 수와 비교해 요약의 “정보 밀도”를 추정합니다. 엔터티 추출에는 LLM을 사용합니다. 이는 Chain of Density 논문에서 엔터티 밀도를 활용하는 방식과 유사합니다.
- 품질 등급: LLM 평가자가 요약을
poor,ok,excellent중 하나로 평가합니다. 그런 다음 이 등급을 점수(poor는 0.0, ok는 0.5, excellent는 1.0)로 매핑해 집계 성능 평가에 사용합니다.
summarization_evaluation_system_prompt와summarization_evaluation_prompt를 조정해 평가 프로세스를 맞춤 설정하세요.
- 이 Scorer는 내부적으로 litellm을 사용합니다.
score방법은 원본 텍스트(요약 대상 텍스트)가input컬럼에 있어야 합니다. 데이터셋에서 다른 이름을 사용하는 경우column_map속성을 사용하세요.
SummarizationScorer를 사용합니다.
OpenAIModerationScorer
OpenAIModerationScorer는 OpenAI의 Moderation API를 사용해 AI 시스템의 출력에 혐오 표현이나 음란물 등 허용되지 않는 콘텐츠가 포함되어 있는지 확인합니다.
- AI의
출력을 OpenAI Moderation 엔드포인트로 전송하고, 콘텐츠가 플래그 대상으로 표시되었는지를 나타내는 구조화된 응답을 반환합니다.
OpenAIModerationScorer를 사용합니다:
EmbeddingSimilarityScorer
EmbeddingSimilarityScorer는 AI 시스템의 출력과 데이터셋의 대상 텍스트 임베딩 간 코사인 유사도를 계산합니다. AI의 출력이 레퍼런스 텍스트와 얼마나 유사한지 측정할 때 사용하세요.
threshold(float): 두 텍스트를 유사하다고 판단하는 데 필요한 최소 코사인 유사도 점수입니다(-1~1 사이, 기본값은0.5).
EmbeddingSimilarityScorer를 사용합니다:
ValidJSONScorer
ValidJSONScorer는 AI 시스템의 출력이 유효한 JSON인지 확인합니다. 출력이 JSON 형식일 것으로 예상되며 그 유효성을 확인해야 할 때 유용한 Scorer입니다.
ValidJSONScorer를 사용합니다:
ValidXMLScorer
ValidXMLScorer는 AI 시스템의 출력이 유효한 XML인지 확인합니다. XML 형식의 출력이 예상될 때 사용하세요.
ValidXMLScorer를 사용합니다:
PydanticScorer
PydanticScorer는 AI 시스템의 출력이 지정된 스키마 또는 데이터 구조를 따르도록, 그 출력이 Pydantic 모델에 맞는지 검증합니다.
RAGAS - ContextEntityRecallScorer
ContextEntityRecallScorer는 AI 시스템의 출력과 제공된 컨텍스트에서 모두 entity를 추출한 뒤 재현율 점수를 계산해 컨텍스트 재현율을 추정합니다. Retrieval Augmented Generation Assessment(RAGAS) 평가 라이브러리를 기반으로 합니다.
- LLM을 사용해 출력과 컨텍스트에서 고유한 entity를 추출하고 재현율을 계산합니다.
- 재현율은 컨텍스트의 중요한 entity 중 출력에 포함된 비율을 나타냅니다.
- 재현율 점수가 포함된 딕셔너리를 반환합니다.
- 데이터셋에
context컬럼이 있어야 합니다. 컬럼 이름이 다르면column_map속성을 사용하세요.
RAGAS - ContextRelevancyScorer
ContextRelevancyScorer는 제공된 컨텍스트가 AI 시스템의 출력과 얼마나 관련성이 있는지 평가합니다. RAGAS 평가 라이브러리를 기반으로 합니다.
- LLM을 사용해 컨텍스트가 출력과 얼마나 관련성이 있는지 0~1 척도로 평가합니다.
relevancy_score가 포함된 딕셔너리를 반환합니다.
- 데이터셋에
context컬럼이 있어야 합니다. 컬럼 이름이 다른 경우column_map속성을 사용하세요. - 관련성을 평가하는 방식을 정의하려면
relevancy_prompt를 사용자 지정하세요.
ContextEntityRecallScorer와 ContextRelevancyScorer를 함께 사용합니다:
openai/gpt-4o 및 openai/text-embedding-3-small과 같은 OpenAI 모델에 맞게 조정되어 있습니다. 다른 공급자를 사용하려면 model_id 필드를 업데이트하세요. 예를 들어 Anthropic 모델을 사용하려면 다음과 같습니다: