本文探讨上下文工程——提示工程的演进,关注如何有效筛选和管理AI智能体的上下文信息。LLM注意力预算有限,信息过载会导致性能下降。文章介绍了高效上下文的构成要素(系统提示、工具设计、示例选择)和长周期任务管理技术(压缩、结构化笔记、子智能体架构)。核心原则是用最少的高信号token,最大化达成目标的可能性,成为构建可靠高效AI智能体的必备技能。

前排提示,文末有大模型AGI-CSDN独家资料包哦!

在AI智能体的开发中,上下文(context)是一种关键但有限的资源。本文将探讨如何有效筛选和管理驱动AI智能体的上下文信息。

过去几年,提示工程(prompt engineering)一直是应用AI领域的焦点。如今,一个新术语正迅速崛起:上下文工程(context engineering)。构建基于大语言模型(LLM)的系统,正从“如何写出最佳提示词”转向一个更宏大的问题:“什么样的上下文配置最有可能引导模型产生我们期望的行为?

所谓上下文,指的是在调用大语言模型进行推理时所包含的一组token(词元)。上下文工程的核心挑战,就是在LLM固有的限制条件下,优化这些token的效用,以稳定、可靠地达成目标。要有效驾驭LLM,开发者必须“以上下文为思考单位”——即全面考虑模型在任一时刻所能获取的整体状态,并预判该状态可能引发的行为。

本文将深入探讨这一新兴的“上下文工程”艺术,并提供一套更精细的思维模型,帮助你构建更可控、更高效的AI智能体。


上下文工程 vs. 提示工程

在Anthropic,我们认为上下文工程是提示工程的自然演进。

  • 提示工程关注如何编写和组织LLM指令以获得最佳结果(参见我们的文档了解提示工程策略)。
  • 上下文工程则涵盖更广:它是一套策略,用于在LLM推理过程中筛选和维护最优的token集合——不仅包括提示本身,还包括系统指令、工具调用、Model Context Protocol(MCP)、外部数据、对话历史等所有可能进入上下文的信息。

早期LLM应用多聚焦于单轮任务(如分类或文本生成),提示工程因此成为核心工作。但随着我们转向构建能在多轮交互和长时间跨度中持续运行的智能体,管理整个上下文状态变得至关重要。

智能体在循环运行中会不断生成新数据,这些数据可能对下一轮推理有用,但也必须被周期性地精炼和筛选。上下文工程,正是从这个不断演化的信息宇宙中,为有限的上下文窗口选出最有价值内容的艺术与科学。

与一次性编写提示不同,上下文工程是迭代式的——每次调用模型前,都需要决定“这次该传入哪些信息”。


为何上下文工程对构建强大智能体至关重要?

尽管LLM处理数据的速度越来越快、上下文窗口也越来越长,但我们观察到:LLM和人类一样,在信息过载时会“分心”甚至“混乱”

“大海捞针”类基准测试揭示了一个现象:上下文衰减(context rot)——随着上下文token数量增加,模型准确回忆其中信息的能力反而下降。

虽然不同模型的衰减程度不同,但这一特性普遍存在。因此,上下文必须被视为一种边际收益递减的有限资源。就像人类的工作记忆有限一样,LLM也有一个“注意力预算”——每个新增token都会消耗这份预算,迫使我们必须精挑细选传入的信息。

这种“注意力稀缺”源于LLM的架构本质。基于Transformer的模型允许每个token关注上下文中的所有其他token,导致n个token之间产生n²对关系。随着上下文增长,模型难以有效捕捉所有关联,造成上下文长度与注意力聚焦之间的天然张力

此外,模型在训练时接触的多是较短序列,对长距离依赖的建模经验较少。虽然位置编码插值等技术能让模型处理更长序列,但往往以牺牲位置理解精度为代价。因此,模型在长上下文中仍能工作,但在信息检索和长程推理上的表现通常不如短上下文精准。

正因如此,深思熟虑的上下文工程,已成为构建高性能智能体的必备技能


高效上下文的构成要素

既然LLM的注意力预算有限,优秀的上下文工程就应追求:用最少的高信号token,最大化达成目标的可能性。以下是关键组件的实践建议:

1. 系统提示:清晰、简洁、恰到好处

系统提示应使用简单直接的语言,以“恰到好处”的抽象层级呈现信息——避免两个极端:

  • 过度具体:硬编码复杂的if-else逻辑,导致系统脆弱、难以维护;
  • 过于模糊:提供空泛的指导,或错误假设模型已具备共享背景知识。

理想状态是:足够具体以引导行为,又足够灵活以赋予模型启发式决策能力

建议将提示分为清晰区块(如<背景信息><指令>## 工具指南## 输出格式等),并用XML标签或Markdown标题分隔(尽管随着模型能力提升,格式重要性可能下降)。

记住:“最小”不等于“最短”——你仍需提供足够信息确保行为合规。建议先用最强模型测试极简提示,再根据失败案例逐步补充明确指令和示例。

2. 工具设计:高效、专注、无歧义

工具是智能体与环境交互、获取新上下文的桥梁。因此,工具应:

  • 返回token高效的信息;
  • 引导智能体采取高效行为

正如我们在《用AI智能体编写AI智能体工具》中所述,优秀工具应像高质量代码一样:功能内聚、容错性强、用途明确。参数命名需清晰无歧义,并契合模型的理解优势。

常见失败模式是工具集过于臃肿,功能重叠或选择模糊。如果人类工程师都无法确定该用哪个工具,就别指望AI能做得更好。精简工具集不仅能提升可靠性,也便于长期上下文维护。

3. 示例(Few-shot Prompting):精选而非堆砌

提供示例仍是最佳实践,但切忌将所有边缘案例塞进提示。应精选多样、典型的范例,清晰展现期望行为——对LLM而言,一个好例子胜过千言万语。


运行时动态检索:智能体的“即时上下文”

随着智能体范式普及(即LLM在循环中自主调用工具),上下文设计思路也在转变。如今,许多AI原生应用采用嵌入向量检索在推理前获取相关信息。而更前沿的做法是引入“即时上下文(just-in-time context)”策略。

智能体不再预先加载所有数据,而是维护轻量级引用(如文件路径、存储查询、网页链接等),在需要时通过工具动态加载。Anthropic的Claude Code正是如此:它能编写精准查询,用head/tail等命令分析海量数据,却无需将完整数据载入上下文——这与人类认知高度相似:我们依赖文件系统、书签等外部索引按需检索,而非死记硬背。

这些引用的元数据(如test_utils.py位于tests/目录 vs. src/core_logic.py)本身就传递了用途信号。智能体还能通过渐进式探索自主发现上下文:文件大小暗示复杂度,命名约定提示用途,时间戳反映相关性。它像人类一样,层层构建理解,仅保留必要信息在“工作记忆”中,并通过“记笔记”实现持久化。

当然,运行时探索比预加载更慢,且需要精心设计工具和启发规则,否则智能体可能浪费上下文、误入歧途。因此,混合策略往往是最佳选择:关键数据预加载提速,复杂探索交由智能体自主决策。

例如,Claude Code会将CLAUDE.md文件直接放入上下文,同时用glob/grep等工具按需检索文件——既避免索引过期问题,又绕开复杂语法树解析。

在法律、金融等动态性较低的领域,混合策略尤为适用。随着模型能力提升,智能体将承担更多自主决策,但“做最简单有效的事”仍是当前最佳实践。


长周期任务的上下文管理

对于跨越数十分钟甚至数小时的任务(如大型代码迁移、深度研究),智能体需在超出上下文窗口的序列中保持连贯性。等待更大上下文窗口并非万能解——上下文污染和信息相关性问题将持续存在。为此,我们开发了三种关键技术:

1. 压缩(Compaction)

当对话接近上下文上限时,将其摘要并开启新上下文窗口。Claude Code会将历史消息交由模型压缩,保留架构决策、未解bug等关键细节,丢弃冗余工具输出。用户无感切换,智能体则带着压缩上下文和最近访问的5个文件继续工作。

压缩的艺术在于取舍平衡:过度压缩可能丢失后期才显重要的微妙信息。建议先确保高召回率(不漏关键信息),再优化精确率(剔除冗余)。例如,清除深层历史中的工具调用结果就是一种安全的轻量压缩——既然工具已执行完毕,原始结果通常无需保留。

2. 结构化笔记(Structured Note-taking)

智能体定期将关键信息写入上下文外的持久化存储(如NOTES.md),后续按需召回。这为复杂任务提供轻量级记忆。

Claude玩《宝可梦》的案例展示了非编码场景下的记忆威力:它能精准追踪“过去1234步在1号道路训练,皮卡丘已升8级(目标10级)”,自动生成地图、记录成就、总结战斗策略。即使上下文重置,它也能读取笔记继续多小时训练——这是纯上下文模式无法实现的。

Anthropic在Sonnet 4.5发布时推出了记忆工具(Memory Tool)公测版,通过文件系统实现跨会话知识积累,让智能体无需将所有信息塞进上下文。

3. 子智能体架构(Sub-agent Architectures)

将复杂任务拆解给专用子智能体处理,主智能体负责协调。子智能体可深度探索(消耗数万token),但仅返回千余token的精华摘要。

这种“关注点分离”模式效果显著:详细搜索上下文被隔离在子智能体内部,主智能体专注结果合成。我们在《多智能体研究系统构建实践》中验证,该模式在复杂研究任务上大幅超越单智能体方案。

如何选择?

  • 压缩:适合需频繁交互的任务;
  • 笔记:适合有明确里程碑的迭代开发;
  • 子智能体:适合可并行探索的复杂分析。

结语

上下文工程标志着我们构建LLM应用方式的根本转变。随着模型日益强大,挑战不再仅是“写出完美提示”,而是在每次推理时,为模型有限的注意力预算精心筛选信息

无论是为长周期任务实施压缩、设计token高效的工具,还是让智能体按需探索环境,核心原则始终如一:用最少的高信号token,最大化达成目标的可能性

这些技术将随模型进步持续演进。我们已看到:更聪明的模型需要更少的人为干预,能更自主地行动。但即便能力不断提升,将上下文视为珍贵有限资源,仍将是构建可靠、高效智能体的基石。

读者福利:倘若大家对大模型感兴趣,那么这套大模型学习资料一定对你有用。

针对0基础小白:

如果你是零基础小白,快速入门大模型是可行的。
大模型学习流程较短,学习内容全面,需要理论与实践结合
学习计划和方向能根据资料进行归纳总结

包括:大模型学习线路汇总、学习阶段,大模型实战案例,大模型学习视频,人工智能、机器学习、大模型书籍PDF。带你从零基础系统性的学好大模型!

😝有需要的小伙伴,可以保存图片到wx扫描二v码免费领取【保证100%免费】🆓

请添加图片描述

👉AI大模型学习路线汇总👈

大模型学习路线图,整体分为7个大的阶段:(全套教程文末领取哈)

第一阶段: 从大模型系统设计入手,讲解大模型的主要方法;

第二阶段: 在通过大模型提示词工程从Prompts角度入手更好发挥模型的作用;

第三阶段: 大模型平台应用开发借助阿里云PAI平台构建电商领域虚拟试衣系统;

第四阶段: 大模型知识库应用开发以LangChain框架为例,构建物流行业咨询智能问答系统;

第五阶段: 大模型微调开发借助以大健康、新零售、新媒体领域构建适合当前领域大模型;

第六阶段: 以SD多模态大模型为主,搭建了文生图小程序案例;

第七阶段: 以大模型平台应用与开发为主,通过星火大模型,文心大模型等成熟大模型构建大模型行业应用。

👉大模型实战案例👈

光学理论是没用的,要学会跟着一起做,要动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。

在这里插入图片描述

👉大模型视频和PDF合集👈

这里我们能提供零基础学习书籍和视频。作为最快捷也是最有效的方式之一,跟着老师的思路,由浅入深,从理论到实操,其实大模型并不难

在这里插入图片描述

👉学会后的收获:👈

• 基于大模型全栈工程实现(前端、后端、产品经理、设计、数据分析等),通过这门课可获得不同能力;

• 能够利用大模型解决相关实际项目需求: 大数据时代,越来越多的企业和机构需要处理海量数据,利用大模型技术可以更好地处理这些数据,提高数据分析和决策的准确性。因此,掌握大模型应用开发技能,可以让程序员更好地应对实际项目需求;

• 基于大模型和企业数据AI应用开发,实现大模型理论、掌握GPU算力、硬件、LangChain开发框架和项目实战技能, 学会Fine-tuning垂直训练大模型(数据准备、数据蒸馏、大模型部署)一站式掌握;

• 能够完成时下热门大模型垂直领域模型训练能力,提高程序员的编码能力: 大模型应用开发需要掌握机器学习算法、深度学习框架等技术,这些技术的掌握可以提高程序员的编码能力和分析能力,让程序员更加熟练地编写高质量的代码。

👉获取方式:

😝有需要的小伙伴,可以保存图片到wx扫描二v码免费领取【保证100%免费】🆓

Logo

更多推荐