首页/AI/提示词工程速查/请求追踪与回放调试

请求追踪与回放调试

为每次生成记录可回放链路:trace 标识、提示版本、参数、输入与输出摘要;排错用相同输入回放,同时考虑模型输出的非确定性。

提示词工程速查AI更新于 2026-10-13

追踪与回放是什么

为每次生成记录一条可复现的链路:trace 标识串起渲染、调用、校验各环节,同时记下提示版本、模型与采样参数、输入输出摘要与哈希。线上出问题时用相同输入回放定位原因。要注意模型输出本身带随机性,回放结果不同不能直接判定为回归,应比较多次结果的分布而不是单次差异。

基本信息

链路字段trace 标识、span 名称、耗时、状态
可复现字段提示版本、模型标识、温度与 top_p 等参数
内容字段输入与输出摘要、长度、哈希
隐私正文按需采样,敏感字段脱敏后再落库
回放口径固定参数多次重跑,比较分布与关键结论

典型使用场景

  • 质量投诉排查:按 trace 定位到具体版本与参数,复现用户看到的问题
  • 发布前后对比:同一批输入在新旧版本上回放,看差异落在哪些样本
  • 耗时分析:按 span 拆解渲染、调用、校验各占多少时间
  • 评测集构造:把线上真实 trace 脱敏后转入回归集
  • 回归判定:对同一输入跑多次,比较通过率而不是单次输出

追踪字段示例

追踪字段示例
trace_id: 7f3a91c2
span: prompt.render / model.call / output.validate
prompt_version: summarize@1.3.0
params: {temperature: 0.2, top_p: 1.0, max_tokens: 800}
input_hash: 3c91...   output_hash: a7d2...
latency_ms: {render: 12, model: 2380, validate: 8}
回放: 同参数重跑 5 次,比对通过率与关键字段,而非逐字比对

字段与用途

字段排错时的用途缺失后果
提示版本判断是否由发布引起说不清线上跑的是哪一版
模型与参数复现同一生成条件回放结果不可比
span 耗时定位慢在哪一环只能看到总耗时
输入输出哈希校验回放是否同输入无法确认是否同一请求
追踪数据里常含用户原文,落库前必须脱敏并设保留期,否则排错方便换来一份长期留存的数据风险。
回放要用同一次真实请求的原始输入,不要用手工整理的近似版本:输入差一个标点,结论就可能完全不同,排错方向也会跟着跑偏。

易错点

  • 日志只存输出不存版本与参数,问题无法复现,只能靠猜
  • 把单次回放结果不同直接判定为回归,忽略输出的随机性
  • trace 标识不贯穿各环节,前端投诉找不到对应的服务端记录
  • 追踪数据全量保存原文且无保留期,排查需求变成数据合规负担

数据来源与参考

  • OpenTelemetry 追踪概念(trace/span);记录与回放(record and replay)调试实践
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌