offline evalと自動改善
ここからは、AI Agentの出力品質を評価し、その評価結果を改善につなげる方法を見ていきます。
前のカテゴリでは、lint、統合テスト、システムテストを通じて、アプリケーションが普通のソフトウェアとして壊れていないことを確認しました。型エラーがなく、画面が表示され、主要な処理がつながっていることは重要です。しかし、それだけではAI Agentが「良い仕事をしている」とは言えません。
AI Agentでは、最終回答が自然に見えても、根拠にない内容を含んでいたり、必要なtoolを使っていなかったり、人間に渡すべきケースを自動処理していたりすることがあります。逆に、最終回答だけを見ると悪く見えても、途中のtool callや検索結果を見ると、どこを直せばよいかが見えることもあります。
そのため、AI Agentの品質を見るときは、単に「回答が良いか悪いか」だけではなく、結果、過程、tool use、根拠、安全性、コストやレイテンシを分けて見ていく必要があります。このカテゴリでは、このような評価の仕組みをoffline evalsとして扱います。
このカテゴリで扱うこと
このカテゴリのゴールは、AI Agentを勘や印象だけで改善する状態から、評価結果を見ながら改善できる状態へ移ることです。
最初から完全な評価体系を作る必要はありません。むしろ、多くのプロジェクトでは、最初は何を良い出力と呼ぶべきかも曖昧です。まずは人手評価から始め、現場の判断をTraceやDatasetに残し、少しずつ評価項目を言語化します。そのうえで、自動評価できる部分をscorerにし、評価結果をもとにCoding Agentで改善を進めていきます。
流れとしては、次のようになります。
| ステップ | やること | このカテゴリで扱う章 |
|---|---|---|
| 1 | 評価は最初から完成させるものではなく、育てるものだと理解する | AI Agent評価の心得 |
| 2 | 何を評価するかをOutcome、Trajectory、Tool Useなどに分けて整理する | AI Agentの評価体系構築 |
| 3 | Dataset、scorer、evaluation、traceをつなげて評価を実行する | Weaveによる評価体系の構築 |
| 4 | 人手評価をTraceに残し、評価基準を育てる | 人手評価から自動評価・Weaveで人手評価を行う |
| 5 | 評価結果をCoding Agentに渡し、改善案と実装につなげる | 評価結果をもとにW&B SkillsとCoding AgentでAI Agentを改善 |
offline evalsと自動改善の関係
offline evalsは、本番投入前や改善サイクルの途中で、あらかじめ用意したDatasetと評価基準を使ってAI Agentを評価する仕組みです。
ここで重要なのは、offline evalsを「点数を出すだけの仕組み」として見ないことです。評価結果は、次の改善の入力になります。どのケースで失敗したのか、どの評価項目が低いのか、どのTraceに問題があるのかを見ていくことで、改善すべき場所が見えてきます。
人手評価で大きな方向性を見つけ、自動評価スコアで反復改善を回し、必要に応じてLLM as a Judgeで人間の判断に近い目安を作る。この流れができると、AI Agentの改善は「なんとなく良くなった」から「どの評価で良くなり、どの失敗が残っているのかを確認しながら進める」ものに変わります。
次の章では、まずAI Agent評価に取り組むときの基本的な考え方を見ていきます。