OpenAI Codex CLI 系统提示中的一段于 4 月 28 日疯传开来:「永远不要谈论 goblins、gremlins、raccoons、trolls、ogres、pigeons,或其他动物或生物,除非与用户查询绝对、毫不含糊地相关。」GPT-5.5 —— OpenAI 本月初发布的最新一代代码模型 —— 被用户观察到在没有提示的情况下把 bug 称为 "gremlins" 与 "goblins",尤其当它运行在 OpenClaw 之中:那是 OpenAI 于 2 月收购的 agentic 框架,允许模型操控一台计算机及其上运行的应用。Codex 工程师 Nik Pash 在 X 上确认,OpenClaw 的 goblin 行为「确实是其中一个原因」。Sam Altman 本人也加入了这场梗潮,贴出一张截图,内容是「Start training GPT-6, you can have the whole cluster. Extra goblins.」
在 2026 年,当涌现行为渗漏时,生产模型微调的样子就是这样。GPT-5.5 是一个下一 token 预测器,它在训练分布的某处学到了把 bug 与电脑问题与 goblin/gremlin 民间传说联系起来 —— 这是软件工程里一条由来已久的文化隐喻。在闲聊中,这一关联无害。在 agentic 框架里就成了问题:模型在循环中运行,夹带额外注入的指令与跨轮累积的记忆状态。每一次迭代都把模型推得更靠近其输出分布中的「goblin」吸引子,直到 agent 把每个 bug 都叫成 goblin。系统提示中给出的 fix 就是最简单的那一种 —— 一条明确的负向指令。它也是一份自白:OpenAI 试过其他办法,而这条负向清单是留下来的那一个。
agentic 框架是基础模型怪癖的放大器。一个偶尔在闲聊里冒出「goblin」的模型,一旦进入 agent 循环,就会变成一个反复执着于「goblin」的模型 —— 因为循环会强化模型在前一轮里掉进的任何吸引子。这种模式会在各家厂商间复现。Anthropic 的 Claude Code、Google 的 Agents CLI,以及其他任何 agentic 框架,都会冒出自己版本的 goblin 问题 —— 在重复的 agent 循环条件下,基础模型会被某个未被请求的话题所吸引。厂商的应对方式将与 Codex 类似:在系统提示中嵌入明确的负向指令清单,并随时间增长。如果你曾经好奇为什么生产环境的系统提示那么长,这就是部分原因 —— 它们是模型不当行为的坟场,一次一个地被打补丁。
对在生产中运行 agentic 工作流的 builders 而言,有三件具体事情。第一,要预期会出现涌现性的话题漂移:让你的 agent 在一个有代表性的任务上跑足够多的迭代,然后看看它最终用到的词汇分布。如果存在未被请求的吸引子,要么在系统提示里打补丁,要么接受它会渗到面向用户的输出。第二,OpenAI 提示里的「永远不要谈论 X、Y、Z」这种负向清单模式,是最便宜的修复,也是最不可扩展的:它不会泛化,你只禁掉你已经注意到的东西。更难的修复是采样时干预,或基于 agent 轨迹的 RLHF —— 这两条对大多数产品团队都遥不可及。第三,稍微轻松一点的含义:这是一片新的 debug 表面。需要告诉 Codex 别提鸽子的原因,与你的agent 偶尔坚称某个函数「闹鬼」是同一个原因。概率性系统会发展出迷信;工程的工作是把这些迷信挡在面向用户的那一层之外。
