コンテンツにスキップ

EncouRAGe - ローカルRAG評価チートシート

EncouRAGe - ローカルRAG評価チートシート

EncouRAGeは検索拡張生成 (RAG) パイプラインを評価するためのオープンソースフレームワークで、ローカルで高速かつ信頼性高く実行することに重点を置いています。多くのRAG評価器がホストされたジャッジモデルを呼び出す場合、EncouRAGeは自分のハードウェアで検索および生成メトリクスを計算するように設計されており、評価データはプライベートなままで、結果は再現可能です。2026年のパターンに適合し、RAG品質は測定可能なエンジニアリング特性として扱われます。

評価フレームワークは急速に進化しています。以下のコマンドをワークフローの形状として扱い、正確なフラグについては現在のドキュメントを確認してください。

インストール

方法コマンド
pippip install encourage
ソースからリポジトリを git clone して pip install -e .
ローカルジャッジモデルローカルランタイム (例: Ollama/vLLM) 経由でモデルをプル
確認python -c "import encourage; print('ok')"

なぜローカル評価か

メリット重要な理由
プライバシードキュメント/クエリがマシンを離れない
再現性同じモデル + シード → 同じスコア
コストAPI呼び出しごとの評価請求なし
スピードレート制限なしでローカルでバッチ処理

測定対象

RAG評価はパイプラインの2つの半分に分かれます。

半分メトリクス
検索コンテキスト精度、コンテキスト想起、ヒット率、MRR/NDCG
生成忠実性 (グラウンディング)、回答関連性、正確性
エンドツーエンド最終回答が正しくサポートされているか

コアワークフロー

# 概念的なフロー:データセットを集約、RAGを実行、スコア
import encourage

dataset = encourage.load_dataset("eval_questions.jsonl")  # question, ground_truth, contexts

results = encourage.evaluate(
    dataset=dataset,
    metrics=["faithfulness", "answer_relevance",
             "context_precision", "context_recall"],
    judge_model="local/llama-3.1-8b-instruct",   # ローカルで実行
)

print(results.summary())     # メトリクスごとのスコア
results.to_json("eval.json")
ステップ目的
Dataset質問 + (オプション) グラウンドトルース + 検索されたコンテキスト
Metricsスコアするretrieval/生成次元
Judge modelLLM-as-judge メトリクスに使用されるローカルLLM
Results集計 + 例ごとのスコア、エクスポート可能

評価データセット構築

フィールド意味
questionユーザークエリ
contextsリトリバーが返したチャンク
answerパイプラインの生成応答
ground_truthリファレンス回答 (正確性/想起用)

本番トレースから実際の質問を収集して、評価を代表的にします。

結果の解釈

症状可能性が高い原因
低いコンテキスト想起リトリバーが関連チャンクを見逃す (チャンキング/埋め込み)
低いコンテキスト精度無関係なコンテキストが多く取得される (リランキングを追加)
低い忠実性モデルがコンテキストを超えてハルシネート
低い回答関連性回答がクエリから逸脱 (プロンプト/クエリ問題)

CI に組み込む

# RAG変更を評価スコアでゲート
python run_eval.py --dataset eval.jsonl --min-faithfulness 0.85 \
  --min-context-recall 0.8 || exit 1

すべてのretrieval/プロンプト/モデル変更で同じeval セットを実行し、出荷前に回帰を検出します。

EncouRAGeと他のRAG評価器

側面EncouRAGeRAGASTruLensDeepEval
重点ローカル、高速、再現可能リファレンスフリーRAGメトリクスモニタリング + OTelトレーシングUnit-testマインドセット、CI
ジャッジローカルモデル設定可能設定可能設定可能
最適用途プライベート、オンプレミス評価クイックRAGスコアリング本番モニタリングPytest スタイルのCIゲート

RAGASTruLensDeepEvalと概念的にペア — ローカルプライバシー、クイックメトリクス、モニタリング、またはCIゲートが必要かどうかで選択。

リソース