「品質」の定義:評価セット

この記事では、評価セットと、評価セットがアプリケーションの品質を確保するのにどのように役立つかについて説明します。

評価セットとは何ですか?

品質を測定するために、Databricks では、人間がラベル付けした評価セットを作成することをお勧めします。 評価セットは、キュレーションされた代表的なクエリのセットであり、グラウンドトゥルースの回答と (オプションで) 取得する必要がある正しいサポート ドキュメントと共に表示されます。 このプロセスでは、評価セットがエンドユーザーの期待と要件を正確に反映することを保証するため、人間の入力が重要です。

人間のラベルをキュレーションするのは、時間のかかるプロセスです。 まず、質問のみを含む評価セットを作成し、時間の経過とともにグラウンド トゥルースの回答を追加できます。 Mosaic AI Agent Evaluationは、グラウンドトゥルースなしでチェーンの品質を評価できますが、グラウンドトゥルースが利用可能な場合は、回答の正しさなどの追加のメトリクスをコンピュートします。

優れた評価セットの要素

適切な評価セットには、次の特性があります。

  • 代表: アプリケーションが本番運用で遭遇するさまざまなリクエストを正確に反映します。

  • 挑戦: セットには、モデルの機能を効果的にテストするために、困難で多様なケースを含める必要があります。 理想的には、プロンプト インジェクションを試みる質問や LLM から不適切な応答を生成しようとする質問など、敵対的な例が含まれます。

  • 継続的に更新される: このセットは、本番運用でのアプリケーションの使用方法、インデックス付きデータの性質の変化、およびアプリケーション要件の変更を反映するために、定期的に更新する必要があります。

Databricks では、評価セットに少なくとも 30 問、理想的には 100 から 200 問の質問を推奨しています。 最適な評価セットは、時間の経過とともに数千の質問を含むように成長します。

トレーニング、テスト、検証のセット

オーバーフィットを避けるために、Databricks では、評価セットをトレーニング、テスト、検証のセットに分割することをお勧めします。

  • トレーニングセット: 問題の~70%。 すべてのエクスペリメントを評価して、最も可能性の高いエクスペリメントを特定するための初期パスに使用されます。

  • テストセット: 問題の~20%。 トレーニングセットから最もパフォーマンスの高いエクスペリメントを評価するために使用されます。

  • 検証セット: 質問の ~10%。 エクスペリメントを本番運用にデプロイする前の最終検証チェックに使用されます。

Mosaic AI Agent Evaluation は、関係者がアプリケーションの出力に関するフィードバックを提供するための Web ベースのチャット インターフェイスを提供することで、評価セットを作成するのに役立ちます。 チェーンの出力とステークホルダーのフィードバックは Delta テーブルに保存され、評価セットにキュレーションできます。 サンプルコードを使用した実践的な手順については、このクックブックの実装セクションにある 評価セットのキュレーション を参照してください。