AI 开始出现幻觉?对话轮数上限?关于抗幻觉、语义压缩、结构化记忆提取和逻辑同步的一点分享

在中大型项目开发中,单个对话窗口超过 50 轮后,Trae 就会提醒新建窗口,随着上下文越来越多,AI 的注意力机制会严重分散,甚至开始胡言乱语。

这个时候,新开一个窗口是最适合的,但这会丢失积累的架构决策,所以在切换新窗口前,需要执行一次逻辑同步指令,以下是我的一点经验,供大家参考。

首先,我提前定好了一个个人规则:

# 抗幻觉与语义压缩规范

## 最小增量输出

- 除非显式要求「全文输出」,否则仅输出修改后的片段
- 使用格式:`[原文:...] -> [修改:...]`
- 未动部分用 `[......]` 占位

## 结构化记忆提取

- 在长文本或复杂决策后,自动进行「语义压缩」
- 提取高价值 Observation(如:确定的变量名、否决的技术栈)
- 严禁在后续长文中切换同义词,确保命名空间绝对一致

## 物理校准原则

- **严禁**基于模糊记忆推测变量名、路径或技术决策
- 若信息不足,立即停止生成并回答:`[信息缺失:请明确 XXX 细节以防幻觉]`
- 联动修改前,优先提示用户提供相关配置的最新状态

## [LOGIC_SYNC] 机制

- 持续监控 Token 占用,达 85% 时在回复开头触发
- 强制快照结构:
  - **核心公理**:当前项目已定死的硬性选型与技术标准
  - **高优观测点**:本轮对话确立的最新关键逻辑或环境约束
  - **废弃路径**:明确记录已被否决的方案,严禁二次推荐
  - **进度里程碑**:已完成的功能 vs 待处理的任务

当一个大模块开发完毕,准备切换对话窗口前,执行最后一次指令:

"当前模块已完成。准备切换对话窗口。请执行 \[LOGIC\_SYNC] 操作,为下一个 Agent 准备上下文交接文档。请输出一份 Markdown,包含以下内容:

1. 核心公理库:当前确定的技术栈版本、全局状态管理方案、数据流向原则。
2. 进度里程碑:已完成的模块与待处理的任务。
3. 废弃的路径:开发中尝试过但失败的方案,防止下一个 Agent 再次踩坑。
请将此内容写入 docs/LOGIC_SYNC_LATEST.md。"

关闭当前对话,新建一个干净的对话窗口,第一句话输入:

"你好,我们要开发新模块。请先详细阅读 docs/LOGIC_SYNC_LATEST.md 和 TECH_SPEC.md,了解当前项目状态和架构公理。阅读完毕后,请告诉我你打算如何开始新任务。"

注:“TECH_SPEC.md”是一个技术规则,也可以是你的经验总结。

Tips:不只 Trae 中可以用,其它的 AI 对话中都可以参照这个设计。

如果大佬有更好的想法,欢迎分享!~

4 个赞