Weaveのローカルスコアラーは、最小限のレイテンシーでマシン上でローカルに実行される小型言語モデルのスイートです。これらのモデルは、AIシステムの入力、コンテキスト、出力の安全性と品質を評価します。
これらのモデルの一部はWeights & Biasによって微調整されていますが、他はコミュニティによってトレーニングされた最先端のオープンソースモデルです。トレーニングと評価にはWeights & Biases(W&B)レポートが使用されました。詳細は以下のW&Bレポートのリスト。
モデルの重みはW&B Artifactsで公開されており、スコアラークラスをインスタンス化すると自動的にダウンロードされます。自分でダウンロードしたい場合は、アーティファクトパスはこちらで確認できます:weave.scorers.default_models
これらのスコアラーによって返されるオブジェクトにはpassed入力テキストが安全または高品質であるかどうかを示すブール属性と、metadataモデルからの生のスコアなどの詳細情報を含む属性があります。
ローカルスコアラーはCPUとGPUで実行できますが、最高のパフォーマンスを得るにはGPUを使用してください。
前提条件
Weaveローカルスコアラーを使用する前に、追加の依存関係をインストールしてください:スコアラーを選択
以下のローカルスコアラーが利用可能です。ユースケースに基づいてスコアラーを選択してください。WeaveBiasScorerV1
このスコアラーは、ジェンダーと人種/出身地のバイアスを2つの次元で評価します:
- 人種と出身地:人種差別、出身国や地域、移民の地位、民族性などに対するバイアス。
- ジェンダーとセクシュアリティ:性差別、女性蔑視、同性愛嫌悪、トランスフォビア、セクシャルハラスメントなど。
WeaveBiasScorerV1は微調整されたdeberta-small-long-nliモデルを使用しています。モデル、データセット、キャリブレーションプロセスの詳細については、WeaveBiasScorerV1 W&B Reportをご覧ください。使用上の注意
- この
scoreメソッドは、outputパラメータに文字列を渡すことを想定しています。
- スコアが高いほど、テキスト内のバイアスの予測が強くなります。
- この
thresholdパラメータは設定されていますが、初期化時にオーバーライドすることもできます。
使用例
WeaveToxicityScorerV1
このスコアラーは、入力テキストの毒性を5つの次元で評価します:
- 人種と出身地:人種差別、出身国や地域、移民の地位、民族性などに対するバイアス。
- ジェンダーとセクシュアリティ:性差別、女性蔑視、同性愛嫌悪、トランスフォビア、セクシャルハラスメントなど。
- Religious: Bias or stereotypes against someone’s religion.
- Ability: Bias related to someone’s physical, mental, or intellectual ability or disability.
- 暴力と虐待:暴力の過度に詳細な描写、暴力の脅威、または暴力の扇動。
このWeaveToxicityScorerV1はオープンソースのCeladonモデル(PleIAsから)を使用しています。詳細については、WeaveToxicityScorerV1 W&B Reportをご覧ください。使用上の注意
- この
scoreメソッドは、outputパラメータに文字列を渡すことを想定しています。
- モデルは
0から3までの5つの異なるカテゴリにわたるスコアを返します:
- これらのスコアの合計が
total_threshold(デフォルト値5)を超える場合、入力は有毒としてフラグが立てられます。
- 単一のカテゴリのスコアが
category_threshold(デフォルト2)より高い場合、入力は有毒としてフラグが立てられます。
- フィルタリングをより積極的にするには、初期化時に
category_thresholdまたはtotal_thresholdをオーバーライドしてください。
使用例
WeaveHallucinationScorerV1
このスコアラーは、AIシステムの出力に入力データに基づいた幻覚が含まれているかどうかをチェックします。このWeaveHallucinationScorerV1はオープンソースのHHEM 2.1 model(Vectaraから)を使用しています。詳細については、WeaveHallucinationScorerV1 W&B Reportをご覧ください。使用上の注意
- この
scoreメソッドは、queryとoutputパラメータに値を渡すことを想定しています。
- コンテキストは
outputパラメータに渡す必要があります(文字列または文字列のリストとして)。
- 出力スコアが高いほど、出力における幻覚の予測が強くなります。
- この
thresholdパラメータは設定されていますが、初期化時にオーバーライドできます。
使用例
WeaveContextRelevanceScorerV1
このスコアラーはRAGシステムを評価する際に使用するように設計されています。クエリに対するコンテキストの関連性をスコアリングします。このWeaveContextRelevanceScorerV1は微調整されたdeberta-small-long-nliモデル(tasksourceから)を使用しています。詳細については、WeaveContextRelevanceScorerV1 W&B Reportをご覧ください。使用上の注意
- この
scoreメソッドはqueryとoutputの値を想定しています。
- コンテキストは
outputパラメータに渡す必要があります(文字列または文字列のリスト)。
- スコアが高いほど、コンテキストがクエリに関連しているという予測が強くなります。
verbose=Trueをscoreメソッドに渡して、チャンクごとのスコアを取得できます。
使用例
WeaveCoherenceScorerV1
このスコアラーは、入力テキストが一貫しているかどうかをチェックします。このWeaveCoherenceScorerV1は微調整されたdeberta-small-long-nliモデル(tasksourceから)を使用しています。詳細については、WeaveCoherenceScorerV1 W&B Report.使用上の注意
- The
score メソッドはテキストを query および output パラメータに渡すことを想定しています。
- 出力スコアが高いほど、一貫性の予測が強いことを意味します。
使用例
WeaveFluencyScorerV1
このスコアラーは、入力テキストが流暢であるか—つまり、読みやすく理解しやすく、自然な人間の言語に似ているかをチェックします。文法、構文、全体的な読みやすさを評価します。The WeaveFluencyScorerV1 は微調整された ModernBERT-base モデルをAnswerDotAIから使用しています。詳細については、WeaveFluencyScorerV1 W&B Report.使用上の注意
- The
score メソッドはテキストを output パラメータに渡すことを想定しています。
- 出力スコアが高いほど、流暢性が高いことを示します。
使用例
WeaveTrustScorerV1
The WeaveTrustScorerV1 はRAGシステム用の複合スコアラーで、他のスコアラーを重要(Critical)と勧告(Advisory)の2つのカテゴリーにグループ化することで、モデル出力の信頼性を評価します。複合スコアに基づいて、次の信頼レベルを返します:
high: 問題は検出されていません
medium: 勧告(Advisory)の問題のみ検出されました
low: 重要(Critical)な問題が検出されたか、入力が空です
重要(Critical)なスコアラーに失敗した入力は low 信頼レベルになります。勧告(Advisory)スコアラーに失敗すると medium.
-
Critical:
WeaveToxicityScorerV1
WeaveHallucinationScorerV1
WeaveContextRelevanceScorerV1
-
Advisory:
WeaveFluencyScorerV1
WeaveCoherenceScorerV1
使用上の注意
- このスコアラーはRAGパイプラインの評価用に設計されています。
- 正確なスコアリングには
query, context, および output キーが必要です。
使用例
PresidioScorer
このスコアラーは Presidio library を使用して、AIシステムの入力と出力における個人を特定できる情報(PII)を検出します。使用上の注意
- メールアドレスや電話番号などの特定のエンティティタイプを指定するには、Presidioエンティティのリストを
selected_entities パラメータに渡します。そうしない場合、Presidioはデフォルトのエンティティリストにあるすべてのエンティティタイプを検出します。
- メールアドレスや電話番号などの特定のエンティティタイプを検出するには、リストを
selected_entities パラメータに渡します。
- カスタム認識器は
custom_recognizers パラメータを通じて presidio.EntityRecognizer インスタンスのリストとして渡すことができます。
- 英語以外の入力を処理するには、
language パラメータを使用して言語を指定します。
使用例
WeaveローカルスコアラーはまだTypeScriptでは利用できません。お待ちください!TypeScriptでWeaveスコアラーを使用するには、function-based scorers.