Skip to content

アプリケーション内で をクリックすると、お使いのDataRobotバージョンに関する全プラットフォームドキュメントにアクセスできます。

評価とモデレーションを設定

本機能の提供について

評価とモデレーションのガードレールは、デフォルトではオフになっています。 この機能を有効にする方法については、DataRobotの担当者または管理者にお問い合わせください。

機能フラグ:モデレーションのガードレールを有効にする、モデルレジストリでグローバルモデルを有効にする(プレミアム)、予測応答で追加のカスタムモデル出力を有効にする

評価とモデレーションのガードレールは、組織がプロンプトインジェクションや、悪意のある、有害な、または不適切なプロンプトや回答をブロックするのに役立ちます。 また、ハルシネーションや信頼性の低い回答を防ぎ、より一般的には、モデルをトピックに沿った状態に保つこともできます。 さらに、これらのガードレールは、個人を特定できる情報(PII)の共有を防ぐことができます。 多くの評価およびモデレーションガードレールは、デプロイされたテキスト生成モデル(LLM)をデプロイされたガードモデルに接続します。 これらのガードモデルはLLMのプロンプトと回答について予測し、これらの予測と統計を中心的なLLMデプロイに報告します。 評価とモデレーションのガードレールを使用するには、まず、LLMのプロンプトや回答について予測するガードモデルを作成してデプロイします。たとえば、ガードモデルは、プロンプトインジェクションや有害な回答を識別することができます。 次に、ターゲットタイプがテキスト生成のカスタムモデルを作成する場合、評価とモデレーションのガードレールを1つ以上定義します。

Important prerequisites

Before configuring evaluation and moderation guardrails for an LLM, follow these guidelines while deploying guard models and configuring your LLM deployment:

  • If using a custom guard model, before deployment, define moderations.input_column_name and moderations.output_column_name as tag-type key values on the registered model version. If you don't set these key values, any users of the guard model will have to enter the input and output column names manually.
  • Deploy the global or custom guard models you intend to use to monitor the central LLM before configuring evaluation and moderation.
  • デプロイされたガードモデルとは異なる予測環境に、中心的なLLMをデプロイします。
  • デプロイされたLLMを介して予測を開始する前に、関連付けIDを設定して予測ストレージを有効にします。 If you don't set an association ID, the metrics for the moderations won't be calculated on the Custom Metrics tab.

評価およびモデレーションガードレールを選択および設定するには:

  1. モデルワークショップで、テキスト生成ターゲットタイプを持つカスタムモデルのアセンブルタブを開き、 DataRobotの外部で作成したカスタムモデルから手動で、または ユースケースのLLMプレイグラウンドで作成されたモデルから自動的に モデルを構築します。

    モデレーションを使用してテキスト生成モデルを構築する場合は、必須の ランタイムパラメーター(資格情報など)を設定するか、 リソース設定(パブリックネットワークアクセスなど)を行います。 最後に、基本環境[GenAI] Python 3.11 with Moderationsに設定します。

    リソース設定

    DataRobot recommends creating the LLM custom model using larger resource bundles with more memory and CPU resources.

  2. カスタムモデルに必須の設定を行った後、評価とモデレーションセクションに移動し、 設定をクリックします。

  3. 評価とモデレーションを設定パネルの評価タブで、次のいずれかの指標カードをクリックして必須プロパティを設定します。

    評価指標 デプロイまたはAPI接続 説明
    カスタムデプロイ カスタムデプロイ 任意のデプロイを使用して、LLM(サポートされているターゲットタイプ:連続値、二値分類、多クラス、テキスト生成)の評価とモデレーションを行います。
    忠実度 OpenAI API LLMの回答がソースと一致するかどうかを測定して、考えられるハルシネーションを識別します。
    PII検出 PresidioのPII検出 Microsoft Presidioライブラリを使用して、テキスト内の個人識別情報 (PII) を検出します。
    プロンプトインジェクション プロンプトインジェクション分類器 モデルの出力変更を意図した入力操作(システムプロンプトの上書きや変更など)を検出します。
    Rouge 1 N/A LLMブループリントから生成された回答とベクターデータベースから取得されたドキュメントの間で類似度を計算します。
    センチメント分類器 センチメント分類器 テキストのセンチメントを肯定的か否定的に分類します。
    入力でのトピック維持 NVIDIA NeMo Guardrails API トピックの境界を提供するためにNVIDIA NeMo Guardrailsを使用して、プロンプトがトピックに関連する内容であること、およびブロックされた用語が使用されないことを保証します。
    出力でのトピック維持 NVIDIA NeMo Guardrails API トピックの境界を提供するためにNVIDIA NeMo Guardrailsを使用して、回答がトピックに関連する内容であること、およびブロックされた用語が使用されないことを保証します。
    トークン数 N/A LLMへの入力、LLMからの出力、ベクターデータベースから取得したテキストに関連付けられたトークンの数を追跡します。
    毒性 毒性分類器 コンテンツの有害性を分類してモデレーション技術を適用し、有害なコンテンツの拡散を防ぎます。

    PII検出、プロンプトインジェクション検出、センチメント分類、および毒性分類に必要なデプロイは、 レジストリでグローバルモデルとして使用できます。

    次のグローバルモデルを使用できます。

    モデル タイプ ターゲット 説明
    プロンプトインジェクション分類器 二値 インジェクション テキストをプロンプトインジェクションまたは正当なものとして分類します。 このモデルには、分類するテキストを含むtextという名前の列が1つ必要です。 詳しくは、 deberta-v3-base-injectionモデルの詳細を参照してください。
    毒性分類器 二値 毒性 テキストを有毒か無毒に分類します。 このモデルには、分類するテキストを含むtextという名前の列が1つ必要です。 詳しくは、 toxic-comment-modelの詳細を参照してください。
    センチメント分類器 二値 センチメント テキストのセンチメントを肯定的か否定的に分類します。 このモデルには、分類するテキストを含むtextという名前の列が1つ必要です。 詳しくは、 distilbert-base-uncased-finetuned-sst-2-englishモデルの詳細を参照してください。
    感情分類器 多クラス ターゲット テキストを感情で分類します。 これは多ラベルモデルです。つまり、複数の感情をテキストに適用できます。 このモデルには、分類するテキストを含むtextという名前の列が1つ必要です。 詳しくは、 roberta-base-go_emotions-onnxモデルの詳細を参照してください。
    拒否スコア 連続値 ターゲット プロンプトがモデルに設定されている回答範囲を超えているために、LLMがクエリーへの回答を拒否したケースのリストと、入力を比較して、最大類似性スコアを出力します。
    PresidioのPII検出 二値 contains_pii テキスト内の個人を特定できる情報(PII)を検出して置き換えます。 このモデルには、分類するテキストを含むtextという名前の列が1つ必要です。 必要に応じて、検出するPIIのタイプをコンマ区切りの文字列として列'entities'に指定できます。 この列が指定されていない場合は、サポートされているすべてのエンティティが検出されます。 エンティティのタイプは、PresidioがサポートするPIIエンティティのドキュメントに記載されています。

    検出結果に加えて、モデルはanonymized_text列を返します。この列には、検出されたPIIがプレースホルダーに置き換えられた更新バージョンの入力が含まれています。

    詳細については、Presidio: Data Protection and De-identification SDKのドキュメントを参照してください。
    ゼロショット分類器 二値 ターゲット ユーザー指定のラベルを持つテキストに対してゼロショット分類を実行します。 このモデルでは、textという名前の列に分類されたテキストが必要であり、labelsという名前の列にコンマ区切りの文字列としてクラスラベルが必要です。 すべての行に同じラベルセットが必要であるため、最初の行にあるラベルが使用されます。 詳しくは、 deberta-v3-large-zeroshot-v1モデルの詳細を参照してください。
    Pythonダミー二値分類 二値 ターゲット Positiveクラスでは、常に0.75となります。 詳しくは、 python3_dummy_binaryモデルの詳細を参照してください。
  4. 上記で選択した指標に応じて、次のフィールドを設定します。

    フィールド 説明
    名前 評価指標の複数のインスタンスを追加する場合は、一意の名前を入力します。
    適用先 評価指標に応じて、プロンプト回答のどちらか、または両方を選択します。
    デプロイ名 ガードモデルによって計算された評価指標の場合、カスタムモデルデプロイを選択します。 カスタムデプロイの場合、以下の項目も設定する必要があります。カスタムデプロイのガードモデルにmoderations.input_column_namemoderations.output_column_nameキー値が定義されている場合、これらのフィールドには自動的に値が設定されます。
    OpenAI API 忠実度の評価指標の場合、OpenAI APIのベースURLOpenAIのAPIキー、およびOpenAI APIのデプロイを入力します。
    NVIDIA API トピック維持の評価には、NVIDIA NeMo GuardrailsのAPIキーを入力します。
    ファイル トピック維持の評価には、NeMo Guardrailsの設定ファイルを変更します。
    モデレーションの基準 モデレーションロジックが適用されるタイミングを決定する条件を定義します。
  5. 必須フィールドを設定した後、追加をクリックして評価を保存し、評価タブに戻ります。 別の指標を選択して設定するか、次へをクリックしてモデレーションタブに進み、モデレーション戦略を設定します。

  6. モデレーションタブで、プロンプトのモデレーション回答のモデレーションモデレーション戦略を設定します。 各評価指標に対して、モデレーション方法として報告するまたはブロック(該当する場合)のいずれかを選択します。

    ブロックを選択すると、オプションでデフォルトの表示メッセージを設定できます。

  7. 設定を保存をクリックします。

    選択したガードレールは、アセンブルタブの評価とモデレーションセクションに表示されます。

テキスト生成カスタムモデルにガードレールを追加した後、モデルを テスト登録、および デプロイして本番環境で予測を作成できます。 予測を作成した後、 [カスタム指標 ] (nxt-custom-metrics) タブで評価指標を表示し、 データ探索タブでプロンプト、回答、およびフィードバック(設定されている場合)を表示できます。

「トレース中」タブ

When you add moderations to an LLM deployment, you can't view custom metric data by row on the Data exploration > Tracing tab.

評価およびモデレーションガードレールの表示

ガードレールを含むテキスト生成モデルが登録およびデプロイされると、 登録済みモデルの概要タブと デプロイの概要タブで設定済みのガードレールを表示できます。


更新しました July 16, 2024