上下文工程2026:取代提示工程成为Agent核心的学科

🤖 智能体 2026-08-11 · 更新于 2026-11-01 约 4 分钟阅读

上下文工程2026:比提示工程更重要的六件事

📜 目录

上下文工程2026:比提示工程更重要的六件事

提示工程优化你写的那段话。上下文工程优化模型看到的全部内容:系统指令、检索文档、工具定义、对话历史、记忆,以及它们在有限窗口里怎么抢位置。

区别在哪?把提示词打磨到完美,但塞进二十个用不上的工具定义和一堆无关检索块,输出照样崩。2026年质量差距主要产生在后一件事上。

一、先把窗口当预算,不当容器

窗口不是"能装多少装多少"的盒子,是一笔要分配的预算。每一段内容都在花token,也都在稀释注意力。

一个实用的分配比例:

内容 建议占比 超了怎么办
系统指令 5%-10% 拆分,把低频规则移到工具说明里
工具定义 10%-15% 按当前步骤裁剪
检索内容 30%-40% 减top-k、加rerank、去重
对话历史 20%-30% 滚动摘要
输出预留 15%-20% 绝不能挤占

最后一行最常被忽略。上下文塞满,模型没有空间输出完整答案,表现是回答被截断或突然变简短。

二、六件事,按收益排序

1. 结构化system prompt

把指令分成明确小节,用分隔符隔开:角色、任务、约束、输出格式、示例。

<role>你是客服分诊助手</role>
<task>判断工单类型并给出优先级</task>
<constraints>
- 不确定时输出 unknown,不要猜
- 不得承诺赔付金额
</constraints>
<output_format>{"type": "...", "priority": "..."}</output_format>

改法:把现在的一大段说明按这五节重排。同样的字数,模型遵守率会明显不同,因为结构化标记给了模型明确的边界。

2. 动态检索,只注入真正相关的块

不是检索到就全塞。先做相似度过滤,再rerank,最后只留top 3-5块。

改法:给检索加一个相似度阈值,低于阈值宁可不注入并明确告诉模型"没有找到相关资料"。让模型在空上下文上说"不知道",比让它在一堆噪声里编答案好。

3. 记忆分层

工作记忆(当前任务上下文)、会话记忆(本次对话摘要)、长期记忆(跨会话的用户偏好和历史结论)分开存。只有工作记忆直接进上下文,长期记忆按需检索后注入。

改法:检查现在的实现是不是把所有历史都拼进prompt。是的话先拆成两层,规模上去之后这套一定会崩。

4. 滚动摘要

每N轮把旧对话压成摘要,保留事实和决定,丢弃原始措辞。

改法:摘要指令里明确要求保留"用户提出的约束"和"已经确认的决定",这两类信息丢失的代价最大。

5. 工具定义裁剪

只发当前步骤需要的工具。二十个工具的定义既费token又干扰选择,模型在太多选项里挑错概率会上升。

改法:按子任务给工具分组,每步只挂当前组。如果工具必须全量暴露,就把描述压到一句话,参数说明放进按需加载的文档。

6. 优先级排序

模型对上下文的开头和结尾关注最强,中间部分容易漏。关键约束放末尾,背景资料放中间。

改法:把最重要的三条规则从开头挪到最末,或者在末尾重复一次。这个改动几乎没有成本,效果常被低估。

三、两个指标,每周看一次

指标 算法 期望方向
上下文利用率 已用token / 窗口上限 稳定在60%-75%
检索精确度 相关token / 注入token 上升

两个指标的健康方向是"同样的质量,更少的上下文"。如果上下文利用率一路涨而质量没涨,说明在往窗口里堆无效内容。

四、一周落地计划

天 做什么
第1天 加滚动摘要,处理长对话
第2天 裁剪工具定义,按任务分组
第3天 关键约束移到末尾,提高遵守率
第4-5天 接两个指标到监控,跑一周基线
第6-7天 在评估集上A/B,确认质量没掉

别一次全改。六项一起上,质量掉了不知道是哪项的问题。

五、三个常见误解

误解一:窗口越大越省事。 窗口大只意味着单次能塞更多,不意味着模型会用。长上下文中间段落的注意力衰减是普遍现象,塞进去和用上是两件事。

误解二:上下文工程就是写更好的提示词。 提示词只是其中一节。工具定义、检索策略、记忆结构、注入顺序,每一项对结果的影响都不小于措辞。

误解三:这是临时技巧。 它是系统设计的一部分。RAG、Agent记忆、长对话、模型路由,全都要处理"什么进上下文"这个问题。

常见问题

Q:小项目也要做这些吗? A:做两件就够:结构化system prompt 和 检索阈值。这两项成本最低,收益最直接。

Q:怎么判断是上下文问题还是模型能力问题? A:把同一份精简过的上下文喂给同一个模型。质量明显提升,就是上下文问题;没变化,才是模型能力问题。

Q:摘要会不会丢关键细节? A:会。解决办法是双轨:摘要进上下文,原文留在数据库,模型说"需要细节"时再按需取回原文片段。

Q:有没有工具能自动做这些? A:编排框架提供了部分能力(检查点、状态管理、消息裁剪),但注入什么、留什么、怎么排序,仍然要按你的业务自己定。

注:不同模型的上下文上限和注意力特性有差异,具体参数以各厂商官方文档为准。

相关文章

延伸阅读 · 含推广链接

跑通原型和长期挂着跑是两件事。按量计费起一台,用完释放,不用为闲置的机器付整月。

看按量计费价格 →

相关文章
2026-07-19
AI Agent互操作性实战:用MCP和A2A打通不同Agent框架
2026-07-19
MCP协议详解:让AI连接一切工具的开放标准
2026-07-17
AI Agent CI/CD流水线:改代码自动测试自动部署
2026-07-16
AI Agent输出验证:Agent说什么你都信?
2026-07-23
2026年AI代理安全最佳实践:保护您的AI系统
2026-07-19
AI Agent数据接入:让Agent读取你的各种数据源

本站文章由编辑人工撰写,收录的工具均经过实测或公开资料核验。文中链接指向工具官网或 GitHub 仓库,仅作信息参考,不构成付费推广。

💬 评论 (0)

暂无评论,来说两句吧~

登录后评论