レビューアプリ
レビューアプリは、コードを書くことなく、ドメインの専門家から構造化されたフィードバックを収集するために設計されたWebベースのUIです。これを使用して、生成AI アプリの品質を向上させる知見を収集し、 LLM ジャッジをビジネス要件に合わせることができます。
レビューアプリを使用する2つの方法
既存のトレースにラベルを付ける
専門家に依頼して、アプリとの既存のインタラクションを確認し、 フィードバック と 期待値を提供します。
これを使用して、次の操作を行います。
- 特定のクエリに対する高品質で正しい応答がどのようなものかを理解する
- LLMジャッジをビジネス要件に合わせるためのインプットを収集
- 本番運用 トレース から評価データセットを作成
本番運用前のアプリのバイブチェック
バイブチェックモードを使用するには、アプリケーションがデプロイされている必要があります
デプロイされたアプリとチャットし、アプリの応答に関する フィードバック をリアルタイムで提供するように専門家に依頼します。
これを使用して、次の操作を行います。
- デプロイ前に新しいアプリのバージョンに関するフィードバックをすばやく取得する
- 本番運用環境に影響を与えずにアプリの動作をテスト
- ドメインの専門家による改善の検証
モードの比較
観点 | ||
---|---|---|
入力ソース | 既存のトレース | ドメインの専門家がクエリを入力します |
出力ソース | 既存のトレース | ライブエージェントエンドポイントの応答 |
カスタムラベリングスキーマ | ✅ はい - カスタムの質問と条件を定義します | ❌ いいえ - 固定フィードバックの質問を使用します |
結果の保存場所 | MLflow トレース (ラベル付けセッション内) | MLflow トレース |
前提 条件
-
MLflow と必要なパッケージをインストールする
Bashpip install --upgrade "mlflow[databricks]>=3.1.0" openai "databricks-connect>=16.1"
-
MLflow エクスペリメントを作成するには、環境のセットアップに関するクイックスタートに従ってください。
-
バイブチェックモードの場合のみ: Agent Frameworkを使用してデプロイされたエージェントエンドポイント
1. 既存のトレースのラベリング
既存のトレースにラベルを付けると、本番運用または開発から既にキャプチャしたトレースに関する構造化されたフィードバックを収集できます。 これは、評価データセットの構築、品質パターンの理解、およびカスタムLLMジャッジのトレーニングに最適です。
このプロセスには、ラベル付けセッションの作成、収集するフィードバックの定義、レビューするトレースの追加、およびドメインの専門家との共有が含まれます。詳細な手順については、「 既存のトレースにラベルを付ける」を参照してください。
ラベル付けセッション、スキーマ、および構成オプションの詳細については、「 ラベル付けセッション 」および「 ラベル付けスキーマ」を参照してください。
2.バイブチェックモード
-
Agent Framework を使用してアプリをパッケージ化 し、Agent Framework を用いてモデルサービングエンドポイントとしてデプロイします。
-
エクスペリメントのレビューアプリにエンドポイントを追加します。
次の例では、Databricks でホストされている LLM をレビュー アプリに追加します。エンドポイントをステップ 1 のアプリのエンドポイントに置き換えます。
from mlflow.genai.labeling import get_review_app
# Get review app for current MLflow experiment
review_app = get_review_app()
# Connect your deployed agent endpoint
review_app.add_agent(
agent_name="claude-sonnet",
model_serving_endpoint="databricks-claude-3-7-sonnet",
)
print(f"Share this URL: {review_app.url}/chat")
ドメインの専門家がアプリとチャットして、すぐにフィードバックを提供できるようになりました。
権限モデル
既存のトレースのラベリング用
ドメインエキスパートには次のものが必要です。
- アカウントアクセス : Databricks アカウントでプロビジョニングする必要がありますが、ワークスペースにアクセスする必要はありません
- エクスペリメント アクセス:MLflowエクスペリメントへの 書き込み 許可
バイブチェックモードの場合
ドメインエキスパートには次のものが必要です。
- アカウントアクセス : Databricks アカウントでプロビジョニングする必要がありますが、ワークスペースにアクセスする必要はありません
- エンドポイントアクセス :モデルサービングエンドポイントへの CAN_QUERY 権限
アカウントアクセスの設定
ワークスペースへのアクセス権を持たないユーザーの場合、アカウント管理者は次の操作を実行できます。
- アカウントレベルの SCIM プロビジョニングを使用して、ID プロバイダーからユーザーを同期する
- Databricks にユーザーとグループを手動で登録する
詳細については、ユーザーとグループの管理 を参照してください。
コンテンツレンダリング
レビュー アプリでは、MLflow トレースからさまざまなコンテンツ タイプが自動的にレンダリングされます。
-
取得したドキュメント :
RETRIEVER
スパン内のドキュメントは表示用にレンダリングされます -
OpenAI 形式のメッセージ : OpenAI チャット会話に続く MLflow トレースの入力と出力がレンダリングされます。
outputs
OpenAI 形式の ChatCompletions オブジェクトを含むinputs
または、OpenAI形式のチャットメッセージの配列を含むmessages
キーを含むoutputs
ディクテーションmessages
配列に OpenAI 形式のツール呼び出しが含まれている場合は、それらもレンダリングされます
-
ディクショナリ : MLflow トレースの入力と出力 (ディクショナリ) は、整形印刷された JSON としてレンダリングされます
それ以外の場合は、 input
のコンテンツと各トレースのルートスパンからの output
が、レビューのプライマリコンテンツとして使用されます。
フィードバックデータへのアクセス
専門家がフィードバックを提供した後、ラベルはエクスペリメントの MLflow Tracesに保存されます。 トレース タブまたは ラベリング・セッション タブを使用して、データを表示します。
次のステップ
- 既存のトレースにラベルを付ける - 構造化された専門家のフィードバックを収集するためのステップバイステップガイド
- ライブアプリテスト - 本番運用前のテストのためのバイブチェックモードの設定
- 評価データセットの構築 - 専門家のフィードバックを評価データセットに変換する