3ペイン・トレース評価 (eval_trace)
eval_trace 表示は、1つのエージェント・トレースを同期した3つのペイン(推論、関数呼び出し、最終回答)に分割し、評価者がエージェントの思考、実行、出力を一目で把握できるようにします。継続的評価のために設計されています。
eval_trace 表示は、単一のエージェント・トレースを同期した3つのペインに分割します。推論、関数呼び出し、最終回答です。 評価者はエージェントが何を考え、何を実行し、何を生み出したのかを並べて確認できます。これは新しいトレースが次々と届いて素早く判定しなければならない継続的評価に適しています。
インターリーブされたトレースを1列に積み上げる縦型のエージェント・トレース表示とは異なり、eval_trace は1つのトレースを3つの意味的構成要素に分解するため、スクロールせずにエージェントの振る舞いの構造が見えます。
推論、関数呼び出し、最終回答のペインに分割されたエージェント・トレース
クイックスタート
リポジトリのルートから付属の例を実行します。
python potato/flask_server.py start examples/agent-traces/continuous-eval/config.yaml -p 8000この例には、投入されたトレース・ファイルを取り込むためのディレクトリ監視版(config-watch.yaml)も同梱されています。
設定
instance_display:
layout:
direction: vertical # task header above the (internally horizontal) panes
gap: 12px
fields:
- key: task_description
type: text
label: "Task"
- key: trace # the field holding the agent trace
type: eval_trace
label: "Agent Trace"
display_options:
pane_labels: ["Reasoning", "Function Calls", "Final Answer"]
show_step_numbers: true
collapse_long_outputs: true
max_output_lines: 12
link_steps: trueオプション
| オプション | デフォルト | 説明 |
|---|---|---|
pane_labels | ["Reasoning", "Function Calls", "Final Answer"] | 3つのペインの見出し。 |
show_step_numbers | true | 推論カードと呼び出しカードに #N のステップ番号を表示します。 |
collapse_long_outputs | true | max_output_lines を超えるツール結果を展開可能なブロックに折りたたみます。 |
max_output_lines | 20 | 結果を折りたたむ行数のしきい値。 |
link_steps | true | ペイン横断のハイライト:カードをクリックすると、他のペインで関連付けられたカードがハイライトされます。 |
compact | false | パディングと間隔をより詰めます。 |
データ形式
eval_trace はエージェント・トレース表示と同じトレース形式を受け付けます。最も一般的なのは {speaker, text} のステップのリストです。
{
"id": "eval_001",
"task_description": "Find a vegan lasagna recipe.",
"trace": [
{"speaker": "Agent (Thought)", "text": "I'll search for a highly-rated recipe."},
{"speaker": "Agent (Action)", "text": "web_search(query='vegan lasagna')"},
{"speaker": "Environment", "text": "10 results found..."},
{"speaker": "Agent (Final Answer)", "text": "Here's a great recipe: ..."}
]
}thought/action/observation 形式と step_type/content 形式もサポートされています。
ステップがペインにどう対応するか
| ステップ(型は speaker または label から推論) | ペイン |
|---|---|
Thought、推論、計画、system | 推論 |
Action、tool、function、call | 関数呼び出し(隣接する Environment/結果はその呼び出しの下にネストされます) |
Final Answer、send_message、respond、finish、またはどれにも一致しない場合は最後のアクション | 最終回答 |
明示的に最終回答を設定するには、回答パターンに一致する speaker(例:"Agent (Final Answer)")を持つステップ、または send_message(...) アクションでトレースを終えます。
ステップのリンク
ステップは論理的なサイクルにグループ化されます。ある思考と、それがトリガーした呼び出しは同じステップ・インデックスを共有します。link_steps: true の場合、いずれかのカードをクリックすると、各ペインでそのインデックスを共有するすべてのカードがハイライトされ、思考からそれが生み出したアクションまでをたどれます。
継続的評価
eval_trace を Potato のいずれかのランタイム取り込みトランスポートと組み合わせると、トレースが到着したそばから評価されます。
- Webhook と SSE —
trace_ingestion: {enabled: true}は webhook エンドポイントを公開し、新しいトレースをアノテーターにストリーミングします。 - Langfuse ポーリング —
trace_ingestion.sourcesの下にlangfuseソースを追加します。 - ディレクトリ監視 —
data_directoryにwatch_data_directory: trueを加えると、投入された.jsonと.jsonlファイルを取り込みます。
ランタイムで追加されたトレースは、ただちにアノテーターへ割り当て可能です。これをトリアージ・キューと組み合わせると、エラーになったトレースや低スコアのトレースを先頭に押し出せます。
注意点と制限
eval_traceは表示専用で、それ自体はアノテーションを収集しません。例のように、reasoning_quality、tool_use_correctness、answer_helpfulnessなどのアノテーション・スキームと組み合わせてください。eval_traceではスパン・アノテーションはサポートされていません。トレース・テキストでスパンのハイライトが必要な場合は、エージェント・トレースまたはcode表示を使用してください。
関連項目
- シグナルベースのトリアージ・キュー — 到着するトレースのレビュー優先度を決める
- SFT/DPO 向けのトラジェクトリ編集 — 修正を訓練データに変換する
- エージェント的アノテーション — 表示フィールドの設定と取り込み
実装の詳細については、ソースのドキュメントを参照してください。