Logo
Overview

Prompt Drift:长程 agent 的核心敌人,以及五种应对

May 2, 2026
1 min read

我做 agent 项目踩过最多的坑,不是 LLM 不够聪明、不是工具调不通、不是 context 不够长,是 agent 跑着跑着把自己跑歪了

这件事在学术圈有个名字叫 prompt drift(提示漂移)。但很多 agent 教程不会专门讲这个——因为短任务里它不严重,做 demo 时几乎看不出来。只有当你真的尝试让 agent 连续跑 20 分钟、1 小时、1 天,问题才会暴露。

而做 AI4Research 这种月级别长程任务的人,这个坑是绕不开的。这篇是我自己的总结,分四块讲。

漂移的五种表现

(展开待补)

  1. 角色漂移:agent 忘了自己是谁
  2. 目标漂移:agent 偏离了原任务
  3. 约束漂移:agent 违反了禁令
  4. 风格漂移:输出风格悄悄变化
  5. 共识漂移:多 agent 互相强化错误前提

漂移的根本原因

四个:

  • Context 中段权重低Lost in the Middle
  • Recency bias(近因偏差)
  • Self-influence(agent 自己的输出污染自己的 context)
  • 多 agent 回声室

(每个原因详细解释待补)

五种防御手段

按工程复杂度从低到高:

1. Prompt Reinforcement(指令重申)

每 N 轮把 system prompt 的核心部分重新注入 context。简单粗暴,效果立竿见影。

2. Context Compression(上下文压缩)

不让 context 无限累积。Claude Code 的 /compact 就是干这个的。

3. Separation of Concerns(关注点分离)

每个 agent 只负责一件事,任务完成就重置 context。LangGraph、AutoGen 推崇的范式。

4. Verifier 机制

每一步输出都过一个 verifier(规则或另一个 agent),不通过就 reject 重做。

5. Persistent Memory + 主动召回

不靠 context window 记所有事,把关键事实写到外部记忆,每次决策前主动召回。

(每种手段的具体实现、踩坑经验待补)

我自己的取舍

(待补:我做长程任务时实际用的组合、为什么选这个组合、什么场景换什么组合)

检测漂移的工程手段

(待补:埋点、judge agent、embedding 相似度对比等)


草稿。这篇是我个人长程 agent 项目的核心经验之一,会持续打磨。欢迎邮件交流:wizveigar@outlook.com