AIエージェントの評価はどう設計するか?ステップ単位での検証手法
最終出力だけの評価では改善できない
AIエージェントの評価を「最終回答が正しいかどうか」だけで行うと、改善の打ち手が見えなくなります。これは現場で何度も見てきたパターンです。
主張は明確です。
エージェントは“プロセスの集合体”であり、最終出力のみでは品質を管理できません。
理由は単純で、エージェントは①状態認識、②ツール選択、③情報取得、④推論、⑤出力生成という複数ステップで構成されているからです。どこで失敗したのかを分解しなければ、改善は偶然頼みになります。
例えば、社内文書検索エージェントで誤回答が出た場合、原因は少なくとも三つ考えられます。
・そもそも検索クエリ生成が不適切
・適切なツールを選択できていない
・取得文書は正しいが推論で誤っている
最終回答だけを〇×で評価すると、この差が見えません。
示唆は明確です。
評価は「出力」ではなく「状態遷移単位」で設計すべきです。
ステップ単位ログが改善余地を可視化する
エージェントを改善可能なシステムにするには、全ステップのログ取得が前提です。ここを軽視すると、検証が感覚論になります。
最低限必要なのは以下です。
・各ステップのプロンプト
・選択されたツール名
・ツール呼び出しパラメータ
・ツールの返却値
・最終応答
これを時系列で保存します。
例えばツール選択精度を測る場合、正解ツールを事前定義したテストケースを用意し、「正しいツールが選ばれた割合」を算出します。すると、回答精度は低いがツール選択は高精度、といった分解が可能になります。
実際の案件では、回答精度は70%でも、ツール選択精度は95%というケースがありました。問題は検索後の要約部分でした。ログがなければ、検索基盤を疑い続けていたでしょう。
示唆として、評価軸は機能単位で独立させることが重要です。
成功率は分解して見る
評価指標は単一では不十分です。私は最低でも以下の四つを見ます。
・タスク成功率
・平均ステップ数
・平均トークン消費量
・平均コスト
成功率だけを見ると改善方向を誤ります。この局面は特に誤解が多いです。
例えば成功率を上げるためにステップ数が倍増し、コストが3倍になるケースがあります。業務として成立しません。
逆に、成功率は同等でも平均ステップ数が減れば、安定性と説明可能性は向上します。状態遷移が単純なほど、再現性は高まるからです。
評価は多次元で設計し、トレードオフを明示的に管理する必要があります。
シナリオ固定テストが再現性を担保する
エージェント評価で最も重要なのは、シナリオ固定テストです。
ランダムな問い合わせを投げ続けても、再現性のある改善にはつながりません。
あらかじめ業務シナリオを10〜30件程度定義し、入力・期待結果・正解ツールを固定します。
このパターンは地味ですが、長期的に効きます。
金融領域の検証基盤では、板情報パターンを固定化したテスト群を用意しました。その結果、モデル変更時の挙動差分を定量的に比較できました。エージェントでも同じです。
ブラックボックスにしないこと。
状態遷移を観測可能にすること。
指標を分解すること。
これが、改善可能なエージェント設計の前提です。