LangChain は本日、「評価エンジニアリングスキル」(Eval Engineering Skill)をリリースしました。これは、リポジトリのコンテキストとエージェントのトレースを利用して評価を構築するコーディングエージェント向けのスキルです。
このスキルは、まずエージェントの構造(プロンプト、モデル、ツール、スキル、フックなど)を検査し、トレースが利用可能な場合はそこからパターンを抽出して、テストすべき能力を提案します。ユーザーとのインタビュー形式でフィードバックを得ながら、各評価を段階的に承認します。最終出力は、Harbor 形式の実行可能な評価です。
環境とタスクの構築では、スキルはリポジトリを読み取り、エージェントの表面をマッピングします。また、それらの動作を支えるデータやサービス(API 呼び出しなど)も特定します。ユーザーは langsmith-cli などのツールを使ってトレースをスキルに指定でき、トレースはツールの実際の動作(引数、結果、エラー)を示します。これらの観察された契約により、スキルは制御された環境で関連する本番動作を再現できます。
リポジトリとトレースのクロールにより、スキルはエージェントにとって重要な能力を把握し、評価タスクを提案します。LangChain は、ユーザーへのインタビューが一度きりの生成よりもはるかに高い評価受容率をもたらすことを発見しました。ユーザーは提案された評価の方向性から選択し、どのツールや依存関係を実際に実行し、どれをシミュレートするかについてガイダンスを提供します。例えば、コストがかかるツール呼び出しやプロダクションへの書き込みは、評価呼び出しのたびにシミュレートできます。
LangChain は、ドキュメント Q&A エージェント chat-langchain でこのフローをテストしました。このエージェントには、プロダクションエージェントを模した検索ツールを通じて公開されるデータコーパスを含む環境が必要でした。タスクには、実際のトレースから抽出された現実的なドキュメント質問と、標準回答文字列と引用ドキュメントを使用して回答をチェックする検証器が含まれていました。
評価設計は反復的です。エージェントが一度で評価を生成できることもありますが、最良の評価はユーザーがフィードバックを提供し、どの能力を測定する価値があるかを指定することから得られました。コーディングエージェントとスキルは、優れた評価を構築するためのドメイン知識がエンコードされ、ユーザーが時間をかけて反復できる自然なインターフェースを提供します。
例えば、検証器を構築する際、最初のバージョンが最終版になることはほとんどありません。改善の有用な方法は、評価を実行し、結果の両面(エージェントの軌跡(メッセージ、ツール呼び出し、アクション)と検証器の軌跡(証拠、推論、最終スコア))を検査することでした。これにより、タスクや検証器の設計が本当に測定したいものを測定しているか、あるいは報酬ハッキング(エージェントが近道を取ること)が可能かどうかが明らかになります。そのような近道には、無関係なソースを過剰に引用して満点を得る、実際には行っていないアクションを主張する、露出した回答資料を悪用する、タスクを完了せずに代理指標を満たすなどがあります。エージェントが問題を解決する軌跡を観察すると、これらの失敗の原因が明らかになることがよくあります。その後、タスク、環境、検証器を修正して再実行できます。
評価は Harbor タスク形式で構築されます。コンポーネントは、指示(タスク開始時にエージェントに与えられるメッセージ)、環境(Dockerfile で提供されるセットアップ)、検証器(エージェントがタスクを正しく完了したかをスコアリング)の 3 つです。これらは Harbor タスクディレクトリ構造(evals/<task>/task.toml、instruction.md、environment/、tests/)として組み立てられます。Harbor は環境内でエージェントを実行し、その軌跡、アーティファクト、報酬、エラーを記録します。同じ評価を異なるモデル、プロンプト、ツール、エージェントバージョンに対して実行できます。
継続的学習は、プロダクションデータを使用してエージェントを時間とともに改善する評価を構築する継続的なデータマイニング問題と見なすことができます。チームはトレースをマイニングして、繰り返し発生するユーザーリクエスト、エラー、失敗したツール呼び出し、不適切な状態変化を発見し、それらを評価に変換して将来同じ動作を測定・防止します。評価はエージェントのトレーニングデータです。チームはプロンプトやツールの変更、ファインチューニングなどのハーネスエンジニアリングを通じてエージェントの動作を評価に適合させることができます。評価は、変更が意図した能力を改善したかどうかを判断するための固定目標を提供します。
コンテナ化された評価はこのプロセスを高速化します。エージェント構成が変更されてもタスクと環境は安定しているため、ビルダーはモデル、ツール、プロンプト、または完全なエージェントバージョンを交換し、結果を直接比較できます。複数の構成を並行して実行できます。再現可能な環境はそのシグナルにとって重要です。評価がプロダクションの関連ツール、データ、権限、状態、障害モードをミラーリングする場合、ビルダーはエージェントの動作を代表する安定したテストベッドを得られ、変化するプロダクションシステムに依存したりプロダクション状態に書き込んだりせずに迅速に実験できます。
結果として得られるループは次のとおりです。トレースのマイニング → 障害の特定 → 評価の構築 → エージェントの改善 → 再実行。
評価エンジニアリングスキルは、langchain-ai/langchain-skills リポジトリで利用可能です。Codex または Claude Code にスキルをインストールし、評価したいエージェントを含むリポジトリを開き、必要に応じてトレースのセットをスキルに指定し、簡単なプロンプトから始めてください。「評価エンジニアリングスキルを使用して、私と一緒に評価を作成してください。まずエージェントを検査し、テストする価値のあるいくつかの能力を提案し、1つを推奨し、私が選択するのを待ってください。」結果は evals/ 下の Harbor タスク、実際のターゲット実行、および検証器が意図した動作を正しく測定したかどうかのレビューです。
LangChain は、このスキルを拡張し、評価を自動的に構築してエージェントを自律的に適合させるツールを構築することを楽しみにしています。