上下文工程

- 说人话
- 一个 Agent 跑几十步,每一步都要把之前的结果重新塞回那个装不下的窗口,谁进谁不进总得有人定。定这件事就是上下文工程,它管的是资料的取舍和摆放,不是句子写得漂不漂亮。你见过的现象是任务跑到一半它忘了最初的要求,或者被中间几条无关的报错带着跑偏。
- 说行话
- 两个到处能见到的词:compaction 指把长历史压成摘要,Claude Code 里对应 /compact 命令;context rot 指窗口越填越满,中段信息越容易被忽略。排查时看的是每轮真正进窗口的 token 数。
- 潜台词
- 2025 年被 Karpathy 等人带火的词,基本是给「提示工程」换了个更准的名字,重心从怎么措辞转到了喂什么资料。
- 别用它
- 一问一答的简单调用谈不上上下文工程。它是多步 Agent 和长任务才需要的功夫,别给小需求套大概念。
拿这个能做什么3 个项目
- 01
- 02
- 03
Agent 翻车,多数不是模型不够聪明,而是上下文里缺了关键的那条,或者塞了太多无关的。常见的四个动作:写下来、挑出来、压一压、隔开放。排查时先查缺了什么,再查多了什么。
动手试试做完就算会了
新开 claude 会话先跑 /context 记下 Messages 那行,让它读完分块那步的长文档再跑一次,涨了几千上万 token,之后每轮都背着。再跑 /compact,Messages 掉下一大截;问文档中段一个不起眼的细节,终端多出一行 Read,它得回去重翻:腾出的地方是拿细节换的。