weave.scorers.default_models
이 스코어러들이 반환하는 객체에는 입력 텍스트가 안전하거나 고품질인지 여부를 나타내는 passed 불리언 속성과, 모델의 원시 점수와 같은 더 자세한 정보를 담은 metadata 속성이 포함됩니다.
로컬 스코어러는 CPU에서도 실행할 수 있지만, 최상의 성능을 위해 GPU 사용을 권장합니다.
로컬 스코어러는 Weave Python SDK에서만 사용할 수 있습니다. 아직 Weave TypeScript SDK에서는 사용할 수 없습니다.TypeScript에서 Weave 스코어러를 사용하려면 함수 기반 스코어러를 참조하세요.
사전 준비사항
스코어러 선택
| Scorer | Scenario |
|---|---|
| WeaveToxicityScorerV1 | 증오 발언이나 위협 등을 포함해, AI 시스템의 입력과 출력에서 유해하거나 해로운 콘텐츠를 식별합니다. |
| WeaveBiasScorerV1 | AI 시스템의 입력과 출력에서 편향적이거나 고정관념적인 콘텐츠를 감지합니다. 생성된 텍스트의 유해한 편향을 줄이는 데 적합합니다. |
| WeaveHallucinationScorerV1 | 제공된 입력과 컨텍스트를 기반으로, RAG 시스템이 출력에서 환각을 생성하는지 여부를 식별합니다. |
| WeaveContextRelevanceScorerV1 | AI 시스템의 출력이 입력 및 제공된 컨텍스트와 얼마나 관련 있는지를 측정합니다. |
| WeaveCoherenceScorerV1 | AI 시스템 출력의 일관성과 논리적 구조를 평가합니다. |
| WeaveFluencyScorerV1 | AI 시스템의 출력이 얼마나 유창한지를 측정합니다. |
| WeaveTrustScorerV1 | toxicity, hallucination, context relevance, fluency, coherence 스코어러를 함께 활용하는 종합 스코어러입니다. |
| PresidioScorer | Microsoft의 Presidio 라이브러리를 사용해, AI 시스템의 입력과 출력에서 개인정보(PII)를 탐지합니다. |
WeaveBiasScorerV1
- 인종 및 출신: 특정 국가나 지역의 출신, 이민자 신분, 민족성 등에 대한 인종차별 및 편향
- 성별 및 성적 지향: 성차별, 여성혐오, 동성애혐오, 트랜스젠더혐오, 성희롱 등
WeaveBiasScorerV1는 파인 튜닝된 deberta-small-long-nli 모델을 사용합니다. 모델, 데이터셋, 캘리브레이션(보정) 과정에 대한 자세한 내용은 WeaveBiasScorerV1 W&B Report를 참고하세요.
사용 시 유의사항
score메서드는 문자열을output매개변수로 전달받도록 설계되어 있습니다.- 점수가 높을수록 텍스트에 편향이 있을 것이라는 예측이 더 강하다는 의미입니다.
threshold매개변수는 기본값이 설정되어 있지만, 초기화 시 다른 값으로 재정의할 수도 있습니다.
사용 예제
WeaveToxicityScorerV1
- 인종 및 출신: 인종차별, 출신 국가나 지역, 이민 신분, 민족성 등을 이유로 한 편견.
- 성별 및 성적 지향: 성차별, 여성혐오, 동성애 혐오, 트랜스젠더 혐오, 성희롱 등.
- 종교: 특정인의 종교에 대한 편견 또는 고정관념.
- 능력: 특정인의 신체적, 정신적, 지적 능력 또는 장애와 관련된 편견.
- 폭력 및 학대: 지나치게 노골적인 폭력 묘사, 폭력 위협 또는 폭력 선동.
WeaveToxicityScorerV1는 PleIAs에서 제공하는 오픈 소스 Celadon 모델을 사용합니다. 자세한 내용은 WeaveToxicityScorerV1 W&B Report를 참조하세요.
사용 시 참고 사항
score메서드는output파라미터에 문자열이 전달되도록 설계되어 있습니다.- 모델은 다섯 가지 서로 다른 카테고리에 대해
0에서3사이의 점수를 반환합니다.- 이 점수들의 합이
total_threshold(기본값5)를 초과하면 입력은 유해한 것으로 표시됩니다. - 개별 카테고리 중 하나라도 점수가
category_threshold(기본값2)보다 크면 입력은 유해한 것으로 표시됩니다.
- 이 점수들의 합이
- 필터링을 더 엄격하게 하려면 초기화 시
category_threshold또는total_threshold값을 재정의하십시오.
- 모델은 다섯 가지 서로 다른 카테고리에 대해
사용 예제
WeaveHallucinationScorerV1
WeaveHallucinationScorerV1는 Vectara에서 제공하는 오픈소스 HHEM 2.1 모델을 사용합니다. 자세한 내용은 WeaveHallucinationScorerV1 W&B Report 보고서를 참조하세요.
사용 참고 사항
score메서드는query및output매개변수에 값이 전달되어야 합니다.- 컨텍스트는
output매개변수로 전달해야 합니다(문자열 또는 문자열 리스트). - 출력 점수가 높을수록 출력에서 환각이 발생할 것으로 예측되는 정도가 더 크다는 의미입니다.
threshold매개변수는 기본값이 설정되어 있으나, 초기화 시 재정의할 수 있습니다.
- 컨텍스트는
사용 예
WeaveContextRelevanceScorerV1
WeaveContextRelevanceScorerV1는 tasksource의 파인튜닝된 deberta-small-long-nli 모델을 사용합니다. 자세한 내용은 WeaveContextRelevanceScorerV1 W&B Report를 참조하세요.
사용 시 참고 사항
score메서드는query와output값을 필요로 합니다.- 컨텍스트는 문자열 또는 문자열 목록 형태로
output매개변수에 전달해야 합니다. - 점수가 높을수록 해당 컨텍스트가 쿼리와 더 관련성이 높다고 예측합니다.
- 청크 단위 점수를 확인하려면
score메서드에verbose=True를 전달하면 됩니다.
- 컨텍스트는 문자열 또는 문자열 목록 형태로
사용 예
WeaveCoherenceScorerV1
WeaveCoherenceScorerV1는 tasksource에서 제공하는 deberta-small-long-nli 파인튜닝된 모델을 사용합니다. 더 자세한 내용은 WeaveCoherenceScorerV1 W&B Report를 참고하세요.
사용 시 유의사항
score메서드는query및output매개변수에 텍스트가 전달되는 것을 기대합니다.- 출력 점수가 높을수록 일관성이 더 높다는 예측을 의미합니다.
사용 예제
WeaveFluencyScorerV1
WeaveFluencyScorerV1는 AnswerDotAI에서 파인튜닝한 ModernBERT-base 모델을 사용합니다. 자세한 내용은 WeaveFluencyScorerV1 W&B Report를 참고하세요.
사용 시 참고 사항
score메서드는 텍스트를output매개변수에 전달해야 합니다.- 출력 점수가 높을수록 유창성이 더 높다는 의미입니다.
사용 예제
WeaveTrustScorerV1
WeaveTrustScorerV1는 RAG 시스템에서 다른 스코어러를 Critical, Advisory 두 범주로 나누어 그룹화하고, 이를 기반으로 모델 출력의 신뢰도를 평가하는 복합 스코어러입니다. 복합 점수에 따라 다음과 같은 신뢰 수준을 반환합니다:
high: 문제가 감지되지 않음medium: Advisory 범주의 문제만 감지됨low: Critical 범주의 문제가 감지되었거나 입력이 비어 있음
low trust level. Failing an Advisory scorer results in medium.
- Critical:
-
WeaveToxicityScorerV1 -
WeaveHallucinationScorerV1 -
WeaveContextRelevanceScorerV1 -
Advisory:
WeaveFluencyScorerV1WeaveCoherenceScorerV1
-
사용 시 참고 사항
- 이 스코어러는 RAG 파이프라인을 평가하기 위해 설계되었습니다.
- 정확한 스코어링을 위해
query,context,output키가 모두 필요합니다.
- 정확한 스코어링을 위해
사용 예
PresidioScorer
사용 시 참고 사항
- 이메일이나 전화번호와 같은 특정 엔터티 유형을 지정하려면
selected_entities파라미터에 Presidio 엔터티 목록을 전달하세요. 그렇지 않으면 Presidio는 기본 엔터티 목록에 있는 모든 엔터티 유형을 감지합니다.- 이메일이나 전화번호와 같은 특정 엔터티 유형만 감지하려면
selected_entities파라미터에 목록을 전달하세요. - 사용자 정의 인식기(recognizer)를 사용하려면
custom_recognizers파라미터에presidio.EntityRecognizer인스턴스 목록을 전달하세요. - 영어 이외의 입력을 처리하려면
language파라미터로 언어를 지정하세요.
- 이메일이나 전화번호와 같은 특정 엔터티 유형만 감지하려면