Vibe session · Learning mode阅读、尝试、提问都留在同一个工作区
Course Map
练习进度 0/55
Learning Guide
Build session

Context Engineering 入门 — 让 AI 不再"失忆"

intermediate · 30-40 min · 步骤 1/4

你跟 AI 说了十遍"不要用 any",它第十一遍还是给你写了 any

你有没有遇到过这种情况:用 ChatGPT 或者 Claude 写代码,前面好不容易花了 5 分钟把项目背景解释清楚——"我用的是 React + TypeScript,数据库是 PostgreSQL,部署在 Vercel 上,代码风格用 Prettier..."

AI 说"明白了",然后认认真真帮你写了一段代码。挺好的。

然后你又说了一个新需求。AI 写的代码里用了 Axios——但你在第二句话就说过"我们项目用的是 Fetch API"。你提醒了它,它道了歉,改了过来。

再过两轮对话,你让它写一个新接口。它又用了 Axios。

更气人的是,你在第四句话里明确说过"不要用 any 类型"。到了第十二轮对话,满屏都是 any

大多数人遇到这种情况的第一反应是:"这 AI 也太笨了吧。"

但实际上,这不是"笨"的问题,而是一个技术限制。

AI 的上下文窗口就像一块小黑板,写满了就得擦掉旧内容

AI 的"记忆"跟你想的不一样

人的记忆是持久的——你今天学了一个知识点,明天甚至明年都还记得(虽然可能会模糊)。但 AI 的"记忆"完全不是这样运作的。

大语言模型有一个叫做 Context Window(上下文窗口) 的概念。你可以把它想象成 AI 面前的一块小黑板:

  • 你说的每句话、AI 回复的每段内容,都会被写到这块黑板上
  • 黑板是有大小限制的——Claude 大约 200K Token,GPT-4o 大约 128K Token
  • 当黑板写满了,最早写的内容会被擦掉,给新内容让位
这就是 AI"失忆"的真相:不是它不想记住你说的"不要用 any",而是那句话已经被从黑板上擦掉了。

更容易被忽略的是,很多 API 会按输入和输出 Token 计费。对话越长,每轮请求携带的历史内容通常越多;是否命中提示缓存、如何计费则取决于模型和服务商。完成一个独立任务后开新对话,既减少无关上下文,也更容易控制成本。

"多说几遍"为什么不管用

面对 AI 的失忆问题,很多人的本能反应是:"那我每次都提醒它一遍不就行了?"

这个策略在对话前几轮是有效的。但很快你会发现:

  1. 你自己也会忘记提醒——当你专注于解决一个具体问题的时候,很容易忘了每次都补一句"记得用 TypeScript、不要用 any"
  2. 提醒越多,黑板越满——你花了 20% 的黑板空间来反复写同样的约束,这些空间本来可以用来放更有价值的信息
  3. 中间的信息最容易被忽略——研究发现,AI 对上下文的"开头"和"结尾"最敏感,放在中间的信息最容易被忽视。这叫 Lost in the Middle(中间迷失) 现象
所以"多说几遍"不是解决方案,而是在制造新问题。

三层 Context 管理体系:即时 Context、中期 Context、长期 Context

那怎么办?Manus 团队的血泪经验

Manus 是一款通用 AI Agent 产品。它的工作场景比聊天写代码复杂得多——需要自主规划、调用工具、执行几十轮甚至上百轮的操作来完成一个长任务。这意味着它面临的"失忆"问题比我们严重得多。

Manus 团队分享过他们的"踩坑史":

阶段问题他们的做法结果
第一次AI 聊着聊着就忘事多写点提示词越写越长,越写越贵
第二次重要信息被挤掉把重要的多复制几遍文本更长,成本更高
第三次账单高得吓人想办法复用已有计算找到降成本的方式
第四次长文档处理不了按需检索,不全塞进去建立了检索系统
他们的核心领悟是:不是记得越多越好,而是记得越巧越好。

这个"巧"就是 Context Engineering——上下文工程。

Agentic Engineering 概念图——从手动编码到 AI Agent 自主工程的演进路径

什么是 Context Engineering?

Context Engineering 不是一个特定的技术或工具,而是一套方法论。它解决的核心问题是:怎么让 AI 在打开你项目的第一秒就知道该做什么,而不是每次都从头解释。

你可以把它想象成给新员工入职时发的那本"员工手册"。有了这本手册,新员工(AI)就知道公司用什么工具、代码规范是什么、哪些东西不能碰。没有这本手册?那你就得每天回答同样的问题。

Prompt Engineering vs Context Engineering 的区别:从

和 Prompt Engineering 的区别是什么?我打个比方:

  • Prompt Engineering 是每次打车时跟司机说"先左转再右转到那个路口"——每次都要说,说错了就走错路
  • Context Engineering 是给导航软件设好目的地——你不用说话,AI 自己知道往哪走
两者不是替代关系,而是层级关系。Context Engineering 是底层基础,Prompt Engineering 是上层技巧。你的 CLAUDE.md 写好了(Context),每次对话时的 Prompt 就可以更简短、更聚焦。

Vibe Workspace
Live build context

为什么你的 AI 编程助手总是"失忆"?

理解 AI 记忆问题的技术根源,以及为什么"多说几遍"不是解决方案

自动保存在此设备
理解 AI "失忆"问题的技术根源——上下文窗口和 Token 限制掌握 Context Engineering 的三个层级:项目级、会话级、消息级能区分 Context Engineering 和 Prompt Engineering 的职责边界
Home| Vibe Lab
草稿自动保存