トレーシングと可観測性
対象読者: AIエージェントの動作が想定と違うときに原因を追えるようにしたい方
前提知識: AIエージェントの評価 の基礎
AIエージェントは、同じ入力でも実行ごとに挙動が変わりえます。記録がなければ、想定と違う結果になった原因を特定できません。可観測性とは、動作の中身を後から追える状態にしておくことです。
何を記録するか
工程単位で記録します。最終出力だけでは、どこで問題が起きたか分かりません。
| 記録する項目 | 用途 |
|---|---|
| 各工程の入力 | 何を判断材料にしたか |
| 使用したツールと引数 | 選択が適切だったか |
| ツールの実行結果 | 期待どおりの情報が得られたか |
| 所要時間 | どこに時間がかかっているか |
| 失敗とリトライ | 同じ失敗を繰り返していないか |
| 承認の要求と結果 | 止めるべき操作を止められたか |
これらはフックで自動的に残せます。AIの指示に頼らないため、記録漏れが起きません。
粒度は「原因を切り分けられる単位」
細かすぎる記録は量が増えて読めなくなり、粗すぎると原因が特定できません。目安は、問題が起きたときにどの工程かを切り分けられる粒度です。
# 粗すぎる
タスク実行 → 失敗
# 適切
工程1 調査 → 成功(ツールA、2件取得)
工程2 生成 → 成功
工程3 検証 → 失敗(完了条件の2番目を満たさず)記録は評価の材料になる
蓄積した記録は、エージェント評価の入力になります。
- どの工程で失敗が集中しているか
- どのツールの選択を誤りやすいか
- どこで工程数が膨らんでいるか
改善対象を印象ではなく実データから選べるようになります。
扱いに注意する
記録には、ユーザーの入力やツールが取得したデータが含まれます。個人情報や機密情報が混ざる可能性があるため、扱いを決めておきます。
- 保存する項目と保存期間を決める
- アクセスできる範囲を限定する
- 機微な値はマスクして記録する
まとめ
- エージェントは実行ごとに挙動が変わりうるため、記録がないと原因を追えない
- 工程単位で、入力・ツール・結果・失敗・承認を記録する
- 粒度は「どの工程かを切り分けられる」程度にそろえる
- 記録には機微な情報が含まれうるため、保存範囲とアクセス権を決める
関連リンク
クイズ