weave.scorers.default_models からアーティファクトパスを確認できます。
これらのスコアラーが返すオブジェクトには、入力テキストが安全または高品質かどうかを示す passed ブール属性と、モデルからの生のスコアなどの詳細を含む metadata 属性が含まれます。
ローカルスコアラーは CPU 上でも実行できますが、最良のパフォーマンスのために GPU の使用を推奨します。
ローカルスコアラーは Weave Python SDK にのみ対応しています。現時点では Weave TypeScript SDK にはまだ対応していません。TypeScript で Weave スコアラーを使用するには、function-based scorers を参照してください。
前提条件
スコアラーを選択する
| Scorer | 想定シナリオ |
|---|---|
| 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 レポート を参照してください。
使用上の注意
scoreメソッドは、outputパラメータに文字列が渡されることを前提としています。- スコアが高いほど、そのテキストにバイアスが含まれていると予測される度合いが強くなります。
thresholdパラメータには既定値が設定されていますが、初期化時に上書きすることもできます。
使用例
WeaveToxicityScorerV1
- 人種と出自: 人種差別や、出身国・地域、移民ステータス、民族性などに基づくバイアス。
- ジェンダーとセクシュアリティ: 性差別、女性蔑視、同性愛嫌悪、トランスフォビア、性的嫌がらせなど。
- 宗教: 誰かの宗教に対するバイアスやステレオタイプ。
- 能力: 身体的・精神的・知的な能力や障害に関するバイアス。
- 暴力と虐待: 過度に生々しい暴力の描写、暴力の脅迫、暴力の扇動など。
WeaveToxicityScorerV1 は PleIAs のオープンソース Celadon モデルを使用しています。詳細については、WeaveToxicityScorerV1 の W&B レポート を参照してください。
使用上の注意
scoreメソッドは、outputパラメータに文字列が渡されることを想定しています。- モデルは 5 つの異なるカテゴリそれぞれに対して、
0から3のスコアを返します:- これらのスコアの合計が
total_threshold(デフォルト値5)を超える場合、その入力は有害であるとフラグ付けされます。 - いずれか 1 つのカテゴリのスコアが
category_threshold(デフォルト値2)より高い場合、その入力は有害であるとフラグ付けされます。
- これらのスコアの合計が
- フィルタリングをより厳しくするには、初期化時に
category_thresholdまたはtotal_thresholdを上書きします。
- モデルは 5 つの異なるカテゴリそれぞれに対して、
使用例
WeaveHallucinationScorerV1
WeaveHallucinationScorerV1 は、Vectara のオープンソース HHEM 2.1 model を使用します。詳しくは、WeaveHallucinationScorerV1 W&B Report を参照してください。
使用上の注意
scoreメソッドは、queryパラメータとoutputパラメータに値が渡されることを想定しています。- コンテキストは
outputパラメータに(文字列または文字列のリストとして)渡してください。 - 出力スコアが高いほど、モデルの出力にハルシネーションが含まれていると予測する度合いが強くなります。
thresholdパラメータにはデフォルト値が設定されていますが、初期化時に上書きできます。
- コンテキストは
使用例
WeaveContextRelevanceScorerV1
WeaveContextRelevanceScorerV1 は、tasksource のファインチューニング済み deberta-small-long-nli モデルを使用します。詳細については、WeaveContextRelevanceScorerV1 W&B レポート を参照してください。
使用上の注意
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 の 2 つのカテゴリに分類することで、モデル出力の信頼度を評価します。複合スコアに基づき、次の信頼レベルを返します:
high: 問題が検出されないmedium: Advisory カテゴリに属する問題のみが検出されたlow: Critical カテゴリの問題が検出された、または入力が空である
low の信頼レベルになります。Advisory スコアラーで失敗した場合は medium になります。
- Critical:
-
WeaveToxicityScorerV1 -
WeaveHallucinationScorerV1 -
WeaveContextRelevanceScorerV1 -
Advisory:
WeaveFluencyScorerV1WeaveCoherenceScorerV1
-
使用上の注意
- このスコアラは RAG パイプラインを評価するために設計されています。
- 正しく評価を行うには、
query、context、outputの各キーが必要です。
- 正しく評価を行うには、
使用例
PresidioScorer
使用上の注意
- メールアドレスや電話番号など、特定のエンティティタイプを指定するには、
selected_entitiesパラメータに Presidio の Entities のリストを渡します。指定しない場合、Presidio はデフォルトの Entities リストに含まれるすべてのエンティティタイプを検出します。- メールアドレスや電話番号など、特定のエンティティタイプのみを検出するには、
selected_entitiesパラメータにリストを渡します。 custom_recognizersパラメータにpresidio.EntityRecognizerインスタンスのリストを渡すことで、カスタム認識器(custom recognizer)を利用できます。- 英語以外の入力を扱う場合は、
languageパラメータで言語を指定します。
- メールアドレスや電話番号など、特定のエンティティタイプのみを検出するには、