Debugging generation quality — Databricks Generative AI Cookbook [2024/6/26時点]の翻訳です。
本書は著者が手動で翻訳したものであり内容の正確性を保証するものではありません。正確な内容に関しては原文を参照ください。
Databricks生成AIクックブックのコンテンツです。
生成品質のデバッグ
生成品質のデバッグ
あなたが実施した根本原因分析によって、LLM生成の改善が対応すべき根本原因であることがわかったのでこのページを参照しています。
最適な収集がされたとしても、正確で一貫性があり、適切なレスポンスを生成するためにRAGチェーンのLLMコンポーネントが効果的に収集したコンテキストを活用できない場合、最終的なアウトプットの品質で苦しむことになります。生成品質による問題は、ハルシネーション、非一貫性、ユーザーのクエリーに簡潔に対応することに失敗するなど様々な事象として発生します。
生成品質の問題に対応するステップバイステップのプロセスを以下に示します:
-
B_quality_iteration/01_root_cause_quality_issues
ノートブックを開きます。 - 生成品質問題を記録するMLflow traceをロードするクエリーを使用します。
- それぞれのレコードに対して、生成されたレスポンスを手動で検証し、収集されたコンテキストと正解レスポンスと比較します。
- 低品質の生成となっているクエリー間でのパターンや共通の問題を探します。以下のような例があります:
- 収集されたコンテキストにない情報を生成したり、矛盾する情報を出力する(ハルシネーション)
- 与えられた収集コンテキストに対して、ユーザークエリーに直接対応することに失敗する
- 過度に冗長で理解が難しく、論理的な一貫性のないレスポンスを生成する
- 特定した問題に基づき、可能性のある根本原因と対応する修正策についての仮説を立てる。ガイドに関しては、以下の"貧弱な生成品質の一般的な理由"をご覧ください。
- 修正案を実装、評価するために変更の実装と評価のステップに従います。
- これには、RAGチェーンの修正(プロンプトテンプレートの調整、別のLLMを試すなど)やデータパイプラインの修正(より多くのコンテキストを提供するためのチャンキング戦略の調整など)が含まれることがあります。
- 依然として収集品質が不十分である場合には、期待されるパフォーマンスが得られるまで、次のより有望な修正策を特定するまでステップ4-5を繰り返します。
- チェーン全体で対応すべき他の根本原因が他にないのかを特定するための根本原因分析を再実行します。
貧弱な生成品質の一般的な理由
潜在的なこれらの修正方法は、大きく分けて3つに分類されます:
変更の種類に応じて、変更の実装と評価の異なるステップに従うことになります。
重要
一般的には、あなたのアプリケーションのアウトプットの品質に対して試行錯誤を、プロンプトエンジニアリングを用いて行うことをお勧めします。
生成の問題 | デバッグのステップ | 修正案 |
---|---|---|
収集されるコンテキストにない情報を生成している(ハルシネーション) |
|
|
ユーザークエリーに直接対応することに失敗したり、過度に一般的なレスポンスを提供する |
|
|
理解が困難、あるいは論理的思考に欠ける生成をレスポンスを生成する |
|
|
生成されたレスポンスが期待されたフォーマットやスタイルではない |
|
- 目次
- 前のセクション: 収集品質のデバッグ
- 次のセクション: ステップ6: 繰り返しの実装 & 品質改善の評価