收藏备用|上下文工程:破解LLM应用瓶颈,小白也能看懂的大模型落地核心指南
智能体”一词的使用范围广泛,因此我们在大型语言模型开发场景中对其进行定义:人工智能智能体是一个能够实现以下功能的系统:•对信息流动做出动态决策:不遵循预设路径,而是根据已获取的信息决定下一步行动。•跨多次交互维持状态:与简单的问答系统不同,智能体能够记忆已执行的操作,并利用这些历史信息指导未来决策。•根据结果调整方法:当某种策略无效时,能够尝试其他方案。•自适应使用工具:能够从可用工具中进行选择,
对于程序员和大模型小白来说,想要把大型语言模型(LLM)真正用起来、用好用稳,光会调用API远远不够——很多时候,模型“答非所问”“脱离实际”,核心问题就出在“上下文”上。而上下文工程,正是解决LLM应用瓶颈的关键钥匙,它通过构建一套完整系统,将孤立的大模型与外部世界、特定数据连接起来,让模型不再“闭门造车”。
本文将通俗易懂地拆解上下文工程的六大核心组件——智能体、查询增强、检索、提示词技术、记忆和工具,详细讲解如何适时为模型提供“精准养料”,让它能回答基于你的私人数据、行业数据的专属问题,而非仅依赖训练时的通用数据。这种系统化方法,能让LLM从“孤立的强大大脑”,转变为能解决工作、开发中实际问题的实用工具,更是我们构建可靠AI应用的基础,不管是小白入门还是程序员落地项目,都值得收藏反复研读。
智能体

当你开始使用大型语言模型构建实际系统时,就会遇到静态流水线的局限性。“检索-生成”的固定流程在简单的检索增强生成(RAG)场景中效果良好,但当任务需要判断、适应或多步骤推理时便会失效。
这就是智能体的用武之地。在上下文工程中,智能体负责管理信息在系统中的流动方式和效率。与机械遵循脚本不同,智能体能够评估已知信息、判断所需补充信息、选择合适工具,并在出现问题时调整策略。
智能体既是其上下文的构建者,也是上下文的使用者。然而,它们需要完善的实践和系统进行指导,因为良好的上下文管理极具挑战性——事实上,糟糕的上下文管理会拖累智能体的所有其他功能。
什么是智能体?
“智能体”一词的使用范围广泛,因此我们在大型语言模型开发场景中对其进行定义:人工智能智能体是一个能够实现以下功能的系统:
•对信息流动做出动态决策:不遵循预设路径,而是根据已获取的信息决定下一步行动。•跨多次交互维持状态:与简单的问答系统不同,智能体能够记忆已执行的操作,并利用这些历史信息指导未来决策。•根据结果调整方法:当某种策略无效时,能够尝试其他方案。•自适应使用工具:能够从可用工具中进行选择,并以非预先编程的方式组合使用。
单智能体架构
由单个智能体处理所有任务,适用于中等复杂度的工作流程。
多智能体架构
将工作分配给多个专门处理特定任务的智能体,适用于复杂工作流程,但会带来协调挑战。
上下文清洁度管理
这是智能体系统管理中最关键的环节之一。智能体不仅需要记忆和工具,还需要监控和管理自身上下文的质量。这意味着要避免信息过载、检测无关或冲突信息、根据需要精简或压缩信息,并保持上下文记忆的清晰度,以确保有效推理。
上下文窗口挑战
由于上下文窗口的信息容量有限,大型语言模型的信息处理能力受到约束。这一根本性限制决定了当前智能体及智能体系统的能力边界。
智能体在处理信息时,需要就以下问题做出决策:
•哪些信息应保留在活跃的上下文窗口中•哪些信息可以通过总结或压缩节省空间•哪些信息应存储在外部,需要时再检索•为推理和规划预留多少空间
人们容易认为更大的上下文窗口能解决这个问题,但事实并非如此。更长的上下文(数十万个甚至约100万个token)实际上会带来新的失效模式。
往往在模型达到最大token容量之前,性能就会开始显著下降:智能体可能变得混乱、幻觉率升高,或者无法维持正常水平的表现。这不仅是技术限制,更是任何人工智能应用程序在设计时都必须面对的核心挑战。
随着上下文窗口增大,以下常见错误会开始出现或增多:
•上下文污染:错误或虚构的信息进入上下文。由于智能体会重复使用并基于这些上下文进行扩展,错误会持续存在并不断累积。•上下文干扰:智能体被过多的历史信息(历史记录、工具输出、总结)拖累,过度依赖重复过去的行为而非重新推理。•上下文混淆:无关的工具或文档充斥上下文,干扰模型并导致其使用错误的工具或指令。•上下文冲突:上下文中的矛盾信息误导智能体,使其陷入相互冲突的假设中无法决策。
智能体的策略与任务
智能体之所以能有效协调上下文系统,是因为它们具备动态推理和决策能力。以下是智能体为管理上下文而设计的常见任务和采用的策略:
•上下文总结:定期将累积的历史信息压缩为摘要,在保留关键知识的同时减轻负担。•自适应检索策略:当初次尝试失败时,重新构建查询、切换知识库或更改分块策略。•质量验证:检查检索到的信息是否一致且有用。•上下文精简:通过专门的精简模型或专用大型语言模型工具,主动移除无关或过时的上下文。•上下文卸载:将细节存储在外部,仅在需要时检索,而非将所有信息保存在活跃上下文中。•动态工具选择:不将所有可能的工具都写入提示词,而是由智能体根据任务筛选并加载相关工具,减少混淆并提高准确性。•多源合成:整合来自多个来源的信息,解决冲突,生成连贯的答案。
智能体在上下文工程中的定位

智能体在上下文工程系统中扮演协调者的角色。它们不会替代其他章节介绍的技术,而是智能地统筹这些技术。例如,当初次搜索失败时,智能体可能会应用查询重写;根据遇到的内容类型选择不同的分块策略;或者决定何时压缩对话历史以容纳新信息。它们提供了必要的编排层,能够针对信息管理做出动态、符合上下文的决策。
上下文工程系统中不同类型的智能体及其功能:
•监督智能体:负责规划、优化查询、确保效率。•专业智能体:包括查询重写器、检索器、答案合成器、工具路由器等。•记忆组件:分为短期记忆(工作记忆)和长期记忆(外部知识库)。•工具与接口:各类工具及应用程序接口。
查询增强
上下文工程中最重要的步骤之一是如何处理和呈现用户的查询。如果无法准确理解用户的问题,大型语言模型就无法提供精准的回答。
这听起来简单,实则复杂。需要关注两个核心问题:
1.用户与聊天机器人或输入框的交互方式往往并不理想。 许多产品开发者在开发和测试聊天机器人时,使用的查询通常简洁、标点规范、表达清晰,包含了大型语言模型理解问题所需的所有信息。但在现实场景中,用户与聊天机器人的交互可能模糊、混乱且不完整。因此,要构建稳健的系统,必须实现能够处理各类交互(而非仅理想交互)的解决方案。2.流水线的不同环节需要以不同方式处理查询。 一个大型语言模型能很好理解的问题,可能并不适合作为向量数据库的搜索查询;反之,一个适合向量数据库的查询词,可能不足以让大型语言模型生成完整答案。因此,我们需要一种能够针对流水线中不同工具和步骤优化查询的方法。
请记住,查询增强从流水线的最开始就解决了“输入垃圾,输出垃圾”的问题。无论检索算法多么复杂、重排序模型多么先进、提示词工程多么巧妙,都无法完全弥补对用户意图的误解。
查询重写
查询重写将原始用户查询转化为更适合信息检索的版本。如今,应用程序不再采用“检索-读取”的模式,而是转向“重写-检索-读取”的方式。这项技术通过重构表达不规范的问题,使其更易被系统理解;移除无关上下文;引入常用关键词以提高与正确上下文的匹配度;还可以将复杂问题拆分为简单的子问题。
检索增强生成(RAG)应用对查询的措辞和特定关键词非常敏感,因此该技术通过以下方式发挥作用:
•重构模糊问题:将模糊或表达不当的用户输入转化为精确、信息密集的表述。•上下文移除:删除可能干扰检索过程的无关信息。•关键词增强:引入常用术语,提高匹配相关文档的概率。
查询扩展
查询扩展通过从单个用户输入生成多个相关查询来增强检索效果。当用户查询模糊、表达不规范,或需要更广泛的覆盖范围(如基于关键词的检索系统)时,这种方法能提升结果质量。
然而,查询扩展也面临一些需要谨慎处理的挑战:
•查询偏移:扩展后的查询可能偏离用户原始意图,导致无关结果。•过度扩展:添加过多术语可能降低精度,检索到大量无关文档。•计算开销:处理多个查询会增加系统延迟和资源消耗。
查询分解
查询分解将复杂、多维度的问题拆分为简单、聚焦的子查询,这些子查询可独立处理。这项技术特别适用于需要从多个来源获取信息或涉及多个相关概念的问题。
该过程通常包括两个主要阶段:
•分解阶段:大型语言模型分析原始复杂查询,并将其拆分为更小的聚焦子查询,每个子查询针对原始问题的一个特定方面。•处理阶段:每个子查询通过检索流水线独立处理,实现与相关文档的更精准匹配。
检索完成后,上下文工程系统必须汇总并合成所有子查询的结果,为原始复杂问题生成连贯、全面的答案。
查询智能体

查询智能体是查询增强的最高级形式,它利用人工智能智能体智能处理整个查询处理流水线,整合了上述所有技术。
查询智能体接收用户的自然语言提示词/问题,基于对数据库和数据结构的了解,决定查询的最佳构建方式,并能根据返回结果迭代地决定重新查询和调整策略。
核心步骤
1.分析:使用生成模型(如大型语言模型)分析任务和所需查询,确定要执行的精确查询。
•动态查询构建:不依赖预设查询模式,而是基于对用户意图和数据模式的理解,按需构建查询。这意味着它可以自动添加筛选条件、调整搜索词,以在数据库中找到最相关的结果,还可以根据需求选择执行搜索、聚合,或同时执行两者。
2.查询执行:构建并向智能体选择的一个或多个数据集发送查询。
•多数据集路由:智能体了解所有数据集的结构,因此能根据用户问题智能决定查询哪些数据集。•评估:智能体可以在原始用户查询的上下文中评估检索到的信息。如果存在信息缺失,智能体可以尝试其他知识源或新的查询。
3.(可选)响应生成:接收数据库返回的结果,并使用生成模型为用户的提示词/查询生成最终响应。
•上下文感知:上下文可能还包括之前的对话历史和其他相关信息。智能体能够维持对话上下文以处理后续问题。
检索

大型语言模型的性能取决于其可访问的信息。虽然大型语言模型经过了海量数据集的训练,但它们无法获取你的特定私人文档以及训练完成后出现的任何信息。要构建真正智能的应用程序,必须适时为它们提供合适的外部信息。这一过程称为检索。检索前和检索步骤是许多依赖上下文工程的人工智能架构(如检索增强生成(RAG))的核心组成部分。
核心挑战
从概念上讲,挑战很简单,但在实践中却很棘手:原始文档数据集通常过大,无法放入大型语言模型有限的上下文窗口(提供给人工智能模型的输入)中。我们不能直接将整套用户手册或研究论文交给模型。相反,我们必须从这些文档中找到最关键的部分——即包含用户查询答案的单个段落或章节。
为了使庞大的知识库可搜索并找到这一关键部分,我们必须首先将文档拆分为更小、更易处理的片段。这一基础性过程称为分块,是实现成功检索的关键。
分块策略矩阵

| 维度 | 低 | 高 |
|---|---|---|
| 检索精度 | 丰富但难以检索 | 精确但不完整 |
| 上下文丰富度 | 失效区域 | 最佳区域(最优分块) |
•精确但不完整:过小的分块(如单个句子)易于查找,但缺乏足够的上下文,导致大型语言模型无法生成优质响应。•失效区域:结构混乱、随机的分块,既难以查找又毫无用处,是最糟糕的情况。•最佳区域(最优分块):语义完整的段落,既聚焦且易于查找,又内容丰富且易于理解。•丰富但难以检索:过大的分块包含答案,但嵌入向量“噪声”大,导致检索系统无法准确找到。
设计分块策略时,必须平衡两个相互冲突的优先级:
•检索精度:分块需要小巧且聚焦于单一主题。这能生成独特、精确的嵌入向量,使向量搜索系统更容易找到与用户查询完全匹配的结果。混合多个主题的大分块会生成“平均化”的噪声嵌入向量,难以被精确检索。•上下文丰富度:分块必须足够大且独立,以便能够被理解。分块被检索后会传递给大型语言模型,若分块只是脱离上下文的孤立句子,即使是功能强大的模型也难以生成有意义的响应。
目标是找到分块的最佳平衡点:分块既要足够小以实现精确检索,又要足够完整以向大型语言模型提供所需的全部上下文。
策略的选择取决于文档的性质和应用程序的需求。
简单分块技术
•固定大小分块:最简单的方法,将文本拆分为预定大小的分块(如512个token)。速度快、易于实现,但可能会生硬地拆分句子。在分块之间设置重叠部分(如50个token)有助于缓解这一问题。•递归分块:更智能的方法,使用优先级分隔符列表(如先段落、再句子、最后单词)拆分文本。它尊重文档的自然结构,是处理非结构化文本的可靠默认选择。•基于文档结构分块:利用文档的固有结构进行分块。例如,按Markdown文件的标题(#、##)、HTML文件的标签(、
)或源代码的函数进行拆分。
高级分块技术
•语义分块:不依赖分隔符,而是根据含义拆分文本。将语义相关的句子分组,仅当主题切换时才创建新分块,生成高度连贯、独立的分块。•基于大型语言模型的分块:利用大型语言模型智能处理文档,生成语义连贯的分块。不依赖固定规则,大型语言模型能够识别逻辑命题或总结章节,创建保留含义的片段。•智能体分块:在基于大型语言模型分块的基础上更进一步。人工智能智能体动态分析文档的结构和内容,为特定文档选择最佳分块策略(或策略组合)。•层次化分块:创建多个细节层级的分块(如顶层摘要、中层章节和底层段落)。这使检索系统能够从全局概述开始,再根据需要深入到具体细节。•延迟分块:一种颠覆标准流程的架构模式。先对整个文档进行嵌入,生成包含完整上下文的token级嵌入向量,然后再将文档拆分为分块,每个分块的嵌入向量都源自这些预先计算的、富含上下文的token。
预分块与后分块
除了分块方式,系统设计的一个关键选择是分块时机,这决定了两种主要的架构模式:
预分块

最常见的方法,所有数据处理都在用户查询到来之前预先离线完成。
•工作流程:数据清洗→文档分块→嵌入并存储分块•优点:查询时检索速度极快,因为所有工作已提前完成,系统只需执行快速的相似度搜索。•缺点:分块策略固定。若决定更改分块大小或方法,必须重新处理整个数据集。
后分块

一种先进的实时迭代方式,分块在文档被检索后、响应用户查询时动态进行。
•工作流程:存储文档→检索相关文档→动态分块•优点:灵活性极高。可根据用户查询的上下文制定动态分块策略,可能获得更相关的结果。•缺点:增加延迟。分块过程实时进行,导致用户首次响应变慢,且需要更复杂的基础设施进行管理。
分块策略选择指南
| 分块策略 | 工作原理 | 复杂度 | 适用场景 | 示例 |
|---|---|---|---|---|
| 固定大小 | 按token或字符数拆分。 | 低 | 小型或简单文档,或对速度要求极高的场景。 | 会议记录、短博客、电子邮件、简单常见问题解答 |
| 递归 | 反复拆分文本直至达到所需分块大小,通常保留部分结构。 | 中 | 需要保留部分结构但仍注重速度的文档。 | 研究论文、产品指南、短报告 |
| 基于文档结构 | 仅在文档边界或按标题等结构元素拆分。 | 低 | 由短独立文档或高度结构化文件组成的集合。 | 新闻文章、客户支持工单、Markdown文件 |
| 语义 | 在自然含义边界(主题、概念)处拆分文本。 | 中高 | 主题切换无明确分隔符的技术、学术或叙事文档。 | 科学论文、教科书、小说、白皮书 |
| 基于大型语言模型 | 利用语言模型根据上下文和含义决定分块边界。 | 中高 | 需基于含义分块以提升问答等下游任务性能的复杂文本。 | 长报告、法律意见、医疗记录 |
| 智能体 | 由人工智能智能体根据含义和结构决定拆分方式。 | 高 | 需要自定义策略的复杂、细致文档。 | 监管文件、多章节合同、公司政策 |
| 延迟分块 | 先对整个文档进行嵌入,再从中衍生分块嵌入向量。 | 高 | 分块需了解文档完整上下文的场景。 | 案例研究、综合手册、长篇分析报告 |
| 层次化 | 将文本拆分为多个层级(章节→段落→句子)。 | 中 | 既需要摘要又需要细节的大型结构化文档。 | 员工手册、政府法规、软件文档 |
总结
检索增强系统的有效性并非取决于单一的“神奇”方法,而是一系列深思熟虑的工程选择。提供给大型语言模型的上下文质量直接取决于两个关键决策:
1.分块策略(如何做):拆分文档的方法。2.架构模式(何时做):执行分块的时机。
掌握这两个要素是上下文工程的基础。设计精良的检索系统,是让大型语言模型从“猜测”走向提供基于事实、可靠且上下文相关答案的关键。
提示词技术
提示词工程是设计、优化输入(提示词)以获取期望输出的实践。大型语言模型的质量和性能很大程度上受其接收的提示词影响,提示词的措辞方式直接决定响应的准确性、实用性和清晰度。
本质上,它是关于高效与人工智能交互的技术——通过提供指令、示例或问题,引导模型生成所需输出。
本节将介绍对提升检索增强生成(RAG)应用程序和大型语言模型整体性能至关重要的提示词技术。
重要说明
提示词工程关注如何为大型语言模型撰写指令;而上下文工程则侧重于构建提供给模型的信息和知识(如检索到的文档、用户历史或领域特定数据),以最大限度地提高模型的理解能力和响应相关性。以下许多技术(思维链、少样本提示、思维树、反应式提示)与精心设计的上下文结合使用时效果最佳。
经典提示词技术
•思维链(Chain of Thought):要求模型“逐步思考”,将复杂推理分解为中间步骤。当检索到的文档内容密集或包含需要仔细分析的冲突信息时,这种方法特别有用。通过阐述推理过程,大型语言模型能得出更准确、更符合逻辑的结论。•少样本提示(Few-Shot Prompting):在上下文窗口中为大型语言模型提供少量示例,展示期望的输出类型或“标准答案”。提供示例有助于模型理解所需的格式、风格或推理方式,尤其在专业或技术领域能提高响应的准确性和相关性。
技巧1:让模型的思维链推理与你的具体用例高度匹配。例如,你可以要求模型:
•评估环境•重复所有相关信息•解释这些信息与当前请求的相关性
技巧2:让模型以“草稿”形式推理,每句话不超过5个单词。这能确保模型的思维过程清晰可见,同时减少输出token数量。
将思维链和少样本示例结合使用,能同时引导模型的推理过程和输出格式,实现最高效率。
高级提示词策略
在经典技术的基础上,高级策略以更复杂的方式引导大型语言模型:
•思维树(Tree of Thoughts, ToT):在思维链的基础上,指示模型并行探索和评估多条推理路径(类似决策树)。模型可以生成多个解决方案,然后选择最佳结果。在检索增强生成(RAG)中,当存在多个潜在证据来源,且模型需要根据多个检索到的文档权衡不同答案时,这种方法特别有用。•反应式提示(ReAct Prompting):将思维链与智能体相结合,使模型能够动态“推理”和“行动”。模型以交错方式生成推理轨迹和行动,使其能够与外部工具或数据源交互,并迭代调整推理过程。在检索增强生成(RAG)流水线中,反应式提示能让大型语言模型实时与检索到的文档交互,根据外部知识更新推理和行动,从而提供更准确、更相关的响应。
工具使用提示
当大型语言模型与外部工具交互时,清晰的提示词能确保工具的正确选择和使用。
定义参数和执行条件
大型语言模型有时会选择错误的工具或使用方式不佳。为避免这种情况,提示词应明确定义:
•使用时机:指定触发特定工具的场景或条件。•使用方法:提供预期的输入、参数和期望的输出。•示例:包含少量示例,展示不同查询下工具的正确选择和使用。例如:
•用户查询:“巴黎天气如何?”→ 使用Weather_API,参数city=“Paris”•用户查询:“帮我找埃菲尔铁塔附近的餐厅”→ 使用Restaurant_Search_Tool,参数location=“Eiffel Tower”
这些精确的指导应作为工具描述的一部分,帮助大型语言模型理解每个可用工具的确切边界和功能,最大限度地减少错误,提高系统整体可靠性。
技巧:如何撰写有效的工具描述 大型语言模型是否使用你的工具,完全取决于工具的描述。请务必注意以下几点:
•使用主动动词:以清晰的动作开头。例如,get_current_weather比weather_data更合适。•明确输入要求:清楚说明工具所需的参数及其格式(如city (string)、date (string, YYYY-MM-DD))。•描述输出结果:告知模型预期的返回内容(如返回包含“最高温度”“最低温度”和“天气状况”的JSON对象)。•提及局限性:若工具仅适用于特定地区或时间段,需明确说明(如注意:仅适用于美国城市)。
提示词框架的使用
如果你的项目需要大量提示词设计,或希望系统地提升大型语言模型的结果,可以考虑使用DSPy、Lama Prompt Ops、Synalinks等框架。
不过,你并非必须使用框架。遵循上述提示词指南(清晰的指令、思维链、少样本学习和高级策略),无需额外框架也能获得高效的结果。
可以将这些框架视为复杂项目的可选辅助工具,而非日常提示词工程的必需品。
记忆

构建智能体时,记忆并非附加功能——而是赋予它们“生命力”的核心要素。没有记忆,大型语言模型只是一个强大但无状态的文本处理器,只能逐次响应查询,毫无历史感可言。记忆将这些模型转变为更具动态性、甚至更“人性化”的系统,能够保留上下文、从过去学习并灵活适应。
安德里·卡帕西(Andrej Karpathy)曾做过一个贴切的比喻:将大型语言模型的上下文窗口比作计算机的内存(RAM),将模型本身比作中央处理器(CPU)。在这个比喻中,上下文窗口是智能体的“活跃意识”,容纳着所有“工作思考”。但就像打开太多浏览器标签页的笔记本电脑一样,这块内存很快就会被占满——每条消息、每个工具输出、每段信息都会消耗宝贵的token。
这正是上下文工程的艺术所在。我们的目标不是向提示词中塞入更多数据,而是设计出能充分利用活跃上下文窗口的系统——将关键信息留在可及范围内,同时将其他信息巧妙地转移到更智能、更持久的存储中。
上下文卸载是将信息存储在大型语言模型活跃上下文窗口之外的实践,通常借助外部工具或向量数据库。这能释放有限的token空间,确保只有最相关的信息留在上下文中。
智能体记忆架构

人工智能智能体的记忆旨在保留信息,以应对不断变化的任务、记住成功(或失败)的经验,并进行前瞻性思考。要构建稳健的智能体,我们需要分层思考,通常结合不同类型的记忆以达到最佳效果。
短期记忆
短期记忆是智能体的即时工作空间,即“当下”——它被嵌入上下文窗口中,为实时决策和推理提供支持。它通过上下文学习实现,将近期对话、行动或数据直接纳入提示词。
由于受模型token限制的约束,短期记忆的核心挑战是效率。关键在于精简信息,在不遗漏后续处理所需重要细节的前提下,降低成本和延迟。
长期记忆
长期记忆超越了即时上下文窗口,将信息存储在外部,需要时可快速检索。这使智能体能够随着时间的推移,逐步建立对自身环境和用户的持久理解。它通常通过检索增强生成(RAG)实现——智能体查询外部知识库(如向量数据库)以获取相关信息。
长期记忆可存储多种类型的信息:例如,情景记忆用于存储特定事件或过去的交互;语义记忆用于存储通用知识和事实。它还可以存储公司文档、产品手册或精选领域知识库中的信息,使智能体能够提供准确的事实性答案。
混合记忆架构
实际上,大多数现代系统采用混合方式,将短期记忆的速度优势与长期记忆的深度优势相结合。一些先进架构甚至引入了额外的记忆层:
•工作记忆:临时存储与特定多步骤任务相关的信息。例如,当智能体负责预订旅行时,其工作记忆会临时存储目的地、日期和预算,直至任务完成,而不会占用长期记忆空间。•程序记忆:帮助智能体学习和掌握常规流程。通过观察成功的工作流程,智能体可以内化重复任务的步骤序列,随着时间的推移变得更快、更可靠。
有效记忆管理的关键原则
有效的记忆管理可能决定大型语言模型智能体的成败。糟糕的记忆实践会导致错误传播——检索到的错误信息会在后续任务中放大错误。
以下是实现有效记忆管理的基本原则:
•精简和优化记忆:记忆不是“写入即永久”的系统,需要定期维护。定期扫描长期存储,删除重复条目、合并相关信息或丢弃过时事实。一个简单的衡量标准是信息的时效性和检索频率:如果一段记忆既陈旧又很少被访问,尤其是在信息快速更新的环境中(过时信息可能带来风险),就可以考虑删除。例如,客服智能体可以自动删除超过90天且标记为已解决、已关闭或不再活跃的对话记录,仅保留摘要(用于趋势检测和分析)而非完整逐字记录。•选择性存储:并非每次交互都值得永久存入长期记忆。必须实施某种过滤标准,在保存前评估信息的质量和相关性。一段错误的检索信息往往会导致上下文污染,使智能体反复犯同样的错误。一种预防方法是让大型语言模型在将交互信息存入记忆前进行“反思”,并为其分配重要性评分。•根据任务定制架构:不存在“万能”的记忆解决方案。客服机器人需要强大的情景记忆来回顾用户历史,而分析财务报告的智能体则需要丰富的领域特定语义记忆。始终从最简单可行的方法入手(如包含最近n次查询/响应的基础对话缓冲区),并根据用例需求逐步添加更复杂的机制。•精通检索艺术:有效的记忆不在于存储量,而在于能否在合适的时间检索到合适的信息。简单的盲目搜索往往不够,因此可以使用重排序(利用大型语言模型重新排列检索结果以提高相关性)和迭代检索(通过多步骤优化/扩展搜索查询)等高级技术来提升检索信息的质量。查询智能体和个性化智能体等工具内置了这些功能,能够跨多个数据集搜索,并根据用户偏好和交互历史进行重排序。
归根结底,记忆是大型语言模型智能体从“简单响应者”升级为“智能上下文感知系统”的关键。有效的记忆并非被动存储,而是一个主动的管理过程!我们的目标是构建不仅能存储记忆,还能管理记忆的智能体——知道该记住什么、该忘记什么,以及如何利用过去推理未来。
工具

如果说记忆赋予智能体“自我意识”,那么工具就赋予了它们“超能力”。大型语言模型本身是出色的对话者和文本处理工具,但它们却“与世隔绝”——无法查询实时天气、预订航班或查看实时股价。本质上,它们与鲜活的数据和行动世界相脱节。
这就是工具的价值所在。“工具”是任何能将大型语言模型智能体与外部世界连接起来的事物,使其能够在现实世界中直接“行动”,并检索完成任务所需的信息。整合工具,能将智能体从“知识顾问”提升为“实干家”。
工具的上下文工程不仅仅是为智能体提供一份应用程序接口(API)列表和使用说明,更重要的是创建一个连贯的工作流程——让智能体了解可用工具、正确判断特定任务所需的工具,并解读结果以推进任务。
演进:从提示词到行动
现代工具使用的发展历程十分迅速。起初,开发者尝试通过优秀的提示词工程让大型语言模型生成类似命令的文本,这种方法虽然巧妙,但容易出错。
真正的突破是函数调用(又称工具调用)。如今,大多数模型都原生支持这一功能,允许大型语言模型输出结构化的JSON,包含要调用的函数名称和所需参数。
这一功能带来了诸多可能性:
•单一工具:旅行智能体可以使用航班搜索工具,当用户询问“帮我找下周二去东京的航班”时,大型语言模型不会猜测答案,而是生成你提供的函数调用指令,进而查询真实的航空公司应用程序接口(API)。•工具链:对于“帮我规划旧金山周末之旅”这样的复杂请求,智能体可能需要串联多个工具:航班搜索、酒店搜索和本地活动查询。这要求智能体具备推理、规划和执行多步骤工作流程的能力。
工具的上下文工程核心在于如何呈现这些工具。一份优秀的工具描述就像一个微型提示词,能清晰引导模型理解工具的功能、所需输入和返回结果。
编排挑战
给智能体配备工具并不难(大多数情况下),但要让它可靠、安全且高效地使用工具,才是真正的难点。上下文工程的核心任务是“编排”——即当智能体判断使用哪种工具时,管理信息流动和决策过程。
这一过程涉及上下文窗口中的几个关键步骤。我们以基于Elysia编排框架构建的护肤领域知识应用Glowe为例,拆解这些关键编排步骤:
1.工具发现:智能体需要了解可用工具。这通常通过在系统提示词中提供可用工具列表及其描述来实现。这些描述的质量至关重要——它们是智能体理解每个工具功能的唯一指南,帮助模型判断何时使用、更重要的是何时不使用某个工具。在Glowe中,我们在初始化每个新对话树时,都会配置一组带有精确描述的专用工具。2.工具选择与规划(思考):面对用户请求,智能体必须判断是否需要使用工具。如果需要,选择哪一个?对于复杂任务,甚至可能需要串联多个工具,形成一个计划(如“先通过网络查询天气,再使用邮件工具发送摘要”)。在这个案例中,决策智能体正确分析了用户请求,并选择了产品智能体工具。3.参数构建(行动):选择工具后,智能体必须确定传递给工具的参数。例如,若工具是get_weather(city, date),智能体需要从用户查询中提取“旧金山”和“明天”,并将其格式化为正确的参数。这也可能是一个包含使用工具所需信息的结构化请求或应用程序接口(API)调用。在这个案例中,产品智能体需要一个文本查询来搜索产品数据集。注意,智能体在最初生成格式错误的参数导致错误后,能够自我修正(自我修复)——这是编排的另一个关键环节。4.反思(观察):工具执行后,其输出(“观察结果”)会被反馈到上下文窗口中。然后,智能体反思该输出,决定下一步行动:工具使用是否成功?是否生成了回答用户查询所需的信息?或者返回了需要调整方法的错误?可以看到,编排通过这个强大的反馈循环(通常称为“思考-行动-观察”循环)实现。智能体观察行动结果,并利用这些新信息推进下一次“思考”,判断任务是否完成、是否需要使用其他工具,或是否需要向用户请求澄清。
这个“思考-行动-观察”循环构成了Elysia等现代智能体框架的基本推理循环。
工具使用的下一个前沿
工具使用的发展正朝着标准化方向迈进。虽然函数/工具调用效果良好,但它创建了一个碎片化的生态系统——每个人工智能应用程序都需要与每个外部系统进行自定义集成。Anthropic于2024年末推出的模型上下文协议(MCP)解决了这一问题,它提供了一个通用标准,用于连接人工智能应用程序与外部数据源和工具。他们将其称为“人工智能的USB-C”——一种单一协议,任何支持MCP的人工智能应用程序都可以通过它连接到任何MCP服务器。
因此,开发者无需为每个工具构建自定义集成,只需创建单个MCP服务器,通过这个标准化接口暴露其系统。任何支持MCP的人工智能应用程序都可以使用基于JSON-RPC的客户端-服务器通信协议,轻松连接到这些服务器。这将原本的M×N集成问题(M个应用程序每个都需要为N个工具编写自定义代码)转化为更简单的M+N问题。
这种向可组合、标准化架构的转变(框架使开发者能够通过模块化、可互操作的组件构建智能体)代表了人工智能工具的未来。它将工程师的角色从编写自定义集成转变为编排自适应系统,这些系统可以轻松连接到任何标准化外部系统。
总结
上下文工程不仅仅是提示词优化、检索系统构建或人工智能架构设计——它是构建能够在各种用途和用户场景中可靠运行的互联、动态系统的过程。本电子书描述的所有组件都将随着新技术、新模型和新发现的出现而不断演进,但真正实用的系统与失败的人工智能应用之间的区别,在于它们在整个架构中对上下文的工程设计水平。我们不再仅仅局限于向模型发送提示词,而是开始构建模型赖以运行的“世界”。
作为开发者、工程师和创造者,我们深知:最优秀的人工智能系统并非源于更大的模型,而是源于更卓越的工程设计。
如何学习大模型 AI ?
由于新岗位的生产效率,要优于被取代岗位的生产效率,所以实际上整个社会的生产效率是提升的。
但是具体到个人,只能说是:
“最先掌握AI的人,将会比较晚掌握AI的人有竞争优势”。
这句话,放在计算机、互联网、移动互联网的开局时期,都是一样的道理。
我在一线互联网企业工作十余年里,指导过不少同行后辈。帮助很多人得到了学习和成长。
我意识到有很多经验和知识值得分享给大家,也可以通过我们的能力和经验解答大家在人工智能学习中的很多困惑,所以在工作繁忙的情况下还是坚持各种整理和分享。但苦于知识传播途径有限,很多互联网行业朋友无法获得正确的资料得到学习提升,故此将并将重要的AI大模型资料包括AI大模型入门学习思维导图、精品AI大模型学习书籍手册、视频教程、实战学习等录播视频免费分享出来。
这份完整版的大模型 AI 学习资料已经上传CSDN,朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费】


为什么要学习大模型?
我国在A大模型领域面临人才短缺,数量与质量均落后于发达国家。2023年,人才缺口已超百万,凸显培养不足。随着AI技术飞速发展,预计到2025年,这一缺口将急剧扩大至400万,严重制约我国AI产业的创新步伐。加强人才培养,优化教育体系,国际合作并进是破解困局、推动AI发展的关键。


大模型入门到实战全套学习大礼包
1、大模型系统化学习路线
作为学习AI大模型技术的新手,方向至关重要。 正确的学习路线可以为你节省时间,少走弯路;方向不对,努力白费。这里我给大家准备了一份最科学最系统的学习成长路线图和学习规划,带你从零基础入门到精通!

2、大模型学习书籍&文档
学习AI大模型离不开书籍文档,我精选了一系列大模型技术的书籍和学习文档(电子版),它们由领域内的顶尖专家撰写,内容全面、深入、详尽,为你学习大模型提供坚实的理论基础。

3、AI大模型最新行业报告
2025最新行业报告,针对不同行业的现状、趋势、问题、机会等进行系统地调研和评估,以了解哪些行业更适合引入大模型的技术和应用,以及在哪些方面可以发挥大模型的优势。

4、大模型项目实战&配套源码
学以致用,在项目实战中检验和巩固你所学到的知识,同时为你找工作就业和职业发展打下坚实的基础。

5、大模型大厂面试真题
面试不仅是技术的较量,更需要充分的准备。在你已经掌握了大模型技术之后,就需要开始准备面试,我精心整理了一份大模型面试题库,涵盖当前面试中可能遇到的各种技术问题,让你在面试中游刃有余。

适用人群

第一阶段(10天):初阶应用
该阶段让大家对大模型 AI有一个最前沿的认识,对大模型 AI 的理解超过 95% 的人,可以在相关讨论时发表高级、不跟风、又接地气的见解,别人只会和 AI 聊天,而你能调教 AI,并能用代码将大模型和业务衔接。
- 大模型 AI 能干什么?
- 大模型是怎样获得「智能」的?
- 用好 AI 的核心心法
- 大模型应用业务架构
- 大模型应用技术架构
- 代码示例:向 GPT-3.5 灌入新知识
- 提示工程的意义和核心思想
- Prompt 典型构成
- 指令调优方法论
- 思维链和思维树
- Prompt 攻击和防范
- …
第二阶段(30天):高阶应用
该阶段我们正式进入大模型 AI 进阶实战学习,学会构造私有知识库,扩展 AI 的能力。快速开发一个完整的基于 agent 对话机器人。掌握功能最强的大模型开发框架,抓住最新的技术进展,适合 Python 和 JavaScript 程序员。
- 为什么要做 RAG
- 搭建一个简单的 ChatPDF
- 检索的基础概念
- 什么是向量表示(Embeddings)
- 向量数据库与向量检索
- 基于向量检索的 RAG
- 搭建 RAG 系统的扩展知识
- 混合检索与 RAG-Fusion 简介
- 向量模型本地部署
- …
第三阶段(30天):模型训练
恭喜你,如果学到这里,你基本可以找到一份大模型 AI相关的工作,自己也能训练 GPT 了!通过微调,训练自己的垂直大模型,能独立训练开源多模态大模型,掌握更多技术方案。
到此为止,大概2个月的时间。你已经成为了一名“AI小子”。那么你还想往下探索吗?
- 为什么要做 RAG
- 什么是模型
- 什么是模型训练
- 求解器 & 损失函数简介
- 小实验2:手写一个简单的神经网络并训练它
- 什么是训练/预训练/微调/轻量化微调
- Transformer结构简介
- 轻量化微调
- 实验数据集的构建
- …
第四阶段(20天):商业闭环
对全球大模型从性能、吞吐量、成本等方面有一定的认知,可以在云端和本地等多种环境下部署大模型,找到适合自己的项目/创业方向,做一名被 AI 武装的产品经理。
- 硬件选型
- 带你了解全球大模型
- 使用国产大模型服务
- 搭建 OpenAI 代理
- 热身:基于阿里云 PAI 部署 Stable Diffusion
- 在本地计算机运行大模型
- 大模型的私有化部署
- 基于 vLLM 部署大模型
- 案例:如何优雅地在阿里云私有部署开源大模型
- 部署一套开源 LLM 项目
- 内容安全
- 互联网信息服务算法备案
- …
学习是一个过程,只要学习就会有挑战。天道酬勤,你越努力,就会成为越优秀的自己。
如果你能在15天内完成所有的任务,那你堪称天才。然而,如果你能完成 60-70% 的内容,你就已经开始具备成为一名大模型 AI 的正确特征了。
这份完整版的大模型 AI 学习资料已经上传CSDN,朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费】

更多推荐

所有评论(0)