<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
    <channel>
        <title>Prompt Engineering on 文艺技术笔记</title>
        <link>https://wenyiblog.top/tags/prompt-engineering/</link>
        <description>Recent content in Prompt Engineering on 文艺技术笔记</description>
        <generator>Hugo -- gohugo.io</generator>
        <language>zh-cn</language>
        <copyright>文艺技术笔记 | 软件工程师文艺</copyright>
        <lastBuildDate>Thu, 09 Jul 2026 21:00:00 +0800</lastBuildDate><atom:link href="https://wenyiblog.top/tags/prompt-engineering/index.xml" rel="self" type="application/rss+xml" /><item>
        <title>大模型 Agent 的上下文工程：从 Prompt Engineering 到 Context Engineering 的范式跃迁</title>
        <link>https://wenyiblog.top/2026/07/context-engineering-paradigm/</link>
        <pubDate>Thu, 09 Jul 2026 21:00:00 +0800</pubDate>
        
        <guid>https://wenyiblog.top/2026/07/context-engineering-paradigm/</guid>
        <description>&lt;h2 id=&#34;模型够强了问题出在哪&#34;&gt;&lt;a href=&#34;#%e6%a8%a1%e5%9e%8b%e5%a4%9f%e5%bc%ba%e4%ba%86%e9%97%ae%e9%a2%98%e5%87%ba%e5%9c%a8%e5%93%aa&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;模型够强了，问题出在哪
&lt;/h2&gt;&lt;p&gt;有句话说，给一个人再好的脑子，把他关在一间什么都没有的房间里，他也做不出什么像样的决策。大模型 Agent 面对的困境与此如出一辙。&lt;/p&gt;
&lt;p&gt;2025 年以来，主流大模型的推理能力已经非常强悍——逻辑链、数学证明、代码生成、多步规划，样样拿得起来。但当这些模型被包装成 Agent 投入实际业务场景后，表现却经常让人失望：回答牛头不对马嘴，忽略关键背景信息，在多轮对话中前后矛盾。&lt;/p&gt;
&lt;p&gt;问题不在模型本身。&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;问题在于上下文。&lt;/strong&gt; 你给模型看的信息决定了它能做出什么判断。一个上下文混乱、信息缺失、噪声泛滥的系统，即便底层跑着千亿参数的顶级模型，输出也只能是垃圾。&lt;/p&gt;
&lt;p&gt;这就是为什么过去一年多，越来越多团队把精力从&amp;quot;怎么挑更好的模型&amp;quot;转向了&amp;quot;怎么喂更好的上下文&amp;quot;。这个转向有一个正式的名字：&lt;strong&gt;Context Engineering&lt;/strong&gt;——上下文工程。&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&#34;prompt-engineering-做到了极限&#34;&gt;&lt;a href=&#34;#prompt-engineering-%e5%81%9a%e5%88%b0%e4%ba%86%e6%9e%81%e9%99%90&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;Prompt Engineering 做到了极限
&lt;/h2&gt;&lt;h3 id=&#34;它解决了什么问题&#34;&gt;&lt;a href=&#34;#%e5%ae%83%e8%a7%a3%e5%86%b3%e4%ba%86%e4%bb%80%e4%b9%88%e9%97%ae%e9%a2%98&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;它解决了什么问题
&lt;/h3&gt;&lt;p&gt;2023 到 2024 年，Prompt Engineering 几乎是大模型应用的全部技术含量。怎么写指令让模型听话、怎么设计 Few-shot 示例让模型模仿、怎么用 Chain-of-Thought 引导推理——这些技巧确实让模型输出质量有了明显提升。&lt;/p&gt;
&lt;p&gt;但 Prompt Engineering 有一个天然的边界：&lt;strong&gt;它只处理&amp;quot;你主动告诉模型的话&amp;quot;。&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;一个典型的 Agent 调用中，用户编写的 Prompt 可能只占整个输入 token 的 3%-5%。剩下的 95% 以上全部是系统自动组装的上下文——系统指令、对话历史、工具返回结果、检索片段、用户画像。Prompt Engineering 管不到这 95%。&lt;/p&gt;
&lt;h3 id=&#34;它管不到的地方才是关键&#34;&gt;&lt;a href=&#34;#%e5%ae%83%e7%ae%a1%e4%b8%8d%e5%88%b0%e7%9a%84%e5%9c%b0%e6%96%b9%e6%89%8d%e6%98%af%e5%85%b3%e9%94%ae&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;它管不到的地方才是关键
&lt;/h3&gt;&lt;p&gt;来看一组真实的对比：&lt;/p&gt;
&lt;table&gt;
	&lt;thead&gt;
			&lt;tr&gt;
					&lt;th&gt;信息类型&lt;/th&gt;
					&lt;th style=&#34;text-align: center&#34;&gt;占 token 比例&lt;/th&gt;
					&lt;th style=&#34;text-align: center&#34;&gt;Prompt Engineering 是否覆盖&lt;/th&gt;
			&lt;/tr&gt;
	&lt;/thead&gt;
	&lt;tbody&gt;
			&lt;tr&gt;
					&lt;td&gt;用户指令（Prompt）&lt;/td&gt;
					&lt;td style=&#34;text-align: center&#34;&gt;3-5%&lt;/td&gt;
					&lt;td style=&#34;text-align: center&#34;&gt;✅ 核心关注&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;系统提示词&lt;/td&gt;
					&lt;td style=&#34;text-align: center&#34;&gt;5-10%&lt;/td&gt;
					&lt;td style=&#34;text-align: center&#34;&gt;✅ 部分覆盖&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;对话历史&lt;/td&gt;
					&lt;td style=&#34;text-align: center&#34;&gt;15-30%&lt;/td&gt;
					&lt;td style=&#34;text-align: center&#34;&gt;❌ 通常不管理&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;工具调用返回&lt;/td&gt;
					&lt;td style=&#34;text-align: center&#34;&gt;20-40%&lt;/td&gt;
					&lt;td style=&#34;text-align: center&#34;&gt;❌ 完全不管&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;检索片段&lt;/td&gt;
					&lt;td style=&#34;text-align: center&#34;&gt;10-25%&lt;/td&gt;
					&lt;td style=&#34;text-align: center&#34;&gt;❌ 只做 RAG 填充&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;用户画像/偏好&lt;/td&gt;
					&lt;td style=&#34;text-align: center&#34;&gt;5-15%&lt;/td&gt;
					&lt;td style=&#34;text-align: center&#34;&gt;❌ 很少涉及&lt;/td&gt;
			&lt;/tr&gt;
	&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;你精心打磨的那段 Prompt，在模型的整个输入中只是一小撮调味料。真正决定菜好不好吃的，是那一大锅汤底——上下文。&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;如果说 Prompt Engineering 是在精心写一封邮件的正文，那 Context Engineering 是在设计整个邮件系统的信息架构——谁该收到什么、什么时候收到、以什么格式呈现。&lt;/p&gt;
&lt;/blockquote&gt;
&lt;hr&gt;
&lt;h2 id=&#34;从-prompt-到-context不只是多了几个字&#34;&gt;&lt;a href=&#34;#%e4%bb%8e-prompt-%e5%88%b0-context%e4%b8%8d%e5%8f%aa%e6%98%af%e5%a4%9a%e4%ba%86%e5%87%a0%e4%b8%aa%e5%ad%97&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;从 Prompt 到 Context：不只是多了几个字
&lt;/h2&gt;&lt;h3 id=&#34;本质区别在哪&#34;&gt;&lt;a href=&#34;#%e6%9c%ac%e8%b4%a8%e5%8c%ba%e5%88%ab%e5%9c%a8%e5%93%aa&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;本质区别在哪
&lt;/h3&gt;&lt;p&gt;Prompt Engineering 和 Context Engineering 的区别，不是量变，而是质变。&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Prompt Engineering 是单点优化。&lt;/strong&gt; 你写的是一段固定文本，目标是让模型&amp;quot;听懂你的话&amp;quot;。它是一次性的、静态的、面向单次调用的。&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Context Engineering 是系统设计。&lt;/strong&gt; 你设计的是一个动态的信息供给体系，目标是让模型在每次调用时都能&amp;quot;看到正确的东西&amp;quot;。它是持续的、动态的、面向整个交互生命周期的。&lt;/p&gt;
&lt;p&gt;具体来说，区别体现在三个维度：&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;维度一：信息范围。&lt;/strong&gt; Prompt Engineering 关注你手写的那段指令。Context Engineering 关注模型&amp;quot;看到&amp;quot;的所有信息——包括你手写的，也包括系统自动注入的。&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;维度二：时间跨度。&lt;/strong&gt; Prompt Engineering 是一次性设计，写好了就不变。Context Engineering 需要管理信息的时间线——哪些是历史数据、哪些是实时数据、哪些信息已经过期需要剔除。&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;维度三：决策主体。&lt;/strong&gt; Prompt Engineering 由人来决策。Context Engineering 中，很多决策是 Agent 自己做的——它需要判断什么时候该查什么数据、查多少、怎么组织。&lt;/p&gt;
&lt;h3 id=&#34;一个直观的类比&#34;&gt;&lt;a href=&#34;#%e4%b8%80%e4%b8%aa%e7%9b%b4%e8%a7%82%e7%9a%84%e7%b1%bb%e6%af%94&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;一个直观的类比
&lt;/h3&gt;&lt;p&gt;想象你是一个新来的律师助理，需要帮合伙人准备一场庭审。&lt;/p&gt;
&lt;p&gt;Prompt Engineering 相当于合伙人给你说了一句话：&amp;ldquo;帮我准备一下张三诉李四合同纠纷案的材料。&amp;quot;——指令清晰，但仅此而已。&lt;/p&gt;
&lt;p&gt;Context Engineering 相当于合伙人给你一整套工作体系：案件档案管理规范、证据分类标准、法律条文检索系统、历史判例数据库、当事人信息库，外加一套明确的操作手册告诉你什么情况下该调取什么材料。&lt;/p&gt;
&lt;p&gt;同样的合伙人，同样的指令，在两种体系下，你交出来的材料质量天差地别。&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&#34;mcp-协议上下文的标准化管道&#34;&gt;&lt;a href=&#34;#mcp-%e5%8d%8f%e8%ae%ae%e4%b8%8a%e4%b8%8b%e6%96%87%e7%9a%84%e6%a0%87%e5%87%86%e5%8c%96%e7%ae%a1%e9%81%93&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;MCP 协议：上下文的标准化管道
&lt;/h2&gt;&lt;h3 id=&#34;为什么需要一个协议&#34;&gt;&lt;a href=&#34;#%e4%b8%ba%e4%bb%80%e4%b9%88%e9%9c%80%e8%a6%81%e4%b8%80%e4%b8%aa%e5%8d%8f%e8%ae%ae&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;为什么需要一个协议
&lt;/h3&gt;&lt;p&gt;在 MCP 出现之前，Agent 获取上下文的方式极其原始：每个数据源一套定制代码，每种工具一个适配层。接入 CRM 写一套、接数据库写一套、接文档系统又写一套。不仅开发成本高，更致命的是——各数据源返回的格式五花八门，Agent 根本无法统一管理。&lt;/p&gt;
&lt;p&gt;MCP（Model Context Protocol）的核心贡献，是给上下文管理提供了一套标准化的协议层。它不关心你的数据存在哪里、用什么格式存储，它只定义了一套统一的接口规范：Agent 怎么请求数据、Server 怎么返回数据、数据应该携带哪些元信息。&lt;/p&gt;
&lt;h3 id=&#34;mcp-改变了什么&#34;&gt;&lt;a href=&#34;#mcp-%e6%94%b9%e5%8f%98%e4%ba%86%e4%bb%80%e4%b9%88&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;MCP 改变了什么
&lt;/h3&gt;&lt;p&gt;MCP 协议对上下文管理的改变，可以归纳为三点：&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;第一，上下文有了&amp;quot;身份&amp;rdquo;。&lt;/strong&gt; 在传统 RAG 中，检索回来的就是一段纯文本，模型不知道它从哪来、什么时候更新的、可信度如何。MCP 的 Resource 机制让每条数据都携带结构化元信息——来源、时间戳、可信度等级、权限级别。模型在推理时可以据此调整对信息的信任权重。&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;第二，上下文变成了&amp;quot;按需获取&amp;quot;。&lt;/strong&gt; 传统方案是预先检索、一次性灌入。MCP 的 Tools 机制让 Agent 可以在推理过程中主动发起查询——发现信息不够就去查、发现数据可疑就去验证。上下文从&amp;quot;静态注入&amp;quot;变成了&amp;quot;动态构建&amp;quot;。&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;第三，上下文来源可插拔。&lt;/strong&gt; 通过 MCP 协议，新增一个数据源只需要开发一个 MCP Server，不需要改动 Agent 核心代码。这让上下文系统的扩展变得像插 USB 设备一样简单。&lt;/p&gt;
&lt;h3 id=&#34;一个简单的架构示意&#34;&gt;&lt;a href=&#34;#%e4%b8%80%e4%b8%aa%e7%ae%80%e5%8d%95%e7%9a%84%e6%9e%b6%e6%9e%84%e7%a4%ba%e6%84%8f&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;一个简单的架构示意
&lt;/h3&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt; 1
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 2
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 3
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 4
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 5
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 6
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 7
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 8
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 9
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;10
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;11
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;12
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;13
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;14
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-fallback&#34; data-lang=&#34;fallback&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;用户提问
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  │
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  ▼
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Agent 核心（推理引擎）
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  │
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  ├──→ MCP Server A（用户画像）  → 返回结构化偏好数据
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  ├──→ MCP Server B（业务知识库）→ 返回带时间戳的文档片段
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  ├──→ MCP Server C（业务系统）  → 返回实时业务数据
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  │
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  ▼
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;上下文组装器 → 分层、排序、裁剪 → 最终输入
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  │
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  ▼
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;大模型推理 → 输出
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;这个架构的关键在于中间的&amp;quot;上下文组装器&amp;quot;——它不是简单地把所有 MCP 返回的数据拼在一起，而是根据任务需求、token 预算、信息优先级做精细化的组装决策。这就是 Context Engineering 的核心工程环节。&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&#34;三种记忆架构你的-agent-该记住什么&#34;&gt;&lt;a href=&#34;#%e4%b8%89%e7%a7%8d%e8%ae%b0%e5%bf%86%e6%9e%b6%e6%9e%84%e4%bd%a0%e7%9a%84-agent-%e8%af%a5%e8%ae%b0%e4%bd%8f%e4%bb%80%e4%b9%88&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;三种记忆架构：你的 Agent 该记住什么
&lt;/h2&gt;&lt;p&gt;记忆架构是 Context Engineering 的骨架。一个 Agent 能记住多少、记多久、怎么检索，直接决定了它在长周期交互中的表现。&lt;/p&gt;
&lt;h3 id=&#34;架构一无状态阅后即焚&#34;&gt;&lt;a href=&#34;#%e6%9e%b6%e6%9e%84%e4%b8%80%e6%97%a0%e7%8a%b6%e6%80%81%e9%98%85%e5%90%8e%e5%8d%b3%e7%84%9a&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;架构一：无状态——阅后即焚
&lt;/h3&gt;&lt;p&gt;最简单的方案。Agent 不保留任何记忆，每次对话都是全新开始。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;工作方式&lt;/strong&gt;：用户提问 → 检索外部知识库 → 拼装上下文 → 生成回答 → 清空一切&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;适用场景&lt;/strong&gt;：一次性问答、匿名客服、知识库搜索&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;核心优势&lt;/strong&gt;：实现简单、无状态污染、容易水平扩展&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;致命缺陷&lt;/strong&gt;：对话了 50 次，第 51 次 Agent 还是不认识你&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;这种架构下，Agent 本质上是一个&amp;quot;高级搜索引擎&amp;quot;。它能回答问题，但不能积累关系。用户每次都要重复自我介绍、重复说明背景、重复表达偏好。&lt;/p&gt;
&lt;h3 id=&#34;架构二短期记忆对话窗口内的连贯&#34;&gt;&lt;a href=&#34;#%e6%9e%b6%e6%9e%84%e4%ba%8c%e7%9f%ad%e6%9c%9f%e8%ae%b0%e5%bf%86%e5%af%b9%e8%af%9d%e7%aa%97%e5%8f%a3%e5%86%85%e7%9a%84%e8%bf%9e%e8%b4%af&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;架构二：短期记忆——对话窗口内的连贯
&lt;/h3&gt;&lt;p&gt;中等复杂度的方案。Agent 保留当前会话的对话记录，用滑动窗口或摘要压缩来管理长度。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;工作方式&lt;/strong&gt;：保留最近 N 轮对话 + 更早内容的摘要 → 拼装上下文 → 推理&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;适用场景&lt;/strong&gt;：单次客服会话、多轮对话机器人&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;核心优势&lt;/strong&gt;：能在单次会话中维持连贯性&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;致命缺陷&lt;/strong&gt;：会话结束即遗忘，摘要过程丢失关键细节&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;一个典型的翻车场景：用户在对话开头说了&amp;quot;我是高级会员&amp;quot;，中间聊了 20 轮其他话题后，摘要系统把这句话压缩成了&amp;quot;用户提及了账户信息&amp;quot;。到最后 Agent 给出方案时，完全没考虑高级会员的专属权益。&lt;/p&gt;
&lt;h3 id=&#34;架构三长期记忆跨会话的持续认知&#34;&gt;&lt;a href=&#34;#%e6%9e%b6%e6%9e%84%e4%b8%89%e9%95%bf%e6%9c%9f%e8%ae%b0%e5%bf%86%e8%b7%a8%e4%bc%9a%e8%af%9d%e7%9a%84%e6%8c%81%e7%bb%ad%e8%ae%a4%e7%9f%a5&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;架构三：长期记忆——跨会话的持续认知
&lt;/h3&gt;&lt;p&gt;最成熟的方案。Agent 拥有持久化的结构化记忆，跨会话保留用户的关键信息。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;工作方式&lt;/strong&gt;：长期记忆自动注入 → 当前会话上下文 → MCP 按需获取 → 分层组装 → 推理&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;适用场景&lt;/strong&gt;：个人助理、长期客服、编程助手&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;核心优势&lt;/strong&gt;：越用越懂用户，体验随时间递增&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;核心挑战&lt;/strong&gt;：记忆的写入判断、冲突处理、遗忘策略&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;三种架构的详细对比：&lt;/p&gt;
&lt;table&gt;
	&lt;thead&gt;
			&lt;tr&gt;
					&lt;th&gt;维度&lt;/th&gt;
					&lt;th&gt;无状态&lt;/th&gt;
					&lt;th&gt;短期记忆&lt;/th&gt;
					&lt;th&gt;长期记忆&lt;/th&gt;
			&lt;/tr&gt;
	&lt;/thead&gt;
	&lt;tbody&gt;
			&lt;tr&gt;
					&lt;td&gt;记忆持久性&lt;/td&gt;
					&lt;td&gt;无&lt;/td&gt;
					&lt;td&gt;会话内&lt;/td&gt;
					&lt;td&gt;永久&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;实现复杂度&lt;/td&gt;
					&lt;td&gt;低&lt;/td&gt;
					&lt;td&gt;中&lt;/td&gt;
					&lt;td&gt;高&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;用户体验&lt;/td&gt;
					&lt;td&gt;每次重来&lt;/td&gt;
					&lt;td&gt;单次连贯&lt;/td&gt;
					&lt;td&gt;持续积累&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;信息丢失风险&lt;/td&gt;
					&lt;td&gt;不适用&lt;/td&gt;
					&lt;td&gt;高（摘要损耗）&lt;/td&gt;
					&lt;td&gt;低（结构化存储）&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;隐私合规压力&lt;/td&gt;
					&lt;td&gt;低&lt;/td&gt;
					&lt;td&gt;低&lt;/td&gt;
					&lt;td&gt;高&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;典型 token 开销&lt;/td&gt;
					&lt;td&gt;少&lt;/td&gt;
					&lt;td&gt;中&lt;/td&gt;
					&lt;td&gt;大&lt;/td&gt;
			&lt;/tr&gt;
	&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;选择哪种架构，取决于业务场景的交互深度。如果用户跟你的 Agent 只打一两次交道，无状态就够了。如果用户是长期使用者，长期记忆架构带来的体验提升是碾压级的。&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&#34;工程化落地上下文怎么裁剪排序压缩&#34;&gt;&lt;a href=&#34;#%e5%b7%a5%e7%a8%8b%e5%8c%96%e8%90%bd%e5%9c%b0%e4%b8%8a%e4%b8%8b%e6%96%87%e6%80%8e%e4%b9%88%e8%a3%81%e5%89%aa%e6%8e%92%e5%ba%8f%e5%8e%8b%e7%bc%a9&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;工程化落地：上下文怎么裁剪、排序、压缩
&lt;/h2&gt;&lt;p&gt;理念层面的东西聊完了，接下来进入真正的工程环节。Context Engineering 最难的部分不是&amp;quot;知道该做什么&amp;quot;，而是&amp;quot;在有限的 token 预算内，把最有价值的信息塞进去&amp;quot;。&lt;/p&gt;
&lt;h3 id=&#34;上下文裁剪不是所有信息都值得上桌&#34;&gt;&lt;a href=&#34;#%e4%b8%8a%e4%b8%8b%e6%96%87%e8%a3%81%e5%89%aa%e4%b8%8d%e6%98%af%e6%89%80%e6%9c%89%e4%bf%a1%e6%81%af%e9%83%bd%e5%80%bc%e5%be%97%e4%b8%8a%e6%a1%8c&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;上下文裁剪：不是所有信息都值得上桌
&lt;/h3&gt;&lt;p&gt;一个 Agent 在运行时可以获取到的信息量，往往远超模型的上下文窗口。CRM 里几万条客户记录、知识库中上千篇文档、对话历史上百轮记录——全部塞进去不现实，也不该塞。&lt;/p&gt;
&lt;p&gt;裁剪策略的核心是&lt;strong&gt;相关性过滤&lt;/strong&gt;：&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;策略一：任务相关性裁剪。&lt;/strong&gt; 根据当前任务类型，只加载与该任务相关的信息类别。比如用户问的是退款问题，就不需要加载他的浏览历史和收藏记录。&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;策略二：时效性裁剪。&lt;/strong&gt; 设定时间阈值，丢弃超过一定期限的信息。一个月前的工单记录在回答当前问题时通常没有参考价值——除非用户主动提及。&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;策略三：去重裁剪。&lt;/strong&gt; 多条信息源可能返回重叠内容。需要在组装阶段做去重，避免同一段信息占用多份 token。&lt;/p&gt;
&lt;h3 id=&#34;优先级排序好的信息先上桌&#34;&gt;&lt;a href=&#34;#%e4%bc%98%e5%85%88%e7%ba%a7%e6%8e%92%e5%ba%8f%e5%a5%bd%e7%9a%84%e4%bf%a1%e6%81%af%e5%85%88%e4%b8%8a%e6%a1%8c&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;优先级排序：好的信息先上桌
&lt;/h3&gt;&lt;p&gt;裁剪之后，剩下的信息也不是平等地堆在一起。需要有一套排序机制，确保最重要的信息出现在模型注意力最集中的位置。&lt;/p&gt;
&lt;p&gt;排序的优先级通常遵循这个逻辑：&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;系统指令和安全约束&lt;/strong&gt;——绝对优先级，永远在最前面&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;当前任务的直接上下文&lt;/strong&gt;——用户刚刚说了什么、正在做什么&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;用户画像和偏好&lt;/strong&gt;——影响回答策略的关键信息&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;高相关度的检索结果&lt;/strong&gt;——直接回答问题的知识片段&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;补充性背景信息&lt;/strong&gt;——空间允许时才加入&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;一个容易忽略的细节：&lt;strong&gt;信息在 Prompt 中的位置影响模型对它的关注度。&lt;/strong&gt; 多数模型对开头和结尾的信息关注度更高，中间部分容易被&amp;quot;遗忘&amp;quot;。所以最重要的信息应该放在上下文的首尾两端，次要信息放中间。&lt;/p&gt;
&lt;h3 id=&#34;压缩策略同样的信息更少的-token&#34;&gt;&lt;a href=&#34;#%e5%8e%8b%e7%bc%a9%e7%ad%96%e7%95%a5%e5%90%8c%e6%a0%b7%e7%9a%84%e4%bf%a1%e6%81%af%e6%9b%b4%e5%b0%91%e7%9a%84-token&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;压缩策略：同样的信息，更少的 token
&lt;/h3&gt;&lt;p&gt;当裁剪和排序都做完了，token 预算还是不够，就需要压缩。&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;摘要压缩：&lt;/strong&gt; 对长文本做摘要提取。但不是简单地用另一个模型去&amp;quot;总结&amp;quot;——这太慢了。更好的做法是预设模板，对结构化数据做格式化精简。比如：&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;2
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;3
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;4
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;5
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;6
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;7
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-fallback&#34; data-lang=&#34;fallback&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;压缩前（380 tokens）：
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&amp;#34;客户张先生于2026年6月15日通过在线客服渠道提交了一个退款申请，
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;申请原因是他在6月12日购买的商品（订单号：ORD-20260612-8847）
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;存在质量问题，具体描述为商品外包装破损且内部零件缺失……&amp;#34;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;压缩后（45 tokens）：
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&amp;#34;[退款] 张先生/ORD-0612-8847/质量问题(包装破损+零件缺失)/6月15日提交&amp;#34;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;信息量几乎没有损失，但 token 消耗降低了 88%。&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;选择性提取：&lt;/strong&gt; 对一个完整的数据对象，只提取与当前任务相关的字段。用户画像可能有 50 个字段，但如果当前任务是处理退款，只需要加载&amp;quot;会员等级、历史退款记录、账户状态&amp;quot;这几个字段。&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;引用而非内联：&lt;/strong&gt; 对于大段文档，不在上下文中内联全文，而是给出一个简短摘要加上引用标识。如果模型在推理过程中需要查看原文，再通过 MCP 工具按需加载。&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&#34;实战案例客服-agent-准确率提升-40&#34;&gt;&lt;a href=&#34;#%e5%ae%9e%e6%88%98%e6%a1%88%e4%be%8b%e5%ae%a2%e6%9c%8d-agent-%e5%87%86%e7%a1%ae%e7%8e%87%e6%8f%90%e5%8d%87-40&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;实战案例：客服 Agent 准确率提升 40%
&lt;/h2&gt;&lt;p&gt;说了这么多理论，来看一个真实案例。&lt;/p&gt;
&lt;h3 id=&#34;改造前的困境&#34;&gt;&lt;a href=&#34;#%e6%94%b9%e9%80%a0%e5%89%8d%e7%9a%84%e5%9b%b0%e5%a2%83&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;改造前的困境
&lt;/h3&gt;&lt;p&gt;一个中型电商平台的客服 Agent，日均处理 3000+ 条用户咨询。底层用的是某主流大模型，能力不差，但实际表现让人头疼：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;回答准确率 62%&lt;/strong&gt;：大量回答跟用户的实际情况对不上&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;多轮对话崩溃率高&lt;/strong&gt;：超过 5 轮后，Agent 经常&amp;quot;忘记&amp;quot;前面说过的内容&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;用户重复描述率 45%&lt;/strong&gt;：近一半的用户需要在对话中途重新说明自己的问题&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;分析后发现，问题几乎全部出在上下文管理上：&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;信息缺失&lt;/strong&gt;：Agent 不知道用户的会员等级、历史订单、之前的投诉记录&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;信息过时&lt;/strong&gt;：上下文里混入了几个月前的旧工单，干扰当前判断&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;信息冗余&lt;/strong&gt;：同一通对话里，知识库检索回来了 8 段高度相似的政策文本&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;缺乏结构&lt;/strong&gt;：所有信息平铺在一起，模型分不清哪些是用户说的、哪些是系统返回的&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id=&#34;改造方案&#34;&gt;&lt;a href=&#34;#%e6%94%b9%e9%80%a0%e6%96%b9%e6%a1%88&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;改造方案
&lt;/h3&gt;&lt;p&gt;整个改造围绕 Context Engineering 做了四件事：&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;第一，接入长期记忆。&lt;/strong&gt; 为每个用户建立结构化画像——会员等级、历史订单摘要、偏好渠道、过往投诉类型。这些信息在每次对话开始时自动注入，不再需要用户重复自我介绍。&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;第二，MCP 化数据源接入。&lt;/strong&gt; 把订单系统、物流系统、退换货政策库分别封装成 MCP Server。Agent 在推理过程中根据用户的问题类型，按需调用对应的 Server 获取数据，而不是预先把所有可能相关的信息全部检索出来。&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;第三，实施上下文分层。&lt;/strong&gt; 每次调用模型时，上下文按照&amp;quot;系统指令 → 用户画像 → 当前会话记录 → MCP 按需数据 → 补充知识&amp;quot;的优先级分层组装，每层有明确的 token 预算上限。&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;第四，压缩与裁剪。&lt;/strong&gt; 对历史对话记录做结构化压缩（提取关键事实和结论，丢弃寒暄和重复内容）；对检索结果做去重和排序（同一政策只保留最相关的一条）；对超过 7 天的旧工单做时效性裁剪。&lt;/p&gt;
&lt;h3 id=&#34;改造结果&#34;&gt;&lt;a href=&#34;#%e6%94%b9%e9%80%a0%e7%bb%93%e6%9e%9c&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;改造结果
&lt;/h3&gt;&lt;table&gt;
	&lt;thead&gt;
			&lt;tr&gt;
					&lt;th&gt;指标&lt;/th&gt;
					&lt;th style=&#34;text-align: center&#34;&gt;改造前&lt;/th&gt;
					&lt;th style=&#34;text-align: center&#34;&gt;改造后&lt;/th&gt;
					&lt;th style=&#34;text-align: center&#34;&gt;变化&lt;/th&gt;
			&lt;/tr&gt;
	&lt;/thead&gt;
	&lt;tbody&gt;
			&lt;tr&gt;
					&lt;td&gt;回答准确率&lt;/td&gt;
					&lt;td style=&#34;text-align: center&#34;&gt;62%&lt;/td&gt;
					&lt;td style=&#34;text-align: center&#34;&gt;87%&lt;/td&gt;
					&lt;td style=&#34;text-align: center&#34;&gt;+40%&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;多轮对话崩溃率&lt;/td&gt;
					&lt;td style=&#34;text-align: center&#34;&gt;34%&lt;/td&gt;
					&lt;td style=&#34;text-align: center&#34;&gt;11%&lt;/td&gt;
					&lt;td style=&#34;text-align: center&#34;&gt;-68%&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;用户重复描述率&lt;/td&gt;
					&lt;td style=&#34;text-align: center&#34;&gt;45%&lt;/td&gt;
					&lt;td style=&#34;text-align: center&#34;&gt;18%&lt;/td&gt;
					&lt;td style=&#34;text-align: center&#34;&gt;-60%&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;平均对话轮次&lt;/td&gt;
					&lt;td style=&#34;text-align: center&#34;&gt;7.2 轮&lt;/td&gt;
					&lt;td style=&#34;text-align: center&#34;&gt;4.8 轮&lt;/td&gt;
					&lt;td style=&#34;text-align: center&#34;&gt;-33%&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;用户满意度评分&lt;/td&gt;
					&lt;td style=&#34;text-align: center&#34;&gt;3.1/5&lt;/td&gt;
					&lt;td style=&#34;text-align: center&#34;&gt;4.2/5&lt;/td&gt;
					&lt;td style=&#34;text-align: center&#34;&gt;+35%&lt;/td&gt;
			&lt;/tr&gt;
	&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;最值得注意的是&amp;quot;平均对话轮次&amp;quot;的下降。从 7.2 轮降到 4.8 轮，意味着用户不需要反复解释，Agent 能在更少的交互中理解并解决问题。这直接归功于长期记忆和结构化上下文的引入——Agent 在对话开始时就已经&amp;quot;认识&amp;quot;这个用户了。&lt;/p&gt;
&lt;h3 id=&#34;一个细节的对比&#34;&gt;&lt;a href=&#34;#%e4%b8%80%e4%b8%aa%e7%bb%86%e8%8a%82%e7%9a%84%e5%af%b9%e6%af%94&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;一个细节的对比
&lt;/h3&gt;&lt;p&gt;改造前，用户问&amp;quot;我的退款到哪了&amp;quot;，Agent 收到的上下文是：&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;2
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;3
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;4
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-fallback&#34; data-lang=&#34;fallback&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;[系统指令] 你是一个客服机器人...（2000 tokens）
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;[对话历史] 过去10轮完整对话...（3000 tokens）
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;[检索结果] 8段退款政策文本...（4000 tokens）
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;[用户当前问题] 我的退款到哪了（15 tokens）
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;改造后，同样的问题，Agent 收到的上下文变成了：&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;2
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;3
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;4
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;5
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;6
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-fallback&#34; data-lang=&#34;fallback&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;[系统指令] 精简版客服指令...（500 tokens）
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;[用户画像] 王女士/金卡会员/近3月2笔退款/偏好快捷处理...（120 tokens）
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;[当前会话] 前3轮关键事实摘要...（200 tokens）
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;[MCP:订单系统] 最近一笔退款单/ORD-0702/审批中/预计7月10日到账...（80 tokens）
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;[MCP:退款政策] 金卡会员退款时效条款（仅此一条）...（150 tokens）
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;[用户当前问题] 我的退款到哪了（15 tokens）
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;总 token 从近 10000 降到了约 1000，但信息密度提高了数倍。模型拿到的每一条信息都跟当前问题直接相关，没有噪声、没有冗余、没有过时数据。&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&#34;被忽视的工程细节&#34;&gt;&lt;a href=&#34;#%e8%a2%ab%e5%bf%bd%e8%a7%86%e7%9a%84%e5%b7%a5%e7%a8%8b%e7%bb%86%e8%8a%82&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;被忽视的工程细节
&lt;/h2&gt;&lt;p&gt;Context Engineering 看起来是&amp;quot;管理信息&amp;quot;的事情，但实际操作中有几个容易被忽略的工程细节，它们往往决定了系统是停留在 Demo 阶段还是能真正上线。&lt;/p&gt;
&lt;h3 id=&#34;token-预算是硬约束&#34;&gt;&lt;a href=&#34;#token-%e9%a2%84%e7%ae%97%e6%98%af%e7%a1%ac%e7%ba%a6%e6%9d%9f&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;Token 预算是硬约束
&lt;/h3&gt;&lt;p&gt;不管模型的上下文窗口有多大，token 都是有成本的——不仅是金钱成本（API 按 token 计费），更是延迟成本（输入越长，推理越慢）和质量成本（信息过多导致注意力分散）。&lt;/p&gt;
&lt;p&gt;一个成熟的系统会为每次模型调用设定明确的 token 预算，并且有预算超支时的降级策略。比如：当可用 token 不足时，先砍背景层、再砍按需层、最后才动高优层。&lt;/p&gt;
&lt;h3 id=&#34;上下文的一致性校验&#34;&gt;&lt;a href=&#34;#%e4%b8%8a%e4%b8%8b%e6%96%87%e7%9a%84%e4%b8%80%e8%87%b4%e6%80%a7%e6%a0%a1%e9%aa%8c&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;上下文的一致性校验
&lt;/h3&gt;&lt;p&gt;当上下文来自多个 MCP Server 时，信息之间可能互相矛盾。CRM 系统说用户是&amp;quot;金卡会员&amp;quot;，订单系统说用户&amp;quot;上个月已降级为银卡&amp;quot;。如果两条信息同时进入上下文，模型会困惑。&lt;/p&gt;
&lt;p&gt;解决办法是在上下文组装阶段加入一致性校验：对于同一实体的同一属性，只保留最新版本的数据，并在元信息中标注&amp;quot;此数据已于 XX 日期更新&amp;quot;。&lt;/p&gt;
&lt;h3 id=&#34;可观测性&#34;&gt;&lt;a href=&#34;#%e5%8f%af%e8%a7%82%e6%b5%8b%e6%80%a7&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;可观测性
&lt;/h3&gt;&lt;p&gt;你必须能看到每次模型调用时，上下文到底长什么样。这不仅是为了调试，更是为了持续优化。一个基本的可观测性方案应该记录：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;每次调用的完整上下文快照&lt;/li&gt;
&lt;li&gt;各层级信息的 token 占用比例&lt;/li&gt;
&lt;li&gt;MCP 调用的延迟和返回状态&lt;/li&gt;
&lt;li&gt;模型输出质量与上下文组成之间的相关性&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;这些数据积累下来，就能回答一个关键问题：&lt;strong&gt;哪些信息对模型表现有正向贡献，哪些是噪声。&lt;/strong&gt;&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&#34;从手艺人到工程师&#34;&gt;&lt;a href=&#34;#%e4%bb%8e%e6%89%8b%e8%89%ba%e4%ba%ba%e5%88%b0%e5%b7%a5%e7%a8%8b%e5%b8%88&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;从&amp;quot;手艺人&amp;quot;到&amp;quot;工程师&amp;quot;
&lt;/h2&gt;&lt;p&gt;Context Engineering 的兴起，本质上反映了 AI 应用从手工作坊走向工程化生产的必然趋势。&lt;/p&gt;
&lt;p&gt;在 Prompt Engineering 时代，AI 应用的质量高度依赖个别&amp;quot;写 Prompt 很厉害的人&amp;quot;。这些人对模型的脾气了如指掌，能写出精妙绝伦的指令，让模型输出质量翻倍。但他们的能力难以复制、难以规模化、难以系统化。&lt;/p&gt;
&lt;p&gt;Context Engineering 把这个重心从个人能力转移到了系统设计上。好的上下文管理不依赖于某个天才写了一段绝妙的 Prompt，而是依赖于一套可复用、可迭代、可监控的工程体系。团队里任何一个人都能维护和优化这套系统，不需要特殊天赋。&lt;/p&gt;
&lt;p&gt;这就像软件工程从&amp;quot;个人英雄主义&amp;quot;走向&amp;quot;工程化协作&amp;quot;的历程。早期编程靠的是个人天才的灵光一现，现代软件开发靠的是架构设计、代码规范、测试体系、持续集成。Context Engineering 正在把大模型应用带入同样的轨道。&lt;/p&gt;
&lt;p&gt;当行业越来越成熟，你会发现一个规律：那些真正跑在生产环境里、每天服务百万用户的 Agent 系统，背后都不是靠一段精妙的 Prompt 在支撑，而是靠一套扎实的上下文工程体系在运转。模型会换代、Prompt 会过时，但好的信息架构设计方法论是持久的。&lt;/p&gt;
&lt;p&gt;上下文工程的本质，是承认一个朴素的事实——再聪明的脑袋，也需要好的信息环境才能做出好的判断。这个事实不会因为模型越来越强而改变，反而会因为模型越来越强而被放大：当模型能力不再是瓶颈，上下文质量就成了唯一的胜负手。&lt;/p&gt;
</description>
        </item>
        
    </channel>
</rss>
