Skip to main content
DeepEval は、pytest に組み込んで使えるオープンソースの LLM 評価フレームワークです。ジャッジ (judge) モデルの呼び出しを、通常のテストスイートや CI パイプラインの一部として実行できます。

前提条件

セットアップ

1

DeepEval のインストール

2

SambaCloud API キーのエクスポート

3

DeepEval のジャッジモデルを SambaCloud に接続

DeepEval の OpenAIModel クラスに、カスタムの base_url を指定して使用します。これは DeepEval が本来の OpenAI への接続に使うクラスそのもので、接続先を差し替えているだけです。
パラメータの完全な一覧は、DeepEval の OpenAI モデルリファレンス(英語)をご参照ください。旧称の GPTModel もまったく同じように動作しますが、DeepEval 4.x 時点で非推奨 (deprecated) となっており、現行の名前は OpenAIModel です。

使用例: テストケースの採点

test_sambanova.py
Output
reason の文字列はジャッジモデルが生成するものであり、スコアの値を言い換えるのではなく、そのスコアになった理由を説明します。

使用例: pytest の CI チェックとしての実行

通常のテストスイートの中でジャッジモデルの呼び出しを実行する、DeepEval の主なユースケースです。
test_ci_example.py
DeepEval 自身の CLI で実行します (公式ドキュメントに記載されているコマンドで、内部では pytest が動作します)。
Output (abridged)
DeepEval は pytest プラグインであるため、通常どおり pytest test_ci_example.py -v でも実行できます。ただし、公式ドキュメントに記載されているコマンドは deepeval test run で、上記のような詳細なテスト結果の表も表示されます。
評価をローカルで実行するにあたり、DeepEval 自体へのログインや API キーは不要です。deepeval login は任意で、Confident AI のクラウドダッシュボードを利用する場合にのみ必要です。本ページの例で必要な認証情報は、OpenAIModel に渡す SambaCloud の API キーのみです。

トラブルシューティング

代わりに OpenAIModel を使用してください。コンストラクターも base_url の指定方法も同一で、DeepEval 4.x 時点の現行の名前に変わっただけです。
実行前にキーをエクスポートしてください: export SAMBANOVA_API_KEY="your-key"。echo $SAMBANOVA_API_KEY で確認できます。
metric.reason を確認してください。これはジャッジモデル自身が生成する文字列で、何を減点したのかを具体的に説明しています。問題の原因がプロンプトにあるのか、テストケースにあるのか、ジャッジモデルの解釈にあるのかを切り分けるうえで、スコアの値だけを見るよりも役立ちます。

参考情報