LangChain⁠AIエージェントの評価を対話形式で構築する「Eval Engineering Skill」公開

LangChainは2026年7月22日、AIエージェント向けの評価をコーディングエージェントと対話しながら構築するEval Engineering Skillを公開した。評価対象となるエージェントのリポジトリを調べ、必要に応じて実行トレースも参照し、評価タスクの設計から実行、結果の監査までを支援する。

導入して評価を始める

評価一式を一度の指示で自動生成するのではなく、何を評価するか、どの実行環境を使うかをユーザーと段階的に決めていく。完成した評価は、隔離環境でAIエージェントの評価を実行するオープンソースフレームワークHarborのタスクとして保存される。

公開されたスキルは単独で導入でき、LangChainのフレームワークやライブラリには依存しない。評価したいエージェントを調べ、評価項目の候補を提案するところまではHarborを使わずに進められるが、完成した評価の実行・監査にはHarborが必要になる。

Eval Engineering SkillとHarborは、次のコマンドで導入できる。

npx skills add langchain-ai/langchain-skills --skill eval-engineering --yes
uv tool install harbor

# Ubuntu(WSL2を含む)でDockerが未導入の場合(公式リポジトリ設定後)
sudo apt install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin

導入後は、評価したいエージェントのリポジトリをClaude CodeやCodex CLIで開く。実行トレースも評価に使う場合は、トレースを保存したローカルファイルの場所や、取得元となるサービスを依頼文で指定する。LangChainのVivek Trivedy氏(@Vtrivedy10)が挙げた最初の依頼文を日本語にすると、次のようになる。

Eval Engineering Skillを使って、このエージェントの評価を一緒に作成してください。
まずエージェントを調査し、評価すべき能力をいくつか提案してください。
推奨案も示し、私が選ぶまで待ってください。

リポジトリとトレースから評価項目を選ぶ

この依頼を受けたコーディングエージェントは、スキルの手順に沿ってリポジトリに含まれる設定や実装を調べ、カスタムインストラクションやプロンプト、利用するモデル、ツール、スキル、フック、MCPサーバーなど、エージェントの動作を決める要素を整理する。テストや既知の不具合も、評価項目の候補を考える手掛かりにする。

リポジトリの調査は読み取り専用で進め、ユーザーが評価の実行方式と環境を承認するまでは、対象エージェントや関連サービスを起動しない。トレースを使う場合も、参照するのはユーザーが指定した記録に限られる。

実行トレースには、ユーザーの依頼、エージェントがツールに渡した引数、その実行結果やエラーなどが記録されている。こうした記録を基に、本番に近い評価シナリオを設計する。ただし、記録された回答をそのまま正解とはせず、別に設けた基準で成否を判定できる評価にする。

調査後は、評価項目を2~3つ提案し、それぞれについて依頼の例、確認する挙動、必要なデータや環境を示す。ユーザーはここで項目を選び、外部サービスを実際に使うかシミュレーションで再現するか、何を合格とするかを対話で詰めていく。

Harborタスクを構築⁠実行

評価項目が決まり、ユーザーが評価の実行方式と環境を承認すると、コーディングエージェントはその項目ごとに1つのHarborタスクを作成する。生成されるタスクは次の構造になる。

evals/<task-id>/
├── task.toml
├── instruction.md
├── environment/
└── tests/

評価では実際のエージェントを動かすのが基本で、隔離環境で実行できない場合に限って挙動を再構成する。外部サービスやデータも、用途に応じて実際のサービスへの接続、あらかじめ内容を固定したデータ、シミュレーションを使い分け、本番環境には書き込まない。

依頼、環境、Verifier(検証処理)を分け、正解や判定基準は評価対象のエージェントから見えないようにする。Verifierは、回答の意味や根拠を評価する場合にLLMを使い、テストの成否、ファイルの有無や状態変更などの客観的な事実にはコードによるチェックを使う。実行前には、明らかに正しい結果は合格、もっともらしい誤答は不合格と判定されるかも確かめる。

Verifierの動作確認まで終えると、コーディングエージェントはHarborで評価を実行する。HarborはDockerまたは対応するクラウド環境上で、指定したエージェントとモデルの組み合わせを使ってタスクを実行し、その結果を採点する。評価対象にはCodex CLI、Claude Code、OpenHandsなどを指定できる。コマンドの基本形式は次のとおり。

harbor run -p "evals/<task-id>" -a "<agent>" -m "<model>"

評価対象のエージェントやVerifierが利用するLLMへの接続にAPIキーを使う場合は、そのモデル提供元のAPI利用料が別途かかる。

結果はデフォルトでjobs/以下に保存される。続いて、そこに記録された回答やツール呼び出し、状態変化に加え、Verifierの判定根拠、スコア、エラーを調べ、エージェントが評価項目で求める動作を実際に行ったか、Verifierがその動作を正しく採点したかをユーザーと確認する。評価環境から答えが漏れていたり、Verifierが別の項目を評価していたりすれば、評価タスクや環境、Verifierを修正して再実行する。

評価対象のエージェントに問題があれば、開発者がモデル、プロンプト、ツールなどを調整し、同じ評価を再実行して改善の有無を確かめることになる。

実運用の失敗を評価に変える

LangChainはこの手法を、ドキュメント質問応答エージェント「chat-langchain」で試した。実運用の検索ツールを再現し、文書データを検索できる評価環境を作った。トレースから得た質問を評価タスクに採用し、正解として用意した回答文と引用すべき文書で結果を検証した。

LangChainによると、エージェントとVerifierの両方の実行記録を調べることで、評価設計のずれや不適切な近道を発見できたという。その例として、無関係な出典を大量に付ける、未実行の操作を実行済みと主張する、見えてはいけない正解情報を使うといった挙動を挙げている。同社はエージェントの改善を継続的なデータマイニングとして捉え、実運用で繰り返し生じる依頼や失敗を評価へ変換し、同じ問題を継続的に測定して再発を防ぐ考え方を示している。

おすすめ記事

記事・ニュース一覧