先这样答
做过上下文工程。todo list 能让模型更聚焦。核心原因在于它把长任务的中间状态外置成了显式结构。模型处理复杂任务通常会产生几十轮对话历史。这些历史记录包含大量中间讨论。庞杂的信息会稀释模型的注意力。我们设计了 todo list 机制。系统强制模型在每步行动前先读清单。
这种做法彻底改变了模型追踪进度的方式。模型确认“我做到哪了”原本需要依赖隐式对话历史。模型需要消耗算力去推导当前进度。引入清单后,进度追踪变成了显式可检查的状态。模型的注意力会牢牢锚定在 todo list 上。这能防止关键指令被冗长历史掩盖。模型不会被几十轮历史稀释注意力。
这道题是字节抖音基础架构 Agent 岗一面 90 分钟的真实考题。todo list 本质上是对上下文的结构化干预。它把任务规划从对话流水账中提取出来。模型每次只需要看清单就能明确当前目标。这种结构化处理保证了长任务执行的准确度。
面试官会怎么追问
-
「如果 todo list 本身越来越长,把上下文占满了怎么办?」 定期压缩已完成的清单项。系统会清理过期的步骤记录——只保留未完成的待办事项与关键结论。这能始终控制清单的长度。
-
「你提到显式状态和隐式历史,这两者对模型处理有什么区别?」 隐式历史是流水账式的对话文本。模型需要消耗算力去推导当前进度。显式状态直接提供结构化的当前结果。模型读取显式状态能跳过推导步骤直接行动。
-
「为什么注意力锚定在清单上就能避免被稀释?」 模型生成文本受近期上下文影响最大。我们将清单放在每次输入的最前面。模型计算注意力权重时会优先关注这部分结构化文本。这阻断了早期几十轮无关对话造成的干扰。
回答的坑
没讲清“隐式历史”与“显式状态”的转换关系,只停留在“清单能备忘”的浅层理解。
忽略了长任务执行中清单本身也会膨胀的问题,缺少定期压缩的应对方案。
同系列的题