confident-ai/deepeval
The LLM Evaluation Framework
DeepEvalとは
DeepEval は、大規模言語モデル (LLM) アプリケーションをテストおよびベンチマークするためのオープンソースのPythonフレームワークです。LLMを活用したエージェント、チャットボット、RAGパイプライン、または言語モデルを呼び出すあらゆるシステムのための pytest のようなものだと考えてください。テストケースを記述し、コードに対して実行し、増え続ける評価メトリクスのライブラリを使用して結果を自動的にスコアリングできます。
主な機能 (READMEより)
| 機能 | 内容 |
|---|---|
| すぐに使えるメトリクス | 30以上の組み込みメトリクスが、正確性、ハルシネーション、バイアス、有害性といった古典的な懸念事項に加え、エージェント固有のチェック(タスク完了、ツール使用の正確性、計画の遵守)やRAG固有のチェック(回答の関連性、忠実度、コンテキストの再現性)をカバーします。 |
| LLM-as-a-judge | G-Eval、JevEval、DAG などのメトリクスは、言語モデル(選択した任意のモデル)を評価者として使用し、個別のデータセットを必要とせずに人間のようなスコアリングを提供します。 |
| ローカル実行 | すべてのメトリクスはローカルホストのモデルや統計的手法で実行できるため、必要がない限りデータをサードパーティサービスに送信する必要はありません。 |
| コンポーネントレベルおよびエンドツーエンドテスト | チャットボット全体をブラックボックスとして評価したり、個々のステップ(LLM呼び出し、ツール使用、検索、サブエージェントの引き継ぎ)まで詳細に調査したりできます。 |
| カスタムメトリクスの作成 | 独自のスコアリング関数をプラグインでき、DeepEvalはそれを他のメトリクスと同様に扱います。 |
| 合成データセット生成 | フレームワークは、システムをストレステストするためのシングルターンまたはマルチターンの合成テストセットを生成できます。 |
| CI/CD対応 | シンプルなCLI (deepeval test run …) があらゆるCIパイプラインと統合され、結果をレポートとしてエクスポートできます。 |
| プロンプト最適化 | 組み込みのヘルパーが、メトリクスの結果に基づいてプロンプトの微調整を自動的に提案します。 |
| 10行未満でベンチマーク | ワンライナーのヘルパーにより、標準スイート(MMLU、HellaSwag、BIG-Bench Hardなど)で任意のLLMをベンチマークできます。 |
使用方法 (クイックスタート)
- インストール –
pip install -U deepeval(Python ≥ 3.9)。 - アカウント作成 (オプション) –
deepeval loginでクラウドレポート用のAPIキーを保存します。 - テストファイルの作成 –
input、actual_output、expected_output、およびオプションのretrieval_contextを含むLLMTestCaseを定義します。 - メトリクスの選択 – 正確性には
GEval、エージェントにはTaskCompletionMetric、RAGにはAnswerRelevancyなど。 - 実行 –
deepeval test run test_chatbot.pyでテストを実行し、メトリクスのしきい値に基づいて合格/不合格を表示します。 - トレース – 関数を
@observe()でデコレート(または提供されているOpenAI/AI-SDKラッパーを使用)して完全な意思決定軌跡をキャプチャし、軌跡対応メトリクスで評価します。
エコシステムの統合
DeepEvalは主要なLLMツールキット用のアダプターを提供しているため、コードをほとんど変更せずに評価を追加できます:
- LangChain / LangGraph – コールバックハンドラーが各チェーンステップをキャプチャします。
- CrewAI, Pydantic AI, Mastra – マルチエージェントワークフロー用のネイティブトレース。
- Anthropic, OpenAI, AWS AgentCore, Google ADK – ラッパーによりClaude、GPT-4、Amazonエージェントなどを評価可能。
- LlamaIndex – 検索拡張生成パイプラインの評価。
- AI SDK (TypeScript) – JavaScript/TSプロジェクト用のクライアントサイドトレース。
企業向けには、商用の Confident AI プラットフォームがUI、データセット管理、本番環境の可観測性を提供し、DeepEvalのメトリクス定義をそのまま再利用できます。
対象ユーザー
- LLM開発者:エージェント、チャットボット、RAGサービスを構築し、体系的な回帰テストが必要な方。
- MLエンジニア:モデルのアップグレードやプロンプトの変更を自動的にベンチマークしたい方。
- プロダクトチーム:リリース前に品質基準(バイアス、有害性、ハルシネーション)を強制する必要がある方。
- 研究者:LLM-as-a-judgeメトリクスを新しいタスクに適用するための再現可能な方法が必要な方。
詳細情報
- 完全なドキュメント:https://deepeval.com/docs/getting-started
- クイックスタート Colab ノートブック (ワンクリック):https://colab.research.google.com/drive/1PPxYEBa6eu__LquGoFFJZkhYgWVYE6kh
- コミュニティ:Discord、Reddit、および公開されているGitHubリポジトリ。
結論: DeepEvalは、LLM中心のソフトウェア専用に構築されたテストフレームワークであり、豊富で拡張可能なメトリクス、主要なLLMツールキットとの緊密な統合、およびConfident AIによるオプションのエンタープライズグレードの可観測性を提供します。LLMアプリケーションを、従来のコードベースと同じ厳密さで扱うことができます。
関連
- プロジェクト
- プロジェクト
- プロジェクト
- プロジェクト
- プロジェクト