ChatGPT 忽略 Custom Instructions

About You 和 Custom Instructions 都设了,ChatGPT 在对话中途却不听。多半是 scope、上下文溢出、或者模型被切。让指令真的生效。

几周前你在 Custom Instructions 里设了「永远用 bullet point 回答、别堆营销废话、用初中读得懂的水平写」,前一阵 ChatGPT 还挺听。现在你问一个问题,给你的是文绉绉三段话、bullet 一个没有。把 Custom Instructions 开关关掉再打开也没用。指令明明还在,模型就是不照做。Custom Instructions 是按特定 scope 生效的,会和对话级提示、Project 指令、模型自身默认抢话语权。被忽略的原因几乎都是 scope、溢出、或者模型被切,而不是面板本身坏了。

常见原因

按命中率从高到低。

1. Project 指令或对话级系统提示把它覆盖了

如果对话在某个 Project 里,Project 的 custom instructions 优先级更高。模型在听那一份、不是你账号一级的。

怎么判断:侧边栏看一下,对话是不是在某个 Project 里?是 = 打开 Project → Configure,读一下 Project 指令,多半在和你的冲突。

2. 上下文溢出,指令被挤出活跃窗口

Custom Instructions 是前置注入的,但在很长的对话 + 很多附件下,模型实际会”淡化”它们的优先级,活跃对话本身把注意力占满了。

怎么判断:对话开头是听的,30 多轮后开始不听 = 典型的上下文压力。

3. 模型在对话中途被悄悄切了

撞用量上限时,Plus 账号会被路由到一个更小的模型,那个模型对长系统提示的服从度更低。fallback 模型听指令更松。

怎么判断:看模型选择器。显示成「GPT-5 mini」之类 fallback 名字而不是 GPT-5 = 就是它。

4. 指令太长或自相矛盾

超过 1500 字符、或者写了「要简洁」又写「永远给 3 个示例」这种矛盾,模型就会乱选一个或干脆都不一致地照办。

怎么判断:打开 Personalization → Custom Instructions,把两栏读一遍。任意一栏超过 500 字、或者有对冲规则 = 就是它。

5. 开关其实是关的

有时候开关会被不小心关掉,特别是打开 Project 时、或者设置同步后。看上去字段里是有内容的,但下面的开关是关的。

怎么判断:Personalization → Custom Instructions,确认「Enable for new chats」是开的。

6. 模型对指令的理解和你不一样

「用英式英语」这种规则模型听;「再直接一点」这种偏软的规则它就模糊,压力下会回到默认语气。模糊指令在负载下最容易被忽略。

怎么判断:把软规则换成硬的、可测的(「每条回复结尾加上 DONE 这个词」),看是否稳。硬规则稳、软规则不稳 = 就是写法的事。

开始前

  • 把当前 Custom Instructions 文本放在手边,方便改。
  • 决定保留账号级、还是 Project 级、还是两层都用并明确分工。
  • 挑一两条最重要的规则,方便修完后用来验证。

要收集的信息

  • 两栏 Custom Instructions 的完整文本(About You / How to respond)。
  • 当前对话是否在某个 Project 里,Project 指令长什么样。
  • 失败对话里模型选择器显示的模型名。
  • 这个对话大致轮数和附件数。
  • 指令是在网页还是手机 app 里设的。
  • 套餐档位,最近是否有过用量上限提示。

一步步修

Step 1: 确认 Custom Instructions 是开的

Settings → Personalization → Custom Instructions。两栏都该有内容、「Enable for new chats」开关该是开的。保存。关一下再开会重新触发一次应用。

Step 2: 在全新对话里测一遍

新开一个对话(不在任何 Project 里),问个明确该触发规则的问题(比如「解释一下光合作用」、你设了 bullet 就该 bullet 输出)。新对话是测账号级指令最干净的场景。

Step 3: 排查 Project 指令的冲突

失败对话在 Project 里 = 打开 Project → Configure,读 Project 指令。和你的 Custom Instructions 冲突的就调一致,或者把对话挪出 Project。

Step 4: 把指令缩短、写硬一点

Custom Instructions 总字数压到 500 字以内。把模糊规则换成具体、可测的:

差: 再简洁直接一点。
好: 每条回复最多 5 个 bullet point,不要开场白。

保存、新对话里测一遍。

Step 5: 把模型选择 pin 死

模型选择器里明确选 GPT-5,不要留「Auto」。这样能减少静默切换、稀释指令服从度的情况。

Step 6: 顽固对话里在线重新提醒

很长的对话里指令已经漂了 = 发一条提醒:

提醒:从现在开始这个对话里,请严格按照我账号的 Custom Instructions:
最多 5 个 bullet、不要开场白、写到初中阅读水平就行。

不用重开对话就能把模型重新锚回去。

Step 7: 团队级一致性把规则搬到 Project

多个对话要同样的行为 = 建一个 Project、把规则写进 Project 指令、对话都在 Project 里跑。Project 指令对 Project 内对话来说,服从度通常比账号级稳。

Verify

  • 不在 Project 里的新对话从第 1 轮就按规则走。
  • Project 里的新对话按 Project + 账号合并后的规则走。
  • 跑 20 轮 + 1 个附件后,指令还在被遵循。
  • 桌面切到手机再切回来,行为保持一致。

长期预防

  • 账号级 Custom Instructions 短一点,只管语气和格式。
  • 工作流相关规则放 Project 里,不要堆账号级。
  • 用硬规则、可测规则(「永远不要用『赋能』这个词」),不要写模糊的。
  • 每月审一次指令,删掉你不再在意的。
  • 重要 session 把模型在选择器里 pin 死,不要靠 Auto。

常见坑

  • 写 1000 字指令、期望每一条都被平均对待。
  • 写互相冲突的规则(「要简洁」+「永远给 3 个详细示例」)。
  • 以为 Project 指令和账号指令是叠加的——它们会冲突。
  • 在手机上改 Custom Instructions、又指望桌面立刻同步。
  • 怪模型,实际是某个你忘了的 Project 指令在作怪。

FAQ

  • 优先级顺序是什么? 这一轮的 inline 提示 > Project 指令 > 账号 Custom Instructions > 模型默认。
  • Custom Instructions 最长能写多少? 每栏上限约 1500 字符,写短一点服从度更稳。
  • Custom Instructions 对 API 调用生效吗? 不生效,API 用你自己代码里的 system prompt。
  • Memory 能替代 Custom Instructions 吗? 不能。Memory 存的是关于你的事实,Custom Instructions 设的是规则,两者共存。
  • 为什么新对话听、老对话不听? 老对话累积的上下文把前置注入的指令挤淡了。
  • 能给不同 workspace 设不同 Custom Instructions 吗? 账号级是全局生效;按 workspace 区分就用 Projects。

标签: #ChatGPT #排查 #memory #gpt-5