はじめに
RAGの精度向上はとても難しいです。これを解決するために、RAGの精度を評価する手法も大事になってきます。
しかし、テストケースの用意は難しく、どのような観点から評価すればいいのかも分かりにくいです。
そこで、RAGの精度を評価するツールをまとめてみました!
RAGAS
RAGASはExplodingGradients(現VibrantLabs、Y Combinator W24卒) が開発するオープンソースフレームワークで、GitHubスター数11,400以上を誇ります。
主要メトリクス
RAGASの核心は「RAG Triad」と呼ばれる3指標です。Faithfulness(忠実度)は回答がコンテキストに基づいているかを測定し、ハルシネーション検出に有効。Answer Relevance(回答関連性)は質問に対する回答の適切性を評価。Context Precision/RecallはRetrieval品質を定量します。
v0.4(2025年12月)ではエージェント評価(Tool Call Accuracy、Agent Goal Accuracy)やマルチモーダル評価にも対応し、RAGを超えた汎用LLM評価フレームワークへと進化しています。
| メトリクス | 説明 |
|---|---|
| Faithfulness | コンテキストへの忠実度 |
| Answer Relevance | 回答の関連性 |
| Context Precision | 検索精度(上位ランキング) |
| Context Recall | 検索網羅性 |
| Answer Correctness | 回答の正確性 |
メリット
- Reference-free評価: 多くのメトリクスでGround Truth(正解データ)不要
- 豊富な統合: LangChain、LlamaIndex、Langfuse、Datadogと連携
-
日本語対応:
adapt()関数でプロンプトを日本語に適応可能 - テストデータ合成: 知識グラフベースの高品質テストセット自動生成
- Apache 2.0ライセンス: 商用利用に制限なし
デメリット
- LLM APIコスト: 評価ごとに複数回のLLM呼び出しが必要(1サンプルあたり2-4回)
- 決定論性の欠如: LLMベースのため同一入力でもスコアが変動
- 日本語精度: 英語に比べ評価精度が低下する傾向(高性能LLM推奨)
- APIバージョン変更: v0.2以降の大幅なAPI刷新で既存コード移行が必要
LangSmith
LangSmithはLangChain社が提供する包括的LLMOpsプラットフォームです。毎月30,000人以上の新規ユーザーを獲得し、Klarna、Elastic、楽天などの大企業で本番運用されています。
機能の全体像
LangSmithはトレーシング、評価、プロンプト管理、デプロイを一元化します。
評価機能ではLLM-as-Judge、コードベース評価器、ヒューマンフィードバックを組み合わせ可能。2025年10月にはAgent Builder(ノーコードエージェント構築)がパブリックベータとなり、開発から本番までの全ライフサイクルをカバーsimasu。
料金体系
| プラン | 月額 | トレース/月 | 特徴 |
|---|---|---|---|
| Developer | 無料 | 5,000 | 個人開発者向け、1シート |
| Plus | $39/シート | 10,000 | チーム向け、最大10シート |
| Enterprise | カスタム | カスタム | SSO、SLA、セルフホスト |
超過トレースはBase Trace $0.50/1,000(14日保持)、Extended Trace $5.00/1,000(400日保持)。
メリット
- シームレス統合: LangChain/LangGraphと最も深い統合(同一チーム開発)
- 非侵入的設計: 障害時もアプリに影響なし
- エンタープライズ対応: SOC2 Type II、GDPR、HIPAA準拠
- セルフホスト可能: Enterpriseプランでオンプレミス展開
デメリット
- 無料枠の制限: 5,000トレース/月、14日保持は開発段階で不足する場合あり
- LlamaIndex統合の弱さ: 公式サポートなく手動設定が必要
- ベンダーロックイン: クローズドソースでデータ移行に標準フォーマットなし
- コスト増大リスク: 高トラフィックアプリでは費用が急増
DeepEval
DeepEvalはConfident AI(Y Combinator支援)が開発するオープンソースフレームワークで、GitHubスター数12,200以上、月間ダウンロード300万以上を達成。pytest統合が最大の特徴で、既存のテストワークフローに自然に組み込めます。
テストフレームワークとしての設計
from deepeval import assert_test
from deepeval.metrics import AnswerRelevancyMetric
from deepeval.test_case import LLMTestCase
def test_rag_response():
metric = AnswerRelevancyMetric(threshold=0.7)
test_case = LLMTestCase(
input="返品ポリシーは?",
actual_output="30日以内であれば全額返金いたします。",
retrieval_context=["全てのお客様は30日間の全額返金対象です。"]
)
assert_test(test_case, [metric])
料金(Confident AI商用版)
| Tier | 月額 | 特徴 |
|---|---|---|
| Free | 無料 | 基本機能、クラウド保存 |
| Starter | $29.99/ユーザー | フルテストスイート、3ヶ月保持 |
| Premium | $79.99/ユーザー | 高度なオブザーバビリティ |
| Enterprise | 問い合わせ | HIPAA/SOC2、オンプレミス |
メリット
- pytest統合: 既存CI/CDパイプラインへの自然な統合
- 研究裏付け: G-Eval、RAGASなど最新研究を実装
- 任意LLM対応: OpenAI以外にOllama等ローカルLLMも利用可能
- Accenture、トヨタ等の採用実績
デメリット
- LLM APIコスト: LLM-as-judgeメトリクスは追加コスト発生
-
非同期実行の問題:
run_async=Trueで稀にテスト未完了の報告あり - 学習曲線: 多機能ゆえに全体習得に時間がかかる
TruLens
TruLensはTruEra社が開発し、2024年5月にSnowflakeが買収。MITライセンスのオープンソースとして維持されつつ、Snowflakeデータクラウドとの統合が強化されている。
RAG Triad
TruLensはGroundedness(根拠性)、Answer Relevance(回答関連性)、Context Relevance(コンテキスト関連性)の3指標でハルシネーション検出を体系化。各フィードバック関数はChain-of-Thought(CoT)対応で、判定理由も取得可能。
from trulens.providers.openai import OpenAI
from trulens.core import Feedback
provider = OpenAI()
f_groundedness = Feedback(provider.groundedness_measure_with_cot_reasons)
ダッシュボード
Streamlitベースのローカルダッシュボードを提供。Leaderboardでアプリバージョン別の比較、Evaluationsで個別トレースの詳細検査が可能。Google Colabにも対応。
LLMプロバイダー対応
| プロバイダー | パッケージ |
|---|---|
| OpenAI | trulens-providers-openai |
| Azure OpenAI | trulens-providers-openai |
| Snowflake Cortex | trulens-providers-cortex |
| Amazon Bedrock | trulens-providers-bedrock |
| Google Gemini | trulens-providers-google |
| HuggingFace | trulens-providers-huggingface |
メリット
- Snowflake統合: エンタープライズデータ基盤との連携
- モジュラーアーキテクチャ: 必要な機能のみインストール可能
- MITライセンス: 最も緩やかなOSSライセンス
- LangChain/LlamaIndex両対応: フレームワーク非依存
デメリット
- 評価コスト: RAG Triadで各クエリに3回以上のLLM呼び出し
- 評価時間: ローカルLLM使用時は数分/クエリ
- ドキュメント成熟度: 高度な設定のドキュメントが不足
- Snowflake Connector制約: Python 3.13未対応
Arize Phoenix
Arize PhoenixはArize AIが開発するオープンソースの観測性プラットフォームで、GitHubスター数約8,000。OpenTelemetry(OTel)準拠によりベンダーロックインを回避し、データポータビリティを確保している点が最大の特徴です。
観測性機能
- エージェントトレーシンググラフ: マルチエージェントシステムの可視化
- スパン分析: LLM、Retriever、Tool、Agent各スパンの詳細分析
- トークン・コスト追跡: 自動計算によるコスト最適化支援
- OTLP対応: 業界標準プロトコルで既存観測スタックと統合
評価機能
LLM-as-a-judgeによる自動評価を提供。Hallucination、Q&A Correctness、RAG Relevance、Toxicity、Code Generation等の組み込みテンプレートを用意し、カスタムテンプレートも定義可能。
OSS vs 商用版
| 項目 | Phoenix OSS | AX Pro | AX Enterprise |
|---|---|---|---|
| 費用 | 無料 | $50/月 | カスタム |
| スパン/月 | 無制限 | 100,000 | 数十億以上 |
| オンライン評価 | ❌ | ✅ | ✅ |
| SOC2/HIPAA | ❌ | ❌ | ✅ |
メリット
- 完全オープンソース: 機能制限なし、セルフホスト無料
- フレームワーク非依存: LangChain、LlamaIndex、DSPy等に対応
- 言語非依存: Python、TypeScript、Java対応
- 公式日本語ドキュメント: 主要ページの日本語版あり
デメリット
- オンライン評価はOSS版で未サポート: リアルタイム評価にはArize AXが必要
- Elastic License 2.0: 完全なOSSライセンスではない(競合サービス提供に制限)
- セルフホスト運用負荷: インフラ管理は自己責任
比較表
| 比較軸 | RAGAS | LangSmith | DeepEval | TruLens | Arize Phoenix |
|---|---|---|---|---|---|
| ライセンス | Apache 2.0 | 商用 | Apache 2.0 | MIT | Elastic 2.0 |
| GitHubスター | 11,400+ | N/A | 12,200+ | 2,800+ | 8,000+ |
| 主要用途 | 評価メトリクス | LLMOps全般 | テスト・CI/CD | 評価・実験管理 | 観測性・トレース |
| 評価メトリクス数 | 20+ | カスタム中心 | 50+ | 10+ | 10+ |
| LangChain統合 | ◎ | ◎◎ | ○ | ◎ | ◎ |
| LlamaIndex統合 | ◎ | △ | ◎ | ◎ | ◎ |
| pytest統合 | △ | △ | ◎◎ | △ | △ |
| ダッシュボード | なし | ◎ | Confident AI | ○ | ◎ |
| 日本語対応 | adapt()関数 | なし | 多言語LLM依存 | 多言語LLM依存 | 公式ドキュメントあり |
| 無料枠 | 完全無料 | 5,000トレース/月 | 完全無料 | 完全無料 | 完全無料 |
| セルフホスト | N/A | Enterprise限定 | N/A | 可能 | 可能 |
| 本番運用 | ○ | ◎ | ○ | ○ | ◎ |