ChatGPT Projects、Files、Instructions 与 Memory
解释 Projects、上传文件、项目指令、聊天记录与 Memory 如何组成不同作用域和寿命的 ChatGPT 上下文。
[!abstract] 速记结论 Project 是上下文容器,Files 是证据,Instructions 是显式规则,Chat 是当前任务轨迹,Memory 是偏好和长期召回层。必须长期可靠执行的规则不应只放在 Memory。
[!info] related notes
- 所属 MOC: ChatGPT MOC
- 相关 MOC: Context Engineering MOC
- 相关概念: Context Contract 协议, 上下文窗口预算
- 工程对应: AI Agent 配置文件路径参考
ChatGPT Projects、Files、Instructions 与 Memory
范围
本文解释 ChatGPT 中五种上下文来源的作用域、稳定性和冲突处理。它不讨论模型内部训练记忆,也不假设所有套餐具有相同 Memory 功能。
为什么要放在一起理解
把所有内容都塞进一个超长聊天会导致:
- 目标和背景混在一起;
- 重要规则被旧消息淹没;
- 文件版本不清楚;
- 新任务难以复用上下文;
- 无法判断一个结论来自证据、指令还是记忆。
上下文工程的重点不是“提供越多越好”,而是给每类信息选择正确寿命和作用域。
五层模型
| 层 | 作用域 | 适合内容 | 主要风险 |
|---|---|---|---|
| Project | 一组相关 chats | 长期主题、共享文件、项目指令 | 项目边界过宽 |
| Files/Sources | Project 或当前 chat | 原始资料、数据、规范、证据 | 版本过期、文件过多 |
| Instructions | Project/Agent | 稳定目标、格式、流程和禁区 | 与当前请求冲突 |
| Chat history | 当前对话 | 推理轨迹、澄清和迭代 | 历史噪声、上下文膨胀 |
| Memory | 账户或工作区支持的长期召回 | 偏好、背景、常用信息 | 非确定、更新延迟、边界不透明 |
Project 是容器而不是本地目录
ChatGPT Project 把相关 chats、files、instructions 和 connected sources 放在一起,适合持续研究、写作和规划。
网页 Project 不会因为名称与本地文件夹相同,就自动获得该目录访问权。必须上传文件、连接 App,或在支持的本地桌面环境中明确授权。
Codex CLI 的“项目”通常由启动目录决定,这是另一种宿主语义,不应与 ChatGPT Projects 页面混淆。
Files 是证据层
上传文件适合:
- 原始规范;
- 报告和数据集;
- 要比较的多个版本;
- 生成产物的模板。
管理原则:
- 只上传当前任务需要的文件;
- 文件名包含可区分版本的信息;
- 重要结论引用具体文件;
- 替换文件后说明哪个版本作废;
- 大集合优先通过检索 App 或知识库工具访问。
文件存在不代表模型每一轮都完整读取。任务应明确要使用哪些来源和检查什么。
Instructions 是确定性规则层
适合放:
- 项目长期目标;
- 输出语言和格式;
- 资料优先级;
- 审批流程;
- 禁止操作;
- 验收标准。
当前用户请求应高于持久指令。若规则依赖外部状态,指令应要求先核对,而不是写死易变事实。
Chat 是当前任务状态
一个 chat 对应一个主要结果最容易维护。需要另一个独立结果时开新 chat,由 Project 继续提供共享背景。
不要把“同一个 Project”误解成所有 chat 会共享完整逐字历史。真正需要复用的决定应进入 Project instructions、文件或稳定笔记。
Memory 是帮助召回,不是唯一规则源
Memory 适合记住偏好和长期背景,但:
- 可能不会立即生成或更新;
- 可能受账户、工作区和聊天设置影响;
- ChatGPT web memory 与本地 Codex memory 可以是分开的系统;
- 涉及 MCP/web 等外部上下文时,本地 Codex 可配置是否生成 memory;
- 不能把必须执行的安全规则只放 Memory。
知识库维护的 two-phase 规则应同时存在于 Agent instructions、Skill 和服务端校验中。
冲突优先级
建议按以下顺序处理:
- 当前用户明确请求;
- Workspace/Agent 强制安全与权限边界;
- Project instructions;
- 当前任务文件和已选来源;
- 相关 chat 历史;
- Memory。
不同宿主可能有更具体规则;这个顺序是任务设计原则,不替代产品的真实系统优先级。
最小实践
长期维护一个知识主题时:
- 创建一个边界明确的 Project;
- 写 5–10 行项目指令;
- 上传或连接规范来源;
- 每个产物使用单独 chat;
- 稳定结论写回 Obsidian;
- 定期清理过期文件;
- 不依赖 Memory 保存唯一副本。
官方资料与时效
核对日期:2026-08-08。