几周前你在 Custom Instructions 里设了「永远用 bullet point 回答、别堆营销废话、用初中读得懂的水平写」,前一阵 ChatGPT 还挺听。现在你问一个问题,给你的是文绉绉三段话、bullet 一个没有。把面板开关关掉再打开也没用。指令明明还在,模型就是不照做。
最快的修法: 新开一个对话,不要在任何 Project 里,问一个明确该触发规则的问题。新对话听 = 你的问题是 scope(某个 Project 或者一条很长的对话),不是保存的指令本身。连全新对话都不听 = 原因在上游:某条冲突的 Memory、某个 Personality 预设、或者指令太长 / 太模糊 / 干脆开关是关的。
截至 2026 年 6 月,Custom Instructions 只是 ChatGPT 每次对话叠加的三层个性化里的一层:Personality 预设、Custom Instructions、保存的 Memory。它们都在 Settings -> Personalization 下(有的客户端把入口叫 Customize ChatGPT)。指令被忽略,几乎都是这三层之一在打架,或者 scope、溢出、模型被切,而不是面板本身坏了。
你属于哪一种
| 症状 | 最可能的原因 | 跳到 |
|---|---|---|
| 新对话听、这条不听,而且它在某个 Project 里 | Project 指令覆盖了账号级 | 原因 1 |
| 连全新对话都忽略某一条特定规则 | 某条 Memory 和它矛盾 | 原因 2 |
| 语气不对(太啰嗦 / 太冲)但格式没问题 | Personality 预设在和你的语气规则抢 | 原因 3 |
| 一开始听、约 30 轮后或传文件后漂了 | 上下文溢出把指令挤出去了 | 原因 4 |
| 看到「上限」提示后回复立刻变短 / 变松 | 静默 fallback 到 GPT-5.4 mini | 原因 5 |
| 有的规则听、有的从不听 | 指令太长、矛盾、或太模糊 | 原因 6、7 |
| 完全没生效、字段看着是满的 | Enable for new chats 开关是关的 | 原因 8 |
常见原因
按命中率从高到低。
1. Project 指令把它覆盖了
如果对话在某个 Project 里,Project 指令优先级更高,模型听那一份、不是你账号一级的。
怎么判断: 看左侧边栏,这个对话是不是嵌在某个 Project 下?是 = 打开 Project → 三个点菜单 → Instructions(旧客户端叫 Configure),读一遍,多半在和你的冲突。
2. 某条 Memory 和指令矛盾
这是最容易在全新对话里也存活的原因。Memory 跨所有对话保存事实和偏好,一条过期的 Memory 比如「User prefers detailed prose explanations」会悄悄盖过你「用 bullet point」的 Custom Instruction。连新对话都忽略某一条特定规则,先怀疑 Memory。
怎么判断: 打开 Settings -> Personalization -> Memory -> Manage memories,扫一遍列表,找到和被忽略规则矛盾的那条,删掉。
3. Personality 预设在和你的语气规则抢
截至 2026 年 6 月,ChatGPT 带预设人格(Default、Friendly、Efficient/Professional、Candid、Quirky、Cynical/Robot、Nerdy)。预设决定语气,会盖过你指令里偏软的语气规则,但不动硬格式规则。典型信号:bullet 是对的、但语气不对。
怎么判断: 打开 Settings -> Personalization,如果人格不是 Default,调回 Default 再测一次;或者干脆把想要的语气写进 Custom Instructions。
4. 上下文溢出,指令被挤出注意力
Custom Instructions 是前置注入到系统提示里的,但对话一长,模型对靠后 token 的权重更高,指令就淡了。传一个 PDF 或跑一次工具会把大段文本插到你最新一条消息上面,淹得更快。
怎么判断: 对话开头是听的、约 30 轮后、或刚传完文件 / 跑完 code-interpreter 才漂 = 典型的上下文压力。
5. 模型在对话中途被悄悄切了
撞用量上限时,付费账号会被路由到一个更小、对长系统提示服从度更低的模型。截至 2026 年 6 月,选择器里显示的是 GPT-5.5(Instant / Thinking / Pro),静默 fallback 是 GPT-5.4 mini,这个根本不在选择器里出现。Plus/Go 大约每 3 小时 160 条消息后开始 fallback。
怎么判断: 看到上限提示后回复突然变短 / 变松就是信号。fallback 在选择器里没有标签,所以靠行为和时机判断,别看显示的模型名。
6. 指令太长或自相矛盾
每栏上限 1,500 字符(两栏合计 3,000,截至 2026 年 6 月)。塞满、或者写了「要简洁」又写「永远给 3 个示例」这种矛盾,模型就会乱选一个或干脆都不一致地照办。
怎么判断: 打开 Settings -> Personalization -> Custom Instructions,把两栏读一遍。任意一栏接近 1,500 字符上限、或者有对冲规则 = 就是它。
7. 模型对软规则的理解和你不一样
「用英式英语」这种规则模型听;「再直接一点」这种偏软的就模糊,压力下会回到默认语气。模糊规则最先被忽略。
怎么判断: 把一条软规则换成硬的、可测的(「每条回复结尾加上 DONE 这个词」),盯着看。硬规则稳、软规则不稳 = 就是写法的事。
8. 开关其实是关的
Enable for new chats 开关会被不小心关掉,尤其设置同步之后。字段看着是满的,但下面的开关是关的。
怎么判断: Settings -> Personalization -> Custom Instructions,确认 Enable for new chats 是开的。
开始前
- 把当前 Custom Instructions 文本放在手边,方便改。
- 决定保留账号级、还是 Project 级、还是两层都用并明确分工。
- 挑一两条最重要的规则,方便修完后用来验证。
要收集的信息
- 两栏 Custom Instructions 的完整文本(
What would you like ChatGPT to know about you?/How would you like ChatGPT to respond?)。 - 当前对话是否在某个 Project 里,Project 指令长什么样。
- 当前设的 Personality 预设,以及快速扫一眼保存的 Memory。
- 失败对话里选择器显示的模型,以及最近是否看到过上限提示。
- 这个对话大致轮数和附件数。
- 套餐档位(Free / Go / Plus / Pro)。
一步步修
Step 1: 确认 Custom Instructions 是开的
打开 Settings -> Personalization -> Custom Instructions。两栏都该有内容、Enable for new chats 该是开的。保存。关一下再开会重新触发一次应用。
Step 2: 在全新对话里测一遍
新开一个对话、不在任何 Project 里,问个明确该触发规则的问题(比如「解释一下光合作用」、设了 bullet 就该 bullet 输出)。全新对话是测账号级指令最干净的场景,能把 scope 和内容问题分开。
Step 3: 清掉冲突的 Memory
打开 Settings -> Personalization -> Memory -> Manage memories,删掉任何和被忽略规则矛盾的条目(比如你要 bullet、却有一条「prefers long prose answers」的 memory)。找不到元凶就临时把 Memory 整体关掉再测一次;行为修好了 = 就是某条 memory。
Step 4: 把 Personality 预设重置
在 Settings -> Personalization 里,人格不是 Default 就调回 Default,再测一次跟语气有关的规则。把你真正想要的语气写进 Custom Instructions,别交给预设摆布。
Step 5: 排查 Project 指令的冲突
失败对话在 Project 里 = 打开 Project → 三个点菜单 → Instructions。和你的 Custom Instructions 冲突的就调一致,或者把对话挪出 Project。
Step 6: 把指令缩短、写硬一点
每栏压到离 1,500 字符上限远一点。把模糊规则换成具体、可测的:
差: 再简洁直接一点。
好: 每条回复最多 5 个 bullet point,不要开场白。
保存、新对话里测一遍。
Step 7: 把模型选择 pin 死
模型选择器里明确选 GPT-5.5(Instant 或 Thinking),不要留 Auto。这样能减少那种静默切到 GPT-5.4 mini、稀释指令服从度的情况。注意:一旦撞上限,不管你选了谁,ChatGPT 仍可能 fallback。
Step 8: 顽固对话里在线重新提醒
很长的对话里指令已经漂了,不重开对话也能把模型重新锚回去:
提醒:从现在开始这个对话里,请严格按照我账号的 Custom Instructions:
最多 5 个 bullet、不要开场白、写到初中阅读水平就行。
Step 9: 团队级一致性把规则搬到 Project
多个对话要同样的行为 = 建一个 Project、把规则写进 Project 的 Instructions、对话都在 Project 里跑。Project 指令对 Project 内对话来说,服从度比账号级稳。
怎么确认修好了
- 不在任何 Project 里的新对话从第 1 轮就按规则走。
- Project 里的新对话按 Project + 账号合并后的规则走。
- 跑约 20 轮 + 1 次传文件后,规则还在被遵循。
- 之前被忽略的那条规则(Memory 或 Personality 冲突)现在在新对话里稳了。
- 桌面切到手机再切回来,行为保持一致。
长期预防
- 账号级 Custom Instructions 短一点,只管语气和格式。
- Memory 保持干净:每存一条矛盾的事实,就是一次未来的覆盖。每月审一遍
Manage memories。 - 工作流相关规则放 Project 里,不要堆账号级。
- 用硬规则、可测规则(「永远不要用『赋能』这个词」),不要写模糊的。
- 重要 session 把模型在选择器里 pin 死,不要靠 Auto。
常见坑
- 把两栏都塞到 1,500 字符上限、期望每一行都被平均对待。
- 写互相冲突的规则(「要简洁」+「永远给 3 个详细示例」)。
- 忘了一条保存的 Memory 或一个非 Default 的 Personality 预设也能悄悄盖过指令。
- 以为 Project 指令和账号指令是叠加的——它们会冲突。
- 在手机上改 Custom Instructions、又指望桌面立刻同步。
FAQ
- 优先级顺序是什么? 大致是:这一轮的 inline 提示 > Project 指令 > 账号 Custom Instructions 和保存的 Memory > Personality 预设 > 模型默认。当 Memory 和 Custom Instructions 冲突时,更具体、或最近被反复强化的那条往往胜出,所以一条过期 Memory 才能盖过规则。
- 为什么连全新对话都忽略某一条规则? 几乎都是某条矛盾的 Memory,或者某个 Personality 预设在盖语气。新对话清掉的是对话上下文,不是 Memory 和预设。
- Custom Instructions 最长能写多少? 截至 2026 年 6 月,每栏上限 1,500 字符(合计 3,000),写短一点服从度更稳。
- Custom Instructions 对 API 调用生效吗? 不生效。API 用你代码里设的 system prompt,网页的 Personalization 设置不会带过去。
- Memory 能替代 Custom Instructions 吗? 不能。Memory 存的是关于你的事实,Custom Instructions 设的是规则,两者共存,也会冲突——这正是坑所在。
- 能给不同 workspace 设不同 Custom Instructions 吗? 账号级是全局生效;按 workspace 区分就用 Projects。