Context Engineering 上下文工程
模型每轮实际看到的上下文怎么拼、怎么省、怎么验。以 7 层次为主轴,把 CE 从「读过方法论」练成「能拆、能埋点、能算账」。
本模块回答一个被严重低估的问题:模型这一轮,到底看到了什么 token?是谁替你决定的?
你写的那段 prompt,从来不是模型实际收到的全部。框架默认值、对话历史、注入的记忆、工具 schema 都会被悄悄拼进去——这些「你以为没塞、实际塞了」的 token,就是上下文里的暗物质。Context Engineering(CE)不是把 system prompt 写长写细(那还是 Prompt Engineering),而是优化模型每一轮看到的整坨上下文怎么装配。
主轴是 7 层次:把模型每轮的上下文拆成系统提示、指令、结构化 IO、工具、记忆、历史等层,外加 cache 与可观测两道横切。学完你会拿到一套能力——让 7 层 100% 可见,再用一张 CONTEXT.md 把「设计账本」和「运行期对账单」对上,差额就是要排查的暗物质。
讲次编排:第 0 讲先建总览框架(7 层次 + 暗物质 + CE/PE/Harness 辨析),其后逐层深入——提示与指令、结构化 IO 与工具、记忆与 RAG、历史与压缩,最后两道横切(cache 工程、可观测与评估)收口。
适合:要把 LLM agent 做稳、做省、做得可验证的工程师与 PM——尤其是被「换了更强的模型还是不稳」「token 成本算不清」困住的人。
讲次
为什么模型这一轮看到的,从来不是你写的那段 prompt
模型每轮收到的上下文,是框架替你拼出来的一整坨;先让七层 100% 可见,才谈得上优化。
第 1 讲为什么你读到的那份 prompt 文件,常常不是模型真正收到的 system
一条 system message 往往由多源拼成;规则该写文件还是写代码,看作用域、优先级、健壮性三连。
第 2 讲为什么模型这一轮的输出,不该让它「既要念又要解析」
一段输出该说人话还是吐 JSON,唯一判据是「给谁消费」;工具该 eager 还是 deferred,看延迟红线乘以 tool 数量。
第 3 讲为什么记忆「注进去了」,模型却用错了
记忆该不该注、注多少、注错了怎么办——七维透镜做决策,三层分工避免重复灌,相反本能让你别把记忆当圣旨。
第 4 讲为什么对话历史会在你看不见的地方悄悄涨到爆
对话历史每轮在悄悄变长,多半是框架替你托管的,代码里看不见——只有实测增长曲线才照得出它离上限多远。
第 5 讲为什么静态前缀打了 cache 标记,还是每轮重新付费
cache 是前缀逐字节匹配,差一字节后面全废;打标记不等于缓存,先数 token 过没过模型阈值。
第 6 讲为什么你说的「优化生效了」,不拿日志根本没人信
cache 命中、上下文瘦身、压缩生效——每一句声称都得能用 usage 日志还原;没观测的优化只是玄学。