2025年5月13日から5月14日にかけてサンフランシスコで開催されたAIエージェント開発のテックイベント「LangChain Interrupt」。Day 2のプロダクトキーノートに続き、AIエージェント開発における最重要課題の一つである「評価 (Evaluations、以下Evals)」に焦点を当てたセッションが行われました。
スピーカーは再びLangChainのCEOであるHarrison Chase氏が務め、なぜEvalsが重要なのか、そしてLangChainがこの分野でどのような取り組みを進めているのかについて、解説を行いました。
品質こそが最大のブロッカー
Harrison Chase氏は、約6ヶ月前に実施したAIエージェントビルダー向けの調査結果から話を始めました。その調査で、より多くのAIエージェントを本番環境に導入する上での最大のブロッカーとして、圧倒的多数が挙げたのが「品質」でした。先の講演で品質、レイテンシ、コストのトレードオフについて触れられたことにも言及しつつ、依然として品質が最大の課題であると強調しました。
「プロトタイプから本番環境へのギャップを埋め、その品質を向上させるために、私たちが人々が採用しているのを見てきたテクニックの1つが、評価駆動開発(Eval Driven Development)です。」 (in order to kind of like bridge that gap from prototype to production and increase that quality, one of the techniques that we've seen people adopt is eval driven development.)
Evalsは継続的な道のり:3つのタイプ
Harrison氏は、Evalsを一過性のタスクではなく「継続的な道のり (continuous journey)」と捉えることの重要性を説き、主に3つのタイプのEvalsが存在すると説明しました。
オフライン評価 (Offline Evals) 本番環境に移行する前に、事前に準備したデータセットに対してアプリケーションを実行し、パフォーマンスを測定・スコアリングするものです。これにより、モデルやプロンプトの変更がパフォーマンスに与える影響を経時的に追跡できます。これは最も一般的に想起されるEvalsの形態でしょう。
オンライン評価 (Online Evals) 本番環境で稼働中のアプリケーションに対し、実際に入力されるデータの一部をサンプリングしてスコアリングします。これにより、静的なデータセットではなく、実際のユーザーインタラクションに基づいたリアルタイムなパフォーマンス監視が可能になります。
インザループ評価 (In-the-loop Evals) これはエージェントが実行中に発生するEvalsです。Harrison氏は、ReplitのMichele氏がブラウザ操作のテストやコード実行テストに基づいてEvalsを組み込んでいた事例を紹介しました。エージェントの応答前に評価を行い、誤りを検知した場合には自己修正を促すことができます。応答品質の向上や、不適切な応答のブロックが期待できますが、欠点として時間とコストの増加が挙げられます。ミスへの許容度が低い場合や、レイテンシが問題にならないような長時間実行されるエージェントに適していると考えられます。Harrison氏は、長時間実行エージェントの増加に伴い、このタイプのEvalsの重要性が増すと予測しています。
Evalsの2つの主要コンポーネント:データとEvaluator
どのタイプのEvalsを実施するにしても、中心となるのは「データ (Data)」と「Evaluator(評価者)」の2つのコンポーネントです。
データ (Data)
オフライン評価では事前に構築したデータセット、オンライン評価やインザループ評価では本番データが対象となります。Harrison氏は、既存のアカデミックなデータセットは実際のユースケースやドメインを反映していないことが多いと指摘。
「どんなアプリケーション開発者でも、自分のユースケースに特化したデータセットやevaluatorを構築しやすくすることが重要」 (it's really about making it easy for any application developer to build a data set or build evaluators that are specific for their use case.) と述べ、LangChainがこの課題にどう取り組んでいるかを説明しました。
LangSmithのトレーシング機能は、オンラインEvalsの基盤となるだけでなく、トレース結果を簡単にデータセットに追加できる機能を提供し、オフライン評価用のグラウンドトゥルースデータセット構築を支援します。「優れたEvalsは優れたオブザーバビリティから始まる (great evals start with great observability)」という言葉は、LangSmithにおける両者の密接な関係性を示しています。
Evaluator(評価者)
評価基準や評価方法を定義するものです。グラウンドトゥルース(正解データ)が存在する場合は「リファレンス評価 (Reference Evals)」が可能ですが、オンラインやインザループのように正解が未知の場合は「リファレンスフリー評価 (Reference-free Evals)」が用いられます。
Evaluatorの種類
Harrison氏は、主に3種類のEvaluatorについて解説しました。
コードによる評価: 完全一致、正規表現、JSON形式の妥当性チェックなど、プログラムコードで評価を行います。決定的で安価かつ高速ですが、自然言語応答のニュアンスを捉えるには限界があります。
LLM as a Judge: 大規模言語モデル(LLM)自身を評価者として利用する手法です。複雑な評価基準に対応できる可能性がある一方で、評価用LLMのプロンプトエンジニアリングが必要になるなど、導入の難しさも伴います。
人間によるアノテーション: ユーザーからのフィードバック(サムズアップ/ダウンなど)を収集したり、専門のアノテーターがLangSmithのアノテーションキューを通じて評価を行います。
LangChainのオープンソースEvaluatorとカスタマイズ性
LangChainは、これらのEvaluatorを容易に利用できるよう、過去1ヶ月ほどでオープンソースのEvaluator群を構築してきたと発表しました。これには、コード評価(Python/TypeScriptのリント)、RAG、情報抽出、ツール呼び出しといった一般的なユースケース向けの既製Evaluatorが含まれます。
さらに、特定のユースケースやドメインに合わせてカスタマイズ可能なEvalsもOpenEvalsパッケージ内で提供しています。
- LLM as a Judge: より簡単に導入できるよう工夫されています。
- エージェントの軌跡 (Agent Trajectories): エージェントの一連の思考や行動のログ(軌跡)を入力とし、特定の観点から評価をカスタマイズできます。
- チャットシミュレーション (新発表): 多くのアプリケーションがチャットボット形式であることから、単一のインタラクションだけでなく、連続した会話の中でのパフォーマンスを評価するためのユーティリティです。これらもOpenEvalsパッケージで提供されます。
LLM as a Judgeの課題とLangChainのソリューション
LLM as a Judgeは強力な手法ですが、そのセットアップや信頼性の確保は容易ではありません。Harrison氏はこの課題に対処するため、プライベートプレビューとして以下の機能をLangSmithに導入することを発表しました。
- AlignEvalの統合: Eugen Yan氏の研究「AlignEval」や、Shreya氏の論文「Who validates the validators(誰がバリデーターを検証するのか)」に影響を受けた取り組み。LLM as a Judgeのセットアップを容易にし、信頼性を高めることを目指します。
- Evalキャリブレーション: 評価者の評価(EvalのEval)を行う機能。LLMベースのEvaluatorが期待通りに機能しているかをブラインドでスコアリングし、そのパフォーマンスを経時的に比較・監視します。評価結果にドリフト(ズレ)が生じた場合は、AlignEvalのプロセスに戻って調整を行います。
「これらはプライベートプレビューです。これをローンチし、これらのLLM as a judge evaluatorを構築するための適切なUXを見つけ出すことに取り組むことに非常に興奮しています。」 (this is in private preview. We're really excited to launch it and work in figuring out what the right UX for building these LLM as a judge. Evaluators are)
まとめ:Evalsは継続的な道のり
最後にHarrison氏は、「Evalsは継続的な道のりである (evals is a continuous journey)」というメッセージを再度強調しました。オフライン評価から始め、オンライン評価へ、そして将来的にはより多くのエージェントがインザループ評価を組み込むようになるだろうと展望を語りました。
このセッションは、信頼性の高いAIエージェントを構築する上で、Evalsがいかに不可欠であり、LangChainがその実践をどのように支援しようとしているかを具体的に示すものでした。