创建时间: 2026-04-01最后更新: 2026-09-12作者: yangbo(839d1655f)
1. 为什么需要 Tracing
调用一次普通模型时,我们通常只关心输入和回复。Agent 的执行过程更长:模型先理解问题,决定是否调用 Tool,等待 Tool 返回,再次调用模型生成答案。一个请求还可能包含多轮模型调用、多个 Tool 和检索步骤。
假设用户输入:
user-message.txt
1查一下明天上海天气,再看看我明天有什么安排。
最终回复可能只有两句话,内部却需要先调用模型分析任务,再分别执行天气和日程 Tool,最后调用模型整合结果。用户看到的是答案,排错时需要观察的是这段完整过程。
只查看最终回复,很难回答下面的问题:
- 模型有没有生成工具调用?
- Tool 收到了什么参数,返回了什么结果?
- 为什么模型调用了两次?
- 时间主要花在模型、Tool 还是检索上?
- 请求失败时,错误发生在哪一步?
Tracing 会记录一次请求中的关键执行节点,并保留它们的父子关系、输入、输出、状态和耗时。排错时可以沿着执行过程逐步检查,无需依赖猜测。
正在验证登录状态
请稍候,验证完成后将继续显示文章内容