我发现 Codex 经常会写入幽灵规则

1874w 2026-07-11 13:18 1

当我纠正、取消或排除一个当前不会使用的行为时,我的想法是默认让该行为从文档中消失


但是 Codex 经常额外写入“明确不做”“暂不支持”“未来需要时再处理”等反向说明。


现在的处理:


不要做 X
→ 文档里写:X 被明确排除,未来需要时再……

实际的我想要的处理:


不要做 X
→ 删除 X ,不留下任何痕迹

就比如我在优化笔记顾流程时,它根据之前的规则加入了年度回顾的流程。


然后我纠正说:年度回顾用到的太少了,不需要这个流程,等年底我再单独设计这个流程。


结果它的实际行为是:


确实删了年度流程,但是却留下了一句:


年度回顾明确为“年底需要时再定义并确认独立流程”。

问题原因


我估计很多时候就是因为我多说了一句:等年底我再单独设计这个流程。结果他就真把这个话写到文档了。


感觉 AI 好像分不太清: 哪些是我单独给他解释的原因,哪些是需要沉淀到文档的规则。


而从我的对话习惯来说,我确实是把 AI 当成聊天对象了,所以有时候会解释下为什么我不做这个。但实际上它还是个只会干活的机器,所以没必要说太多给他,不然就会污染他的理解。


我的解决办法


虽然这不影响整个流程,但感觉还是有点奇怪,而且他在做 Skill 设计、项目文档的时候也会存在这个问题,我遇到很多次了


我想着如果我不改变我和 AI 的沟通方式的话,好像只能将它这种「幽灵判断」的行为加入了全局 AGENTS.md 来限制了。


不知道大伙有没有遇到这种情况,其他模型会不会有这个问题

最新回复 (28)
  • Ericcccccccc 07-11 13:29
    1
    这就是典型的 ai 不具备判断力,所以说当下的 ai 依然只能是辅助。
  • lujiaosama 07-11 13:49
    2
    是的. 我叫它别干什么, 就顺便把这个别做什么写进去了. 有些理论上提供给第三方看的文档, 这种操作就画蛇添足了.
  • winnerczwx 07-11 14:50
    3
    应该是 ai 遵循了最小修改原则, 能不删则不删, 除非你明确要求, 这个问题我也经常遇到, 你需要明确告诉他: "文档不再记录年度回顾相关内容, 删除年度回顾章节并对文档进行语义整理". 特别是你提到后续会用到 xx 内容时, 这时候 ai 是一定不会删你内容的.

    从这个角度来看 AI 做的没毛病, 不然你提到后续会用它还给删了, 又有人会跳出来说 AI 会乱删内容
  • ndxxx 07-11 14:58
    4
    codex 和 cc 还得用 cli ,可控性强。然后指定不同的 profile 目录(不同的全局指令)来做不同的任务,不同的全局指令(+不同的项目指令),基本上幽灵判断可以在可控的心智成本下得到有效缓解。
  • 1874w 楼主 07-11 15:06
    5
    @ndxxx 这是个好办法,确实 APP 只有一个全局 AGENTS.md ,我混杂了代码、笔记、文档相关的规则。目前大概有 60 多行 限制规则。倒也还在可控行数内,等后续再加的话,就考虑用 profile 单独给这几个分类创建了。
  • penzi 07-11 15:06
    6
    因为你的上下文是终身的, AI 的上下文 session 内都没法保证, 所以 AI 一定倾向于记下每一个决策的原因. 想解决就加 agents.md 规范好开发中间阶段的计划变更等等记录在哪里, 代码里面的注释写什么,不写什么.
  • showmethetalk 07-11 15:24
    7
    确实,这点特别烦人
  • Lexo 07-11 16:48
    8
    我觉得是 GPT 参数量相对来说太小的缘故。不知为何,GPT 总是会很刻板地去理解 prompt 。缺乏一些发散思维和创造力,无法理解自然语言的「弦外之音」和我没有要求的事情。GPT 做前端时总是会在界面上加上大量大量的描述和我提供的提示词的片段,看起来像是过分追求指令遵循导致的。

    而 Claude 在这方面就会好得多,比如我可以跟 Claude 说「像做梦一样整理你的 Claude.md 」,但是对于 GPT 我就需要把提示词写的直接一些...Claude 给我的感觉更像是一个人,一个朋友,而 GPT 更像是擅长干活的工具...

    当然可能下一代 GPT-6 就会解决这个问题了,据说 OpenAI 打算训练一个参数量大得多的底座去对抗 Claude fable 5.1 。
  • yidinghe 07-11 16:54
    9
    你要不要看看自己说的什么:

    > 我多说了一句:等年底我再单独设计这个流程。结果他就真把这个话写到文档了。

    你当 AI 是你肚子里的蛔虫吗,能听得出你这句话是违心的?它是 AI ,只会按字面意思理解你的话,而不是你的贴心男友,知道你哪句话是闹脾气不能当真。
  • 1874w 楼主 07-11 17:08
    10
    @yidinghe 我表达的可能不完全准确,这只是其中一个例子,我有时候直接不跟他解释,让他不要做,它也会这样写幽灵规则

    原因楼上也有提到,可能原因:遵从最小修改、参数量、模型训练时的方向的差异。我并不认为这是个多大的错误,只是从体感上,他更像机器人,不像人。我个人认为「更像人」应该是模型厂商追求的方向。

    所以我才觉得它的这种默认幽灵行为并不是一个好的方向,需要额外的规则约束(本可以不需要约束)
  • XnEnokq9vkvVq4 07-11 17:10
    11
    指令遵循好,是 GPT 系列模型的优点,但副作用就是它会把你说的一切话包括随口一说都当成指令。这种抽象的意图理解本来就很难
  • 1874w 楼主 07-11 17:21
    12
    @yidinghe 就比如我之前做 SKILL 修改

    我说:流程 3 不需要调用 XXX 工具,去掉

    然后结果它在安全守则会加上:禁止调用 XXX 工具。

    我:??

    就是这种,从人类一般视角来看,去掉就就是不用了,去掉自然就不会去调用,它额外加个安全守则就很幽灵

    所以我才觉得它整体就比较保守,边界很强。但你要说 加不加这句安全守则有什么问题吗?会影响整体流程吗?

    并不会,只是会让人疑惑而已。
  • yidinghe 07-11 18:13
    13
    @1874w 如果是这样,说明 Codex 对大模型的调教非常保守,对任何禁止性的指令都极其敏感。这倒不算坏事,大概率跟 SOUL 文件有关。

    另外就是表达还需要更明确,比如你实际想表达的其实是 “在流程三中去掉对 XXX 工具的调用” 这两者区别很大,你的原话指向的是工具,我改成指向的是流程三。大模型对指令的主语很敏感。
  • wolfie 07-11 18:50
    14
    指出一个错误,就完全变立场。
    每次都生成一个新的回答,不是基于之前修改。
  • honjow 07-11 18:54
    15
    @wolfie #14 超级墙头草
  • yjiefl 07-11 20:23
    16
    我这边这种情况很少,大多是我表达模棱两可或者有歧义导致的。
  • techmale 07-11 20:28
    17
    太阳底下无新事

    人自身有巨量上千万的 context ,LLM 参数量的增长和智能也只能一步步增长
    再多的 harness 和 memory 也只能是逐步的减少这个 discrepancy
    人必须亲自去自省这些隐藏上下文拿出来,Hermes/OpenClaw 以及 Codex/Claude 才能发挥它们更多的(a tiny bit more fraction of) 功力
  • LK3030 07-11 22:41
    18
    完全同意,而且这种差异非常明显,尤其是在撰写文档时会有大量这种叠甲式的句子
  • weiwenhao 07-12 00:08
    19
    经常这样,太恶心了。之前当你交代不要干什么的时候会产生严重的刻板行为。
  • monosolo1on1 07-12 00:32
    20
    这种问题对我来说真的是太常见了。

    我甚至专门搞了一个 skill ,来让他去评估我的各种文档,在里面排除各种旁白之类的对话,并且还要去删除那种没有补充额外信息、没有强调语义的否定句。
  • abc612008 07-12 01:40
    21
    而且写注释的时候喜欢加上特定于本次修改 prompt 的说明。
  • ninqq 07-12 06:20
    22
    是因为 ai 根本没有理解能力

    我复制一大段文本发给 gpt 让他制图

    然后补充一句 xx 段排除掉

    结果 gpt 做的图让排除的还在图上 补充的话也放上去了
  • slackerman 07-12 08:12
    23
    这个问题特别常见,特别是改写 spec 的时候。我还没找到比较好的解决方法。以前 Agents.md 文件里会加简洁,最小必要,不过度展开说明,不说不怎么做之类的,效果也不是很好。甚至会专门让他去整理 spec 中说不怎么做的内容。
  • Folder 07-12 08:16
    24
    Claude 没遇到过, 基本上只有我语气很重的时候, 如永远不要 xxx, 它才会加入到规则或者 memory 里.
    Codex, 反重力, CC 都用过, 最后还是停在 CC. 只有 Claude 有那种一起开发的感觉, 而不是开发的同时我还要防备着它.
  • jh623 07-12 12:27
    25
    明明是自己的问题,却怪 Ai 没猜对你的意图。。。
  • 1874w 楼主 07-12 13:42
    26
    @jh623 6
  • eroneko 07-12 15:10
    27
    我用 fable 5 也会这样,大概不是 codex 专有的,多次迭代会往注释里追加每次修改的原因把注释变得又臭又长。AI 喜欢打补丁而不是去整体修改,应该是训练和 system prompt 特别强调了最小修改导致的吧,记得以前 harness 概念还没怎么成熟的时候,ai 改代码就特别容易出现「顺手」把无关的地方也改掉,为了对抗这个就变成现在这样了。
  • Mystery0 07-12 15:15
    28
    你隔一段时间让 codex 自己去 agents.md ,然后叫它精简浓缩 agrnts.md 的内容,它自己就会知道里面的一些过时内容了,然后你让它自己根据代码来修正文档
* 帖子来源V2EX
返回