为什么自定义 GPT 每次都从头开始
GPT 是一种配置,而不是一个账号
帮助中心将其定义为“为特定目的配置的 ChatGPT 版本”,其中“GPT 可以结合特定的指令、知识和选定的功能,在 ChatGPT 中创造更量身定制的体验。”
请将其理解为一个架构层面的声明。GPT 是一组设置的集合,任何有权限的人都可以运行。相比之下,你的 ChatGPT 记忆属于你的账号——它是根据你的聊天记录构建的,是关于你的。如果一个共享的配置能够读取任何正在使用它的人的记忆,那么同一个 GPT 对每个人的表现都会不同,并且会悄无声息地将个人上下文拉入一个共享界面中。
因此,界限并不在于“GPT”和“记忆”之间。而是在于你分享的东西和属于你的东西之间。GPT 所知道的一切都必须包含在配置中,因为配置是唯一随它移动的部分。
GPT 可以包含什么,以及为什么它起初感觉像是有记忆
文档中记录的配置元素包括:指令(“定义 GPT 的行为、语气、目标和边界”)、对话启动器(示例提示词)、知识(“GPT 在回答问题时可作为参考的上传文件”)、功能(选定的工具,如网页搜索或图像生成)、应用(通过用户连接的工具连接到外部服务)以及操作(“GPT 连接到你定义的外部 API 的方式”)。值得注意的一个限制是:“GPT 可以使用应用或操作,但不能同时使用两者。”
知识文件正是产生这种错觉的原因。一个上传了你的风格指南的 GPT 将永远正确地回答风格问题,这感觉就像是记忆。但它不是——它是 GPT 参考的固定引用,在第一天和第两百天都是完全相同的。一旦发生变化,区别就会显现出来:记忆会从发生变化的对话中吸收这种改变;而知识文件则需要人工进行编辑并重新上传。这与让人们误以为 ChatGPT 通常会保留他们上传文件的区别是一样的——即 为什么 ChatGPT 会忘记上传的文件 中所描述的界限。
你的自定义指令也同样不适用
这让那些精心设置了 ChatGPT 偏好设置的人感到惊讶。同一个 FAQ 句子也涵盖了这一点:GPT 不会使用保存的记忆、自定义指令或以前的对话。因此,你在其他地方依赖的“总是先给我代码,然后再解释”的设置,在 GPT 内部会悄然失效——除非该 GPT 自身的指令中写明了这一点。
这与设计是一致的(共享配置不应继承单个用户的偏好),这也是“为什么这个 GPT 废话这么多”这一常见困惑的根源。
官方文档中唯一一种引入上下文的方法
文档中有一个变通方法,而且确实非常有用:你可以将 GPT 引入一个已经包含上下文的对话中。帮助中心描述了在常规 ChatGPT 对话中使用 GPT 的方法,并指出当你这样做时,“对话会保留其当前的上下文”。
这伴随着两个限制。首先,它是当前对话的上下文——而不是你的记忆,也不是上周的对话线索。其次,文档指出这种 @ 提及流程“在 iOS 或 Android 应用中不可用”,在移动端你只能从 GPT 菜单或侧边栏中打开 GPT。因此,这个变通方法仅适用于桌面端和网页端。
值得了解:现在谁可以构建 GPT
如果你正在围绕 GPT 进行规划,那么当前的一个事实比以往任何时候都更重要。帮助中心指出:“个人 ChatGPT 账号(包括 Free、Go、Plus 和 Pro)无法创建和发布新的 GPT。”现有的 GPT 仍然可以使用,而编辑现有的 GPT “仍然需要符合条件的订阅以及任何适用的账号或工作区权限”。在 Business、Enterprise 和 Edu 工作区中,创建、编辑和发布取决于工作区的设置和权限。
这重塑了实际的问题。对于大多数团队来说,GPT 现在是由管理员管理的工作区资产——这使得“无记忆”属性变得更加相关,而不是更不相关,因为工作区共享的 GPT 正是继承个人记忆会导致错误发生的典型场景。
人们尝试过的方法
将所有内容都放入指令字段。 这是第一直觉,而且在一定程度上是有效的。但指令的容量是固定的:它们在每次对话中都会加载,无法通过对话进行更新,而且超过一定长度后,它们会与用户的实际问题竞争注意力。这是一个规范行为的地方,而不是积累知识库的地方。
一旦发生变化就重新上传知识文件。 对于一年只更改两次的风格指南来说,这是可行的。但对于每周都在变动的内容来说,这是不可持续的——而且没有任何信号能提示用户文件已过期,因此在有人注意到之前,GPT 会一直自信地给出错误的答案。
要求用户每次都粘贴上下文。 这是大多数团队最终采用的方法,但这将 GPT 从一个工具变成了一个表单。这也意味着回答的质量取决于用户是否记住了哪些细节是重要的。
转而使用 Project(项目)。 这很合理——Project 确实有记忆。但项目的记忆在两个方向上都有自己的壁垒,这是一个不同的问题,在 为什么 ChatGPT Projects 不共享记忆 中有详细介绍。
假设记忆功能坏了并进行排查。 这是一个真正的“时间黑洞”:人们去检查设置,刷新记忆摘要,却发现没有任何问题,因为本来就没问题。如果你正在调试常规 ChatGPT 中的记忆行为,该排查指南 是适用的——但它不适用于 GPT 内部,因为在 GPT 中,记忆功能在设计上就是关闭的。
解决方案:给 GPT 提供一些非静态的、可读取的内容
将 GPT 需要的两件事物分开。它的行为——语气、边界、流程——属于指令,这是刻意固定下来的。它的知识——本周关于你项目的真实情况——需要来自一个无需人工重新上传文件即可自动更新的地方。
GPT 构建器中已经存在文档记录的机制:操作(Actions)是“GPT 连接到你定义的外部 API 的方式”。这就是实时知识源接入的接口。
MemoryLake 是一个可通过 API 访问的记忆层,因此知识可以在一个地方保持最新,并且每个助手读取的内容都是相同的——包括原本在每次对话开始时都一片空白的 GPT。设置只需三个步骤。
步骤 1:创建 API 密钥
登录到 MemoryLake 并创建一个 API 密钥。这是用于读取和写入记忆的凭证,它独立于任何单一助手——相同的记忆可以服务于你的编辑器、你的智能体(agents)和你的 GPT。

步骤 2:上传你的第一批记忆
放入那些原本需要粘贴到每次对话中的知识:项目的结构、不明显的限制、决策及其背后的原因、尝试过但被拒绝的方案。保持条目简短且主题单一——每个条目包含一个事实比长篇大论的文档检索效果更好,而且在发生变化时也更容易纠正。

步骤 3:连接你的 AI 和智能体
连接你的工具。MemoryLake 可以通过 MCP 和 API 访问——原生支持 MCP 的智能体(如 Claude Code、Codex 和 OpenClaw)指向 MCP 服务器,而任何支持 HTTP 的工具则使用 API。具体到自定义 GPT,API 是实现路径,通过构建器的操作(Actions)进行连接;请记住文档中的限制,即 GPT 只能使用应用或操作,不能同时使用两者。这样做的结果是,更新一个事实就会在所有地方同步更新,而不需要重新上传知识文件并重新分享。

坦白地说,这也有局限性。这并不能给 GPT 提供 ChatGPT 意义上的记忆——它不会自己从对话中学习,而且 OpenAI 关于“每次对话都从头开始”的声明依然成立。改变的是,“从头开始”不再意味着“一无所知”:GPT 可以查找当前的知识,而不是依赖于一个静态的文件。此外,这里没有任何强制执行层,指令仍然主导着行为。
这在实践中带来了什么改变
过期的知识文件不再是一项维护工作。 频繁重新上传是 GPT 的隐性成本。在提问时读取的知识源消除了这一麻烦,也避免了 GPT 自信地引用上季度数据的情况。
共享的 GPT 保持真正的共享。 因为知识存在于任何个人账号之外,所以使用该 GPT 的每个人都能获得相同的当前上下文——这正是人们最初希望从记忆中获得的效果,同时又没有导致记忆功能在此处默认关闭的隐私问题。
指令变得更短、更好。 当指令字段不再兼作知识库时,它就可以专注于它的本职工作:规范行为、语气和边界。更短的指令执行起来更可靠。
相同的知识可以服务于你的其他工具。 你的 GPT 所需的上下文,也正是你的编辑器和智能体所需的上下文。只维护一次,而不是在每个界面上都维护一次,这才是真正的节省——正如 在 ChatGPT、Claude 和 Gemini 之间共享同一个记忆 中所描述的那样。
你不再为错误的解决方案买单。 团队经常因为“它不长记性”而将一个原本可以正常工作的 GPT 重构为更复杂的东西。通常情况下,GPT 本身没有问题,只是知识需要一个非静态的归宿。
构建需要上下文的 GPT 的最佳实践
将行为放在指令中,将事实放在可更新的地方。 这是最清晰的划分方式,而且能适应未来 GPT 工作方式的任何变化。
为你的知识文件标注日期。 如果你打算依赖上传的参考资料,请在每个文件的顶部加上一行“截至某日期最新”。用户无法区分过期的文件和最新的文件,GPT 也同样无法区分。
告诉用户 GPT 不知道什么。 一个写着“告诉我你正在处理哪个服务——我不会在聊天之间保留上下文”的对话启动器,比任何提示词工程都更能节省时间。
当上下文已经存在时,使用 @ 提及流程。 将 GPT 引入一个已经有背景信息的对话中,是文档中记录的唯一一种为它提供原本没有的上下文的方法。只需记住,这仅适用于桌面端和网页端,而且它只携带当前的对话,不包含你的历史记录。
不要指望你的自定义指令会生效。 它们不会生效。如果 GPT 需要你偏好的回复格式,必须将其写入该 GPT 自身的指令中。
在规划推广之前,先检查谁可以创建和编辑。 个人账号(包括 Free、Go、Plus 和 Pro)无法创建和发布新的 GPT,而在受管理的工作区中,这些选项取决于管理员的设置。
结论
“自定义 GPT 有记忆吗?”是这个领域中少数几个有明确、文档化答案的问题之一:它们没有,它们也不使用你的自定义指令,而且每次对话都会从头开始。对于一个旨在共享的工具来说,这是正确的设计——如果一个配置继承了当时正在运行它的任何人的记忆,那将既不可预测,也会带来隐私问题。
这意味着解决方案并不是让 GPT 记住。而是停止对本质上是知识问题的事情提出记忆要求:给 GPT 提供一个它可以读取的最新数据源,而不是一个必须由人重新上传的静态文件,并将指令留给行为规范。这样,“从头开始”描述的就是对话本身,而不是 GPT 对你工作的理解。如果你正在权衡 ChatGPT 记忆的更广泛边界,ChatGPT 记忆限制 涵盖了这些内容;如果你来自 Anthropic 阵营,将 Claude Projects 迁移到自定义 GPT 则介绍了这条路线。