vectara/open-rag-eval
RAG evaluation without the need for "golden answers"
Open RAG Eval – 速報
何であるか – 検索拡張生成(RAG)パイプラインを評価するためのオープンソースPythonツールキット。TREC-RAGベンチマーク、UMBRELA、AutoNuggetizer、事実的一貫性スコアを含む一連の事前構築済みメトリクスをバンドルし、Vectara、LlamaIndex、LangChainなどの人気RAGフレームワークへの接続子も提供しています。
なぜ重要か – RAGの品質を測定するのは難しいです。なぜなら、取得したチャンクの関連性と生成された回答の事実的一貫性の両方を評価する必要があるからです。open-rag-evalを使えば、「ゴールデン」チャンクや回答を手作業で作成する必要がありません。多くのメトリクスは即座に利用可能で、独自のメトリクスも簡単に統合できます。
主要な構成要素
- メトリクス – UMBRELAとAutoNuggetizer(ゴールデンデータ不要)、TREC-RAGメトリクス、オプションのゴールデン回答メトリクス、オープンソースのHHEMモデルまたはVectaraの商用APIによる幻覚検出。
- 接続子 – Vectara、LlamaIndex、LangChain用の即時アダプタ。事前に生成された回答ファイルも読み込める。
- CLIとライブラリ –
pip install open-rag-evalでインストール可能。open-rag-evalコマンドで評価実行、合成クエリ生成、結果のプロットが可能。 - 可視化 – エクスポートされたJSON/CSVは、https://openevaluation.aiのWebビューア、ローカルのStreamlitアプリ、またはシンプルなCLIプロットで確認可能。
一般的なワークフロー
- クエリリストの作成(CSV)または、コーパスから合成クエリを生成。
- YAML設定ファイルの作成。クエリへのパス、接続子(例:Vectara)の選択、実行する評価者を選択。
- 実行
open-rag-eval eval --config <your-config>.yaml。 - 各クエリのスコアと可視化を確認して、弱い部分(関連性低、幻覚率高)を特定。
誰が使うべきか – RAGベースのチャットや検索システムを開発するデータサイエンティスト、MLエンジニア、またはプロダクトチームで、再現性と拡張性のあるベンチマークとデバッグ手法が必要な人。
READMEからの主な情報
- ライセンス: Apache 2.0
- Pythonバージョン: ≥ 3.9
- LLMジャッジ: デフォルトはOpenAI(
gpt-4o-mini)だが、交換可能。 - 事実的一貫性のバックエンド: オープンソースのHHEMモデル(
vectara/hallucination_evaluation_model)またはVectara API。 - インストール方法:
pip install open-rag-eval(CLI提供)またはソースからpip install -e .。 - 設定ファイル: 例は
config_examples/ディレクトリ内(例:eval_config_vectara.yaml)。 - 可視化オプション: Webビューア(JSON)、CLIプロット、
open_rag_eval/viz/内のStreamlitアプリ。
TL;DR
open-rag-eval = 即時利用可能なPythonライブラリ + CLI。RAGシステムが関連するチャンクを検索し、事実的に正しい回答を生成する能力を測定するための、組み込みメトリクス、接続子、合成クエリ生成、複数の可視化方法を備えたツール。
関連
- プロジェクト
- プロジェクト
- プロジェクト
- プロジェクト