生成式人工智能与机器学习导论2025 · 第2讲:上下文工程(Context Engineering)——AI Agent 背后的关键技术
生成式人工智能与机器学习导论2025 · 第2讲:上下文工程(Context Engineering)——AI Agent 背后的关键技术
在生成式人工智能(Generative AI)与大型语言模型(Large Language Model, LLM)不断演进的浪潮中,上下文工程(Context Engineering)逐渐被公认为推动 AI Agent 真正具备智能行为的关键基础。它不仅是 Prompt Engineering 的延伸,更是让模型能够整合世界知识、记忆、个人偏好与任务约束的系统性方法论。
本文深入整理台大李宏毅教授于《生成式人工智能与机器学习导论2025》第2讲中的核心观点,并扩充理论背景与实务应用,从概念源起、技术结构到未来发展方向,全方位阐述 Context Engineering 的核心价值与挑战。我们将从语言模型的本质出发,探讨为什么在 AI Agent 时代,Context Engineering 成为了一项关键的技术。
我们在本文中所指的 AI Agent
本文的 AI Agent 指:人类仅给定“目标(Goal)”,由 Agent 自主在“观察(Observation)→行动(Action)→观察”的循环中,规划并执行多步行为,直至达成目标。与“一问一答”的指令式交互不同,Agent 面向开放环境,需在不确定与变化中自我调整计划。
RL 视角 vs LLM-Agent 路线
- 传统做法(RL):将目标映射为可优化的奖励(reward),为每个任务训练专属模型(如 AlphaGo)。优点是稳定、可验证;缺点是复用差、需为每个任务设计奖励并重训。
- LLM-Agent 路线:直接以自然语言描述目标、环境与中间反馈(如编译错误 log),由模型在上下文中“接龙”出下一步行动;无需设计 reward,即可借助工具/检索/记忆完成复杂任务。优势在通用性、可塑性与快速落地。
Prompt vs Context:从神奇咒语到信息组织
Prompt Engineering 曾依靠措辞与格式的小技巧带来增益,但随着模型能力提升,这类“神奇咒语”的边际效应快速下降。Context Engineering 将重心从“怎么说”转向“说什么”与“如何组织信息”:通过明确任务、补足场景前提与少而精的高质量示例,让模型稳定理解问题并输出可验证的结果。
- 同链路:输入→模型→输出相同。
- Prompt 侧:输入格式与“神奇咒语”。
- Context 侧:自动化管理(使用语言模型)。
- 重点:关注“组织什么信息/如何管理”,而非修辞。
- 提示:箭头展示从输入到生成下一个 token 的流程。
- 触发语:Zero-shot CoT(如 “Let’s work this out…”)。
- 表现:在部分任务显著提升。
- 技巧:结构化提示(##Instruction##/##Example##)。
- 局限:依赖任务与模型版本。
- 总结:助益存在,上限受限。
- 数据:博客直方图对比不同提示词。
- 现象:“World Peace”更易拉长;“Mother”最弱。
- 解读:话题偏好影响长度/风格。
- 风险:多为偶然偏置。
- 建议:工程上不依赖。
- 对比:不同版本数学题正确率。
- 结果:模型升级→咒语增益变小。
- 观点:模型应“随时全力以赴”。
- 转向:从措辞转向信息选择/组织。
- 实务:优先内容与结构。
- 关系:同一流程不同切面。
- Prompt:输入格式/技巧。
- Context:自动化管理。
- 备注:课程初期“暂时画上等号”。
- 作用:便于后续深入。
Context Engineering:要素与示例
一个高质量的用户提示通常包含:任务说明、必要约束(时间/格式/长度等)、可选的细化指引与目标风格。为减少歧义,应补充“谁/在何处/为何”的场景前提,并提供覆盖边界的少量示例;实践表明,示例往往比抽象规则更能约束输出并提升一致性。
- 三大主题:Context 要素 / 为什么需要 / 基本方法。
- 形式:彩色条块 + 简洁文案。
- 作用:快速把握结构。
- 节奏:从宏观到方法。
- 背景:蓝色点阵,弱干扰。
- 标题:“Context 里面需要有什么?”。
- 作用:从比较转向组成。
- 设计:强化聚焦。
- 要素:任务说明/详细指引/额外条件/输出风格。
- 示例:请假信(道歉、理由、字数、风格)。
- 提醒:模型不会读心术。
- 目标:明确、细致、可执行。
- 歧义词:“载具”。
- 无前提:多重解释。
- 加前提:聚焦“电子发票载具”。
- 要点:场景前提缩小解释空间。
- 场景:曼谷运河照片。
- 无前提:鳄鱼/蜥蜴不确定。
- 加前提:识别“水巨蜥”,补文化含义。
- 启示:地理/文化改变先验。
- 任务:正式文 → 火星文/星文。
- 约束:注音混合体,遵循注音替换。
- 价值:具体示例 > 抽象描述。
- 目标:输出格式与风格对齐。
- 示范:要去冒险… → 要ㄑ冒险 ㄉ人…。
- 规律:字符/注音替换。
- 作用:比规则更具约束。
- 迁移:便于复制到其他句子。
In-Context Learning:示例与评估
In-context learning 通过在上下文中加入少量示例即可显著提升任务表现而无需更新参数;在低资源场景(如罕见语言)中,平行示例的价值通常大于语法解释。评估亦显示,不同模型在“示例驱动”的设定下差距明显,应优先优化示例的覆盖与质量。
- 范式:示例即学习(GPT-3 翻译范例)。
- 条件:参数不变。
- 效果:少量平行示例显著提升。
- 呈现:任务 vs 示例分区。
- 结论:示例 > 语法解释。
- 语言:极低资源(卡拉蒙语)。
- 无示例:输出乱码/失败。
- 来源:Gemini 1.5 报告。
- 结论:缺示例→强模型亦难理解。
- 启示:先补平行示例。
- 对比:GPT-4 Turbo / Claude 2.1 / Gemini 1.5 Pro。
- 指标:BLEURT/chrF(0-shot)。
- 发现:改进主要来自平行示例。
- 策略:低资源优先补示例。
- 辅助:语法解释价值有限。
System Prompt:定义人格与边界
System Prompt 定义模型的人格蓝图,先于对话被注入。它规定身份、风格、边界与伦理,形成稳定的行为先验场。用户不可见但长期影响生成倾向。良好的 System Prompt 能提升一致性与信任。它是产品差异化与合规性的关键抓手。
System Prompt 是”人格蓝图”:在每次对话开始前注入,决定身份、风格、边界与伦理。它像行为先验场,稳定影响后续每一步生成与决策的倾向。
自我身份与日期等现实锚点解释了“模型为何知道今天几号”。这些信息并非推理所得,而是被写入的上下文事实。锚点为后续推理提供现实坐标。缺失或错误的锚点会引发系统性偏差。工程上应确保锚点准确、最小且可更新。
典型要素:模型自我身份、日期时间、可参考资源;这些内容解释了”模型为何知道自己是谁、今天几号”。这并非模型”推理”所得,而是被写入的现实锚点。
明确的交互范围能降低风险与误用。对高风险领域应设置拒答与交由人工的流程。限制并非削弱能力,而是聚焦安全边界。对模糊请求引导澄清是更优策略。把限制规范写入 System Prompt 可提高一致性。
使用说明与限制:指导与用户互动的方式与范围,为高风险领域(化学、武器等)设定拒答边界,避免危害性输出与法律风险。
不确定时应主动澄清,避免自信错误。用户不满意时提供反馈通道与改进路径。语言风格保持礼貌、简洁并聚焦目标。将这些规范前置能减少交互摩擦。规范同时服务于用户体验与合规。
交互规范:当用户不满意时引导使用反馈机制;在不确定时给出澄清或请求更多信息;保持礼貌、简洁与聚焦用户目标。
禁止提供危险配方与违法指引是底线。对仇恨与歧视内容应明确拒答。将高风险类别列举并给出处理策略。默认最小权限并要求证据与审计。系统级禁止项能显著降低尾部风险。
禁止事项:不提供危险配方与手段;不帮助规避法律与平台规则;不制造仇恨与歧视。通过 System Prompt 前置明确,有助于一致合规。
避免口头禅与过度自信,减少无信息冗语。在不确定时承认未知优于捏造。鼓励结构化与可验证的表达。风格指令有助于团队内外一致性。风格即品牌,须在 System Prompt 中固化。
回应风格:避免”好问题”等口头禅;限制过度自信与夸大语气;在不确定时承认未知,比错误自信更重要。
显式声明知识截止日期可减少年代错配。超出范围时应请检索或承认未知。将不确定性展示为产品常态。避免以旧代新造成误导。边界声明与检索协同能提升可信度。
知识边界:声明知识截止日期,超出范围时”说明不知道/请求检索”。这能显著降低幻觉与年代错配。
不得自称人类或具备意识,保障人机关系的透明。身份约束减少情绪化或误导性的认同。伦理红线需系统级生效且可审计。对灰区场景提供升级与人工复核。身份与伦理共同构成行为先验。
身份定位:不得自称人类或具备意识;这既是伦理要求,也是避免用户误解的重要规范,维护人机关系的透明度。
被纠正时先自检再更新结论,避免被动跟随。提供证据或计算过程以便核验。对冲突信息应说明不确定性。将改错流程写入 System Prompt 可提升鲁棒性。错误管理是可信 AI 的必备组件。
错误处理:被纠正时不要立刻服从,应先自检再给出更新结论;可减少”人类错误提示导致的被动跟随”。
System Prompt 是人格与风格的“软权重”。它决定品牌体验与信任边界。通过模块化可支持多角色切换。结合反馈与强化学习实现个性化。其工程化程度直接影响产品稳定性。
企业价值:System Prompt 往往超过数千字,是人格与风格的”软权重”,决定产品的品牌体验与信任边界,是 Context Engineering 的基石。
记忆体系:从短期上下文到长期人格
短期记忆:对话中的工作记忆
短期记忆(Short-term Context)对应于单一会话中的历史内容,例如使用者的上一轮提问、上下文推理的连续性以及模型生成时的局部语境连接。
短期记忆的特征:
依赖当前上下文长度(context window)维持
属于瞬时性、可挥发的信息缓存
负责维持短时间内的语义焦点与思考链条
使模型能进行多轮对话而不丧失语义连续性
短期记忆的作用机制:
语义连续性:保持对话的逻辑连贯性
上下文理解:基于前面的对话理解当前问题
指代消解:理解代词和省略的指代关系
话题追踪:跟踪对话主题的变化
长期记忆:跨越时间的个性化
长期记忆(Long-term Memory)则跨越多次互动,能记录使用者的偏好、语言风格、专案进度、历史决策脉络与个人化设定等信息。
长期记忆的存储方式:
不再依赖单次 prompt
通过数据库或向量储存(vector storage)长期保存
在需要时被召回(retrieval)
支持跨会话的信息共享
长期记忆的内容类型:
用户偏好:写作风格、回答长度、专业领域等
历史决策:过去的选择和判断逻辑
项目进度:正在进行的任务和完成情况
知识连接:跨项目的知识关联
ChatGPT 的长期记忆功能
自 2024 年起,ChatGPT 引入了长期记忆功能,这是一个重要的技术突破:
记忆功能的特点:
用户可以明确告诉模型要记住什么
模型会将这些信息存储到长期记忆中
在后续对话中自动调用相关记忆
支持记忆的查看、编辑和删除
记忆的两种类型:
显式记忆:用户明确要求记住的信息
隐式记忆:模型自动学习的行为模式
实际应用示例:
记住用户的写作偏好:”我喜欢简洁的回答”
记住项目背景:”我正在开发一个电商网站”
记住个人信息:”我住在北京,从事软件开发”
记忆系统的技术挑战
长期记忆系统面临多个技术挑战:
- 记忆检索机制(Memory Retrieval Policies)
如何根据当前任务动态决定召回哪些过往信息
避免信息过载和无关信息干扰
实现智能的信息筛选和排序
- 记忆权重与衰减(Memory Weighting & Forgetting)
如何模拟人类记忆的遗忘机制
根据重要性分配记忆权重
实现记忆的自动清理和更新
- 隐私与安全(Privacy-aware Memory)
在记忆储存过程中保护用户敏感信息
实现记忆的加密和访问控制
支持记忆的匿名化和脱敏
- 情境持续性(Context Continuity)
确保长期记忆与短期上下文无缝衔接
避免语义冲突或人格漂移
维持模型行为的一致性
记忆系统的未来发展方向
记忆体系的演进使 LLM 不仅能”理解当下”,还能”理解历史”并”预测未来”:
- 认知连续性
从一次性回应系统进化为具备认知连续性的智能体
实现真正的个性化交互体验
支持长期的任务规划和执行
- 自我一致性
在长期交互中维持人格和行为的一致性
避免记忆冲突和矛盾
实现智能的记忆整合和更新
- 时间维度设计
为 Context Engineering 开启真正具时间维度的设计时代
支持基于历史的学习和适应
实现更智能的上下文管理
这一变革标志着 Context Engineering 已从静态设计(static context design)迈向记忆驱动(memory-driven)阶段——模型的行为不再仅取决于输入 prompt,而是建立在可持续更新的语义记忆层上。
对话历史是短期工作记忆,维持局部语境与思维链。容量有限但对多轮语义连续至关重要。负责指代消解与话题追踪。应配额化并定期摘要,避免溢出。短期记忆与指令区需平衡预算。
对话历史是短期记忆:维持语义连续、指代消解与话题追踪。它像”工作记忆缓冲区”,容量有限,但对多轮对话至关重要。
长期记忆跨会话保存用户偏好与项目上下文。通过数据库或向量库持久化。按需检索以减少上下文占用。支持多次互动的一致性与个性化。它与短期记忆协同构成连续的认知体验。
长期记忆跨会话保存:记录用户偏好、项目上下文与历史决策,使模型在多次互动间保持个性化与连贯性。
提供查看、编辑与删除接口确保可控。支持显式“请记住”与隐式习惯学习。为记忆条目打标签与来源。默认最小化与可撤销,保障隐私。良好的工具链是记忆可运营的基础。
开启与管理记忆:允许显式”请记住”与隐式习惯学习;工程上需提供查看、编辑、删除接口,确保可控与可监督。
“我是怎样的人?”可作为记忆利用的示例问法。基于过往交互生成摘要性描述。只输出获得同意且正当的内容。避免过度推断与隐私泄露。提供来源回指以便用户校对。
“我是怎样的人?”是展示长期记忆利用的典型问法:基于过往交互的摘要性理解生成个性化描述,注意只应输出正当且经同意的内容。
记忆保存“我与你的历史”,RAG 注入“世界的新事实”。二者共同构建个体化且最新的上下文。避免用记忆承载时效性事实。事实应走检索与引用路径。清晰分工能提升一致性与可追溯。
记忆与 RAG 的分工:记忆保存”我与你的历史”,RAG 注入”世界的新事实”。两者共同构建”个体化且最新”的上下文。
将细节落盘以节省上下文预算。在摘要中写入“回看指针”便于复原细节。必要时再读原文进行深度对齐。外置记忆提升可追溯与成本效率。配合策略性召回获得稳定表现。
外置记忆:将细节落盘,通过”记忆 RAG”在必要时召回;既节省上下文预算,又保留追溯能力。
以近因、重要性与相关性三分打分进行召回。动态调整权重以适应任务需求。避免噪声记忆干扰当前焦点。将召回策略参数化便于评估。与短期上下文配额联动可进一步稳定。
三分打分:近因(Recency)/重要性(Importance)/相关性(Relevance)共同决定召回优先级,类似人类记忆的注意力分配。
盲目注入错误记忆可能诱导负迁移。若要使用,应连同更正过程与裁决理由一并注入。设置置信门槛与一致性检查。仅在与当前任务强相关时启用。谨慎的负例管理可提升整体表现。
负例注入需谨慎:盲目强调”过去错”的记忆,可能诱导错误迁移。若要使用,应连同更正过程与裁决理由一并注入。
默认最小化存储并进行加密与访问控制。敏感信息优先脱敏与匿名化。提供可审计的访问日志。支持用户导出与删除权利。隐私安全是长期信任的根基。
隐私与安全:记忆应进行最小化存储、加密与访问控制;敏感信息默认不持久化,必要时脱敏与匿名化处理。
为指令、历史、知识、工具与思考笔记分别设配额。超阈值触发递归摘要以防“塞爆”。将关键句前置或后置以提升命中率。对历史采用分段摘要与局部回溯。预算化治理是长对话稳定性的前提。
上下文预算:为指令、历史、知识、工具、思考笔记分别设配额;超过阈值触发递归摘要,避免”塞爆 context”。
依据经验调整行为:StreamBench 启示
- 连续决策可将“过往问题与反馈”外置为记忆库,按“相关性/近因/重要性”检索少量关键经验注入当前上下文,显著提升平均正确率。
- 正向示例优于负向示例:仅注入“做对的方式”普遍比强调“哪些做错”更有效;负例若使用,应连同更正过程与裁决理由。
- 不将“一生经历”一股脑注入,而是以“读(Read)/写(Write)/反思(Reflect)”管道化记忆:写入重要信息、反思形成抽象概念或图谱,读时仅召回当下最相关片段。
RAG 与动态知识融合
RAG 的核心机制
RAG(Retrieval-Augmented Generation)是 Context Engineering 的知识增强分支。它通过检索外部资料源(如文件、API、资料库),将即时资讯注入上下文中,使模型能跨越训练时知识的时效限制。
RAG 的工作流程:
查询理解:将用户问题转换为搜索查询
信息检索:从外部资料源检索相关信息
上下文构建:将检索结果整合到上下文中
生成回答:基于增强的上下文生成回答
RAG 的优势与挑战
RAG 的优势:
解决模型知识有限的问题
提供最新、最准确的信息
支持特定领域的专业知识
减少幻觉和错误信息
RAG 的挑战:
信息融合的精确性:语言模型仍可能误读、误配或夸张地再叙述检索结果
检索质量依赖:检索到的信息质量直接影响最终回答
上下文长度限制:检索到的信息可能超出上下文长度限制
引用管理:如何准确引用和验证信息来源
RAG 的实际应用案例
Google AI Overview 的教训:
Google 的 AI Overview 功能是一个典型的 RAG 应用,但也暴露了一些问题:
用户问:”我的起司黏不在披萨上,怎么办?”
AI 回答:”用 1/8 的无毒胶水把起司黏在披萨上”
这个错误答案来自 Reddit 上的玩笑帖子
说明 RAG 系统需要更好的信息筛选和验证机制
ChatGPT 的搜索功能:
用户可以开启网络搜索功能
模型会先搜索相关信息,再基于搜索结果回答
显著提高了回答的准确性和时效性
RAG 的技术发展方向
- 智能检索优化
改进查询重写和扩展技术
实现多轮检索和迭代优化
支持多模态信息检索
- 信息融合改进
提高检索信息的整合质量
实现更好的信息去重和排序
支持多来源信息的冲突解决
- 引用管理
实现准确的信息来源追踪
支持引用验证和更新
提供透明的信息溯源
工具使用与行动能力
工具使用的核心机制
Context Engineering 不仅关乎理解,也关乎行动。现代 AI Agent 已能根据上下文呼叫工具(Tool Invocation)执行具体任务,如查询资料、发送邮件、操作电脑。
工具使用的工作流程:
工具定义:在上下文中提供工具的使用说明
工具选择:模型根据任务选择合适的工具
工具调用:生成工具调用的指令
结果整合:将工具执行结果整合到上下文中
工具使用的实际案例
数学计算工具:
模型可以调用计算器进行复杂运算
避免数学计算错误
提高计算精度和效率
邮件发送工具:
模型可以发送邮件
支持邮件模板和个性化
实现自动化沟通
日历管理工具:
模型可以查看和修改日历
支持会议安排和提醒
实现智能日程管理
工具使用的技术挑战
- 工具指令生成
如何生成正确的工具调用指令
处理工具参数和返回值
支持复杂的工具调用链
- 工具结果处理
如何正确解析工具执行结果
处理工具执行错误和异常
实现工具结果的智能整合
- 工具选择优化
如何从多个工具中选择最合适的
支持工具的组合使用
实现工具使用的学习优化
工具选择与检索(Tool RAG)
- 当可用工具众多(上百/上千)时,将“工具说明”外置到工具库,先做工具检索与重排,仅将少量候选工具及其调用规范注入上下文。
- 选择信号可复用记忆检索三要素:相关性、近因、重要性;并以调用日志与成功率做闭环优化。
模型自造工具(Program-as-Tool)
- 将常用的程序片段固化为可复用的 function,纳入工具库参与后续检索与选择;成功率高的函数可被“晋升”为内置工具。
- 本质上是把“可复用的成功经验”以代码形态存入长期记忆,和“记忆 RAG”的工程精神一致。
RAG 以检索增强生成,弥补知识时效与覆盖。流程包括查询理解、检索、上下文拼接与生成。检索质量直接决定最终答案上限。拼接需去重、排序并控额。生成端应展示证据以便核验。
RAG 流程:查询理解→检索→上下文拼接→生成回答。它是弥补模型知识时效与覆盖的主路径,但质量取决于检索与融合。
披萨“无毒胶水”事件源于采信低可信来源。系统需对来源质量进行建模与过滤。为玩笑与讽刺内容设置识别器。高风险场景提升阈值与人工复核。错误案例提醒我们:引用≠可信。
披萨”无毒胶水”事件提醒:若直接采信低可信来源,模型会把玩笑当事实。RAG 必须对来源进行质量控制与可信度建模。
即便结合搜索,生成仍可能产生属性错误。应展示引用并进行冲突消解。将不一致标注为不确定并请求更多证据。为关键事实强制显示来源段落。证据透明是降低幻觉的有效途径。
即便结合搜索,语言模型仍可能在叙述层面产生属性错误。应将”引用展示与冲突消解”作为默认能力,而非可选项。
用轻量模型对候选段落进行重排提升相关性。句子级选择可显著降低噪声注入。对冗余内容进行去重与合并。优先保留高密度、可引用的证据句。重排与选择共同决定拼接有效性。
重排(Reranking):用轻量模型对候选段落相关性重排,减少噪声注入。句子级粒度的选择能显著提升拼接有效性。
保留来源链接与关键段落,便利用户核验。对高风险领域强制展示证据。维护引用的新鲜度与可达性。为失效链接提供缓存与备份。溯源能力是可信 RAG 的基线能力。
引用与溯源:保留来源段落与链接,便于用户核验与自纠;在高风险领域强制显示关键证据。
注入越多不一定越好,超过吸收能力后正确率下降。应采用小批次、可控预算的迭代注入。为重要证据留足配额。以 A/B 验证拼接规模与质量的权衡。寻找最佳点而非一味加量。
“倒 U 曲线”:注入越多不一定越好,超过模型吸收能力后正确率下降。应以小批次、可控预算迭代注入。
中段信息最易被忽略,应将关键证据前置/后置。长文采用分段摘要并突出关键句。通过标题与编号提高注意力命中率。必要时重复关键点以增加可见度。结构化展现优于散文式堆叠。
“Lost in the Middle”:把关键信息放在上下文开头/结尾更易被命中;长文应做分段摘要,关键句前置。
同一事实至少两路来源背书更稳健。对冲突信息显式合并并提示不确定性。优先高可信来源并标注权重。记录决策依据以便回溯。交叉验证降低单点失真风险。
多来源交叉验证:对同一事实最少两路来源背书;对冲突信息进行显式合并与不确定性提示。
默认开启证据显示与日志记录。对敏感域配置判别器与人工复核。为失败路径提供可追踪诊断。将关键指标(正确率、成本、延迟)纳入看板。以运营视角持续改进检索与拼接。
产品化守则:默认开启证据显示;为敏感域增加判别器与人工复核流程;为失败路径提供可追踪日志。
模型会信谁:外部证据的形态与偏好
- 贴近模型内在信念的证据更易被采纳;偏差过大时模型更倾向相信自身知识。可结合“自信度”调节权重与人审阈值。
- 新近性偏好:当两条证据冲突,模型更易接受较新的来源;需在系统层管控时效权重,防止“唯新是从”。
- 生成体偏好:在部分对比中,模型更易采纳 AI 生成的论点而非人类撰写文本;应以多源校验与来源多样性缓解单源偏置。
- 呈现偏差:版式/可读性可能影响说服力;产品侧应标准化证据呈现,避免无关样式影响判断。
实时交互:从回合制到连续对话
语音/多模态场景下,交互应支持“打断、重定向与并行反馈”,而非严格回合制。一条可行路径是在上下文中显式建模“当前动作/中断信号/状态快照”,并为关键事件设置即时优先级,以保证及时改弦更张(如高级语音模式中的即时停更与改题)。
电脑操作:AI 的具身化起点
电脑操作的技术突破
最新的 ChatGPT 和 Claude 能在虚拟环境中以滑鼠与键盘操作电脑,这象征语言模型首次跨入”具身智能(Embodied Intelligence)”领域。
电脑操作的核心能力:
理解屏幕画面内容
生成鼠标和键盘操作指令
执行复杂的电脑任务
适应不同的用户界面
电脑操作的实际应用
订票系统操作:
模型可以自动订高铁票
处理复杂的订票流程
适应不同的网站界面
文件管理:
模型可以管理文件和文件夹
执行文件操作任务
支持批量处理
软件开发辅助:
模型可以编写和修改代码
执行测试和调试
管理开发环境
电脑操作的技术原理
Context 在电脑操作中的作用:
描述任务目标和当前状态
解析屏幕画面信息
生成操作指令
验证操作结果
操作指令的生成:
鼠标移动:move_mouse(x, y)
鼠标点击:click_mouse(button)
键盘输入:type_text(text)
等待操作:wait(time)
电脑操作的发展前景
电脑操作代表了 AI 具身化的重要起点:
- 通用性
可以操作任何电脑应用
不限于特定领域或任务
支持复杂的工作流程
- 学习能力
可以从操作中学习
适应新的界面和流程
提高操作效率
- 协作能力
可以与人类协作完成任务
支持远程操作和协助
实现人机协同工作
形态与能力
远端虚拟桌面安全、不触本机;本地控制能力更强但更危险。二者皆依赖屏幕理解与输入控制。可在通用 UI 上执行复杂任务。需要稳定的元素定位与状态感知。电脑操作是迈向具身智能的起点。
Computer Use 两种形态:远端虚拟桌面(安全、不触本机)与本地控制(更强也更危险)。二者皆以”屏幕理解+输入控制”为核心。
风险与权限
默认最小权限降低破坏面。关键动作二次确认并全链路留痕。必要时启用只读模式与时间盒。建立回放能力以便复盘。风险控制与能力扩展需平衡推进。
风险与权限:默认最小权限、敏感动作二次确认、操作日志与回放是必要的工程底线;必要时启用只读模式与时间盒限制。
Agent 模式演示
根据高层目标自动分解步骤与定位 UI。填入参数、处理弹窗并在失败后重试。通过 Observation→Action 循环自我修正。对异常路径设置保护栏与超时。以里程碑驱动阶段性验收。
Agent 模式演示:根据高层目标自动分解步骤、定位 UI、填入参数、处理异常弹窗;失败后能自我修正重试。
SOP vs Agentic
固定流程适合可预测任务,易于验证与复用。Agentic 工作流适合开放任务,强调自适应。两者可分层组合以取长补短。对不稳定长链交互交由执行者层承载。主代理仅保策略与里程碑以降压上下文。
SOP vs Agentic:固定流程适合可预测任务;Agentic 工作流适合开放任务,能在 Observation→Action→Observation 循环中自适应调整计划。
LLM-Agent 与传统 Agent 差异
LLM-Agent 的输出空间是自然语言,几乎无限。可被人类语言直接指导与纠偏。与 AlphaGo 的离散动作集合不同。这带来强表达也带来不确定性。需要更强的约束、协议与验证。
LLM-Agent 与传统 Agent 差异:输出空间是自然语言、近乎无限;可被人类语言直接指导与纠偏;与 AlphaGo 的”离散动作集合”截然不同。
CLI 实操
允许 Agent 真实读写文件与运行代码。严格的沙箱与回滚策略是前提。对生成与执行分离权限与审计。提供试运行与差异审查能力。以小范围灰度降低风险。
CLI 实操:让 Agent 真实读写文件、生成项目脚手架、运行与修改代码;需要更严格的沙箱与回滚策略。
批准与人机协作
关键步骤请求用户确认,形成可控闭环。人类可随时插手、改参或中止流程。为协作提供清晰的状态与待办。将批准策略参数化(风险、金额、环境)。半自动协作提高可用性与安全性。
批准与人机协作:对关键步骤请求用户确认;人类可随时插手、修改参数或中止流程,形成可控的半自动协作。
评测维度
目标达成率衡量有效性。失败可恢复性体现鲁棒性。对齐与安全事件率反映合规水平。成本与时延关乎运营效率。评测需按场景细化并长期跟踪。
评测维度:目标达成率、失败可恢复性、对齐与安全事件率、成本与时延;分场景基准才有意义。
能力版图扩展
从“会用工具”走向“会用电脑”。把通用软件生态纳入能力边界。面向真实生产环境的复杂任务。对 UI 变更具备适应与迁移。它是迈向更强具身智能的台阶。
从”会用工具”到”会用电脑”,将通用软件生态纳入能力版图;它是走向具身智能的重要台阶。
规划能力与评测:PlanBench 与“神秘方块世界”
- 明确规划(先产出 plan 再执行)在开放环境中可提升稳定性,但需随观察动态重规划,以适应不可预测事件(如弹窗/对手走子)。
- Tree Search + 自评打分:在不覆水难收的环境下,先并行试探多条路径、为“无望”分支设阈值早停,可显著提升成功率与样本效率。
- 梦境规划(World Model):将“环境响应”在模型内以文字方式模拟,先在“脑内小剧场”完成验证,再执行现实第一步,降低不可逆风险。
- 评测要点:PlanBench(受限约束的多步规划)与“神秘方块世界”(反常规规则)揭示:强 reasoning 模型在陌生规则下仍具优势,但存在“想太多”的风险,需要防过度思考与及时试探的策略。
AI Agent 时代的 Context Engineering
AI Agent 的核心特征
AI Agent 是 Context Engineering 的重要应用场景,具有以下核心特征:
- 自主决策
能够自主决定解决问题的步骤
根据环境变化调整策略
实现灵活的任务执行
- 长期运行
支持长时间的任务执行
维持状态和记忆
处理复杂的多步骤任务
- 工具使用
能够调用各种外部工具
整合多种能力
实现复杂的任务目标
AI Agent 的 Context 管理挑战
- 上下文长度限制
长时间运行会积累大量上下文
需要智能的上下文压缩和摘要
避免重要信息丢失
- 信息优先级管理
如何确定哪些信息最重要
实现动态的信息筛选
保持任务焦点
- 状态一致性
在长期运行中维持状态一致性
避免信息冲突和矛盾
实现智能的状态更新
Context Engineering 的三大策略
- 选择(Selection)
只选择相关信息进入上下文
实现智能的信息筛选
避免信息过载
- 压缩(Compression)
对历史信息进行压缩和摘要
保留关键信息
减少上下文长度
- 多代理(Multi-Agent)
使用多个 Agent 分工合作
每个 Agent 管理部分上下文
实现更高效的上下文管理
产品建议(分层)
以“代理-执行者”分层封装复杂度。主代理只保策略与里程碑。长链与不稳定交互由执行者承担。通过接口与协议降低耦合。分层能显著降低上下文压力与故障域。
产品建议:以代理-执行者分层封装复杂度;把不稳定长链交互下放给执行者,主代理只保策略与里程碑,降低上下文压力。
结语:Context Engineering —— AI Agent 时代的灵魂工程
Context Engineering 的核心价值
综观全局,Context Engineering 不仅是一种提示设计技巧,更是 AI 智能体的”外部认知建筑学”。它将使用者指令、记忆、检索、工具与伦理规范统合为一体,构筑出模型的即时世界。
Context Engineering 的三大价值:
- 认知扩展
突破模型固有的知识限制
整合外部知识和工具
实现更智能的决策
- 个性化体验
基于用户历史和偏好
提供个性化的服务
建立长期的关系
- 任务执行能力
支持复杂的多步骤任务
实现工具调用和操作
提供端到端的解决方案
未来发展方向
- 技术演进
更智能的上下文管理
更高效的信息压缩
更强大的工具集成
- 应用拓展
更广泛的应用场景
更深入的人机协作
更智能的自动化
- 研究前沿
多模态上下文融合
动态上下文适应
认知架构设计
对 AI 工程师的要求
未来的 AI 工程师,不仅要懂模型架构与训练,更要精通上下文设计与语境管理:
- 技术能力
掌握 Context Engineering 的核心技术
理解不同上下文组件的相互作用
能够设计高效的上下文管理策略
- 系统思维
从整体角度思考 AI 系统设计
平衡不同组件之间的关系
实现系统的最优配置
- 创新意识
探索新的上下文管理模式
开发创新的应用场景
推动技术的前沿发展
AI 的智慧,终将不仅来自权重,而来自上下文的设计。
Context Engineering 正在成为 AI 时代最重要的工程技能之一。它不仅是技术问题,更是艺术问题——如何设计出既智能又可控、既强大又安全的 AI 系统,这需要工程师们具备深厚的技术功底和丰富的创造力。在 AI Agent 时代,掌握 Context Engineering 就是掌握了 AI 智能体的灵魂。
附录:实战案例与进阶方法(补充)
以下内容按课堂口语讲解进行系统化整理,并补充工程落地要点,便于直接用于产品与研究实践。相关原始讲解见课程视频:生成式人工智慧與機器學習導論2025 · 第2講:上下文工程(Context Engineering)——AI Agent 背後的關鍵技術
神奇咒语的兴衰与 arXiv 生态
早期”神奇咒语”有效的原因:模型较弱、输入输出关系不稳定,诸如”Let’s think step by step””请先深呼吸””答对给小费””这题对我非常重要”等提示,曾能显著提升正确率。
趣味实验:在 GPT-3 年代,甚至在 prompt 中加一串”位置”字样都能异常拉长输出;让模型在写 200 字故事时,”世界和平”比”母亲为你骄傲”更能让它贴合长度目标(因模型没有”母亲”概念)。
如今为什么逐渐失效:模型内在推理与自我校正增强后,靠”措辞魔法”获取提升的空间越来越小,取而代之的是上下文组织、检索与工具协同。
arXiv 说明:AI 领域节奏快,研究常先在 arXiv 公开(如 2206 即 2022 年 6 月),便于社区快速验证与复现。
语境构成的实例化要点
明确前提能显著减少歧义:
“载具是什么意思?”若未给出情境,模型可能解释为交通工具或电子载具;若补充”在超商结账时店员问’要用载具吗’”,模型即可聚焦到电子发票载具。
场景信息改变答案分布:
示例胜于口头定义:
“火星文”若无示例,模型可能做字形替换;给出”要去冒险的人来找我 → 要ㄑ冒险 ㄉ人来找我”后,模型迅速对齐到注音替换规则。
RAG 的价值与风险并存
价值:在知识时效与覆盖受限情况下,通过检索把”最新、相关”的事实注入上下文,显著提升答案可靠性。
典型风险:
Google AI Overview 曾因引用玩笑贴文,建议在披萨上加”1/8 无毒胶水”粘奶酪;
即便是最新模型结合搜索,文本叙述仍可能出现属性错误或夸张叙述。
工程对策:
保留引用并尽量呈现来源段落;
采用 rerank/判别器过滤噪声;
对高风险领域(医疗、金融)启用”多来源交叉验证 + 置信阈值”。
工具调用的落地方法(从”文字”到”动作”)
模型只能生成文字,无法直接”执行”。因此需要在外层实现”解析—执行—回填—继续生成”的闭环:
在上下文中提供工具说明与示例(自然语言足矣),并约定调用标记(如〈tool〉…〈/tool〉、〈result〉…〈/result〉)。
让模型按约定输出工具调用指令(纯文本)。
在宿主程序中解析指令并实际执行(例如在教学环境用 eval(),生产环境请使用白名单与参数校验的安全执行器)。
将工具输出以约定格式回填到上下文中。
重复上述过程直到模型不再发出调用请求,再输出用户可见的最终答复。
要点:
不要相信模型”自述已调用工具”的叙事,那只是接龙;必须以宿主程序的执行结果为准。
将中间的调用细节对用户”可见/不可见”作为产品策略开关,默认对普通用户隐藏、对调试与审计开放。
工具调用(从理解到行动)
工具使用让模型从“说”走向“做”。在上下文定义工具与调用协议,模型产出可解析指令。宿主负责执行并回填结果。循环往复直至无需再调用。工具化显著提高可验证性与正确性。
工具使用是从”理解”走向”行动”的关键:通过在上下文定义工具、示例与调用协议,让模型生成可解析的调用指令。
工具调用闭环
宿主程序把“文字”变“动作”,解析→执行→回填→继续生成。严格区分模型输出与真实执行结果。以统一协议承载输入输出。失败与异常应显式返回并处理。闭环是端到端可控的关键。
宿主程序负责把”文字”变”动作”:解析模型输出→执行真实工具→将返回结果回填上下文→继续生成,直到不再调用。
数学工具示例
将可形式化的子任务交给计算器等外部工具。避免心算误差并提升稳定性。模型负责分解任务与组织语言。保证参数与单位的一致性与校验。以工具替代弱项可降低总体风险。
数学工具示例:用外部计算器替代心算,显著提升数值稳定性。工程上应默认将可形式化的子任务交由工具完成。
参数化查询示例
通过接口获取事实值,模型负责解释与呈现。异常值需伴随一致性检查与告警。对请求与响应进行日志记录。限定参数范围与频率以防滥用。将不确定性与缓存策略纳入设计。
温度查询示例:通过参数化接口获取事实值,模型负责组织语言与用户交互。异常值应伴随一致性检查与反常提示。
幻觉防护策略
不要相信“我已调用工具”的自述,那只是接龙。以宿主层执行与返回为唯一事实来源。强制显示关键操作的回执。对不匹配结果触发复核或回滚。用制度化流程抵消语言幻觉。
不要相信”我已调用工具”的自述——那只是接龙。以宿主层执行与结果为准,才能消除幻觉干扰。
安全执行
禁止直接 eval 非受控字符串。使用白名单与 Schema 校验限制能力边界。最小权限沙箱与文件系统白名单是基础。记录调用日志以便审计与回放。对外联与删除等敏感动作二次确认。
安全执行:禁止直接 eval 非受控字符串;使用白名单、Schema 校验与最小权限沙箱;记录调用日志便于审计与回放。
可见性与可解释
默认隐藏中间调用细节以简化体验。为专家与调试模式开放细节。对失败路径给出可读的诊断线索。允许用户手动重试或改参。可见性分层兼顾可用性与审计。
对用户可见性:把中间调用细节默认隐藏,给专家模式或调试模式开放;为错误路径提供可读的诊断线索。
调用链组合
复杂任务往往需要多次调用与结果聚合。保证各步的幂等性以便重试。对中间态进行持久化与回滚管理。检测循环与死锁并超时中止。以编排器管理依赖与并发。
调用链组合:复杂任务往往需要多次工具调用与结果聚合;要保证幂等性与错误恢复机制,避免半程失败卡死。
协议演化
从弱约束自然语逐步演进到强约束 JSON/Schema。提升可解析性、健壮性与向后兼容。引入版本与能力协商机制。以验证与生成器共同保障格式正确。协议是规模化集成的基座。
协议演化:随着能力增长,工具协议可从”弱约束自然语”演进到”强约束 JSON/Schema”,提升可解析性与健壮性。
评估指标
评估覆盖率确保“该调用的都调用”。参数与结果正确率衡量执行质量。关注端到端延迟与单位成本。为高风险路径启用强制人工复核。用指标闭环驱动持续改进。
评估指标:覆盖率(调用该调用的都调用)、正确率(参数与结果正确)、延迟与成本;对高风险路径启用强制人工复核。
Computer Use:强能力与高风险并存
两种形态:
远端”虚拟桌面”(如部分 ChatGPT Agent 模式):不直接触碰本机,安全性较高;
本地控制(如 Gemini CLI):可直接创建/修改文件、关程序,能力强但更危险。
实践建议:
默认最小权限,操作需逐步确认;
文件系统白名单与沙箱隔离;
关键动作(删除、外联)强制二次确认与审计日志;
为 UI 元素提供稳定锚点(坐标/语义选择器),降低定位误差。
Agentic Workflow 与 AI Agent 的本质
工作流(有 SOP):将复杂任务拆解为多步骤(识别攻击/评分/验证等),每步可设立输入输出契约。
AI Agent(自定策略):根据 observation 循环规划 action(检索、调用工具、写程序、与人沟通等),直至目标达成。
与传统 Agent 的差异:输出是自然语言,表达与控制空间近乎无限;可被人类语言直接指导与反馈。
提示策略:与其”挤牙膏式追加要求”,更建议一次性给出完整目标、约束与验收标准(近期研究显示分步追加会降低稳定性与总体能力)。
长上下文的性能陷阱与对策
“Lost in the Middle”:答案位于长上下文中段时最易被忽略;尽量将关键信息靠近开头或结尾。
“Context Rot”:即便未触达上限,长度上升也会导致复制/对齐能力快速下滑。
检索注入的”倒 U 曲线”:过多检索文本会让正确率先升后降。
工程对策:
预算化分配 token(指令、历史、知识、工具、思考笔记分别控额);
关键信息置顶/置底;
动态裁剪与去重;
对长文采用”分段摘要 + 局部细节回溯”策略;
重要信息多路冗余(标题、要点、编号)以提升注意力命中率。
窗口演进
Context Window 从 3 万到 10 万、百万乃至更高。更长的输入是长时运行的必要非充分条件。容量增加不等于理解增强。仍需治理注意力稀释与对齐退化。工程侧重在于选择与压缩,而非盲目加长。
Context Window 演进:从 3 万到 10 万、100 万甚至千万级 token。更长的输入是 Agent 长时运行的必要不充分条件。
输入≠理解
可输入不代表可真正理解与记住。注意力在长文本中被稀释。关键事实易被淹没或错配。需要结构化呈现与重复要点。结合摘要与指针回溯提升有效吸收。
可输入≠可理解:如同翻完哈利波特并不等于”记住全部情节”。长上下文下注意力稀释与对齐退化是工程常态。
RAG 的倒 U
检索注入起初有益,过量会伤害正确性。以小批次注入与重排去重获得最优点。根据任务动态调整预算与阈值。对证据质量而非纯数量进行优化。以评测闭环持续定位拐点。
RAG 注入的”倒 U”:起初有益,过量反而伤害。说明需要预算化的注入、重排与去重,避免噪声淹没信号。
Lost in the Middle
把关键信息放在开头/结尾提升命中率。长文分段摘要并在各段置顶关键句。以标题与编号增加显著性。必要时交叉冗余关键点。位置工程往往比措辞更重要。
“Lost in the Middle”:中段最易丢失。将关键信息前置/后置、标题化与编号化,有助于稳定命中。
Context Rot
复制与对齐能力随长度迅速下降。退化往往先于理论上限出现。说明“少即是多”的治理原则。通过压缩与去重提升信噪比。以任务为中心分配有限注意力。
“Context Rot”:复制/对齐能力随长度迅速下降,且远未触及模型理论上限时已出现。强调”少即是多”的治理原则。
三大招数:选择、压缩、Multi-Agent(工程视角)
三大策略总览
选择:检索、重排与句子级选择,含工具与记忆版 RAG。压缩:递归摘要与指针回溯,细节落盘。多代理:总召—执行者分层,分摊上下文压力。三者相互支撑并可组合使用。以度量驱动寻找最小充分解。
三大策略:选择(检索/重排/句子级选择/工具与记忆版 RAG)、压缩(递归摘要+指针回溯)、多代理(总召-执行者分层)。
选择(Selection):
RAG 前置:用 LLM 将用户任务改写成多路查询(Query Expansion),再检索;
Reranking:使用轻量模型对候选段落进行重排,只保留最相关片段;
句子级选择:用极小模型(<300M)逐句判定相关性,显著降低噪声注入;
工具版 RAG:将”工具说明”看作文档,仅检索当下相关工具注入上下文;
记忆版 RAG:长期记忆外置,按”近因/重要性/相关性”打分召回(可参考 Stanford “小镇”工作流)。
压缩(Compression):
递归摘要:按窗口占用或交互轮次触发压缩,保留关键信息,细节落盘;
摘要内置”指针”:在摘要中写入”详情见 path/to/file.txt 第 X 段”,必要时再回读原文;
区分”永久笔记”(显式记忆)与”易逝记忆”(系统自管随时间衰减)。
Multi-Agent:
以”总召—执行者”结构来分摊上下文:总召保策略与里程碑,执行者承接具体长交互(如订餐厅/订旅馆);
大规模文献综述:每篇论文由独立 Agent 阅读并生成结构化摘要,最后由汇总 Agent 进行融合与写作;
单体 vs 多体权衡:任务简单时单体往往更强;任务复杂且交互链路长时,多体凭借上下文分割与职能并行具有优势。
经验与反例:如何用好”记忆”
在”自我改进基准”中,仅注入”过去答对的例子”更稳;盲目注入”错误案例”反而可能伤害整体表现。
实践建议:
错误记忆要”连同判定与更正过程”一起注入,且与当前任务强相关;
对”负例记忆”设置使用门槛(置信/一致性检查),避免诱导错误迁移。
一份可操作的 Context Engineering 清单
明确”目标—约束—验收标准”,一次性写清楚。
关键信息置顶/置底,并编号列点。
提供 1–3 个覆盖典型边界的高质量示例。
对检索结果进行去重、重排与句子级筛选。
工具少而精;按需检索工具说明再注入。
长对话每 N 轮执行一次递归摘要,细节落盘并在摘要中留”回看指针”。
采用”记忆 RAG”:近因/重要性/相关性三分尺度召回。
将”思考过程”与”对用户可见输出”分离,必要时只给摘要。
关键动作(写档、删除、转账)二次确认并记录审计日志。
对高风险答案启用”多来源交叉验证 + 引用展示”。
将 Agent 任务切分为”总召—执行者”,以分摊上下文压力。
固化成功的上下文模版(含占位符与预算),形成可复用 SOP。
—— 以上补充旨在把课堂中的案例、工程套路与安全要点系统化,帮助在真实产品与研究中”以最小上下文预算获得最大可靠性”。
实操清单
一次性明确目标与约束并编号要点。提供少而精的高质量示例。对检索结果去重重排并小批次注入。长链交互采用多代理分摊上下文。对高风险答案启用交叉验证与引用展示。
实操清单:一次性明确目标与约束;关键要点置顶/置底;高质量示例;小批次注入并交叉验证;对长链交互采用多代理分摊上下文。