同一个模型,上下文给对了,它像一个熟悉项目的老同事;上下文给错了,它就像一个刚入职、手里拿着一堆过期资料的新人。研究「上下文里该装什么、怎么装」,就叫上下文工程(Context Engineering)。
Agent 干得好不好,一部分看模型能力,一部分看 每一轮它的上下文里装了什么。
我个人认为 模型能力未来会趋向雷同,也就是大部分模型都可以解决90%的问题
未来 决定Agent好不好用的上限是 Context Engineering(上下文工程)了,本节虽然大部分都是概念,但是我认为很重要,这也是我要写本节的原因
一、从「写提示词」到「管上下文」
ChatGPT 刚出来的时候,大家研究的是提示词工程(Prompt Engineering):怎么写一句话,让模型答得更好。「你是一位资深工程师」「请一步一步思考」,这类技巧一度很流行。
那时候是一问一答,你写的那句话几乎就是模型看到的全部,所以把这句话写好最重要。
到了 Agent 时代,情况变了。一个任务要跑几十轮循环,每一轮模型看到的都是一大包东西:
[个人思考:下面这个可以用一个图来展示,更加清晰,最好是把循环的感觉也加来]
┌──────────────────────── 一轮的上下文 ────────────────────────┐
│ 系统提示词 Agent 自带的工作手册 │
│ 工具说明 能用哪些工具、怎么调用 │
│ 项目说明 CLAUDE.md 这类文件 │
│ 你的消息 目标、约束、补充说明 │
│ 历史记录 前面每一轮想了什么、调了什么 │
│ 工具结果 读过的文件、命令输出、搜索结果 ← 涨得最快 │
└──────────────────────────────────────────────────────────────┘
你亲手写的那句话,只占其中很小一块。剩下的大部分,是系统和循环自己攒出来的。
所以问题从「这句话怎么写」,变成了:每一轮,这一整包东西里该有什么、不该有什么。