免费POC, 零成本试错
AI知识库

53AI知识库

学习大模型的前沿技术与行业应用场景


今天聊一聊Context Engineering

发布日期:2025-10-07 10:16:30 浏览次数: 1518
作者:沉浸式学AI

微信搜一搜,关注“沉浸式学AI”

推荐语

AI代理如何像人类一样高效记忆?揭秘上下文工程的四大核心策略。

核心内容:
1. 现代AI应用面临的四大上下文挑战
2. 上下文工程的四大支柱操作原理
3. 长期记忆与短期记忆的代码实现示例

杨芳贤
53AI创始人/腾讯云(TVP)最具价值专家


随着人工智能代理(AI Agents)变得越来越复杂,一个关键挑战随之出现:我们如何有效地管理上下文? 上下文工程(Context Engineering)是一门对进出AI代理的信息流进行策略性管理的艺术和科学,旨在确保它们能够在正确的时间得到正确的信息,同时优化性能、成本和准确性。

可以将上下文工程视为AI代理的内存管理系统——正如人类的认知依赖于不同类型的记忆(工作记忆(working memory)、长期记忆(long-term memory)、情景记忆(episodic memory)),AI代理也需要复杂的上下文管理才能在复杂的、多轮对话场景中有效地运行。

为什么上下文工程很重要

现代的AI应用面临数个与上下文相关的挑战:

令牌(Token)限制: 大多数大型语言模型(LLM)都有有限的上下文窗口(4K到200K tokens),这迫使我们必须对所包含的信息进行策略性的取舍。

成本优化: 每个令牌都需要花费成本。低效的上下文管理可能导致生产应用中的成本呈指数级增长。

信息相关性: 并非所有上下文对每个任务都同等重要。不相关的信息实际上可能通过干扰或混淆而损害性能。

状态持久性: AI代理需要在不同会话之间保持状态,记住用户偏好,并在先前的交互基础上持续构建。

上下文工程的四大支柱

基于图示中的框架,上下文工程包括四个基本操作:

  1. 写入上下文:持久化信息 写入上下文涉及将信息存储在当前上下文窗口之外以供日后检索。 这会创建一个持久的知识层,供代理在不同会话和任务中访问。

存储类型:

长期记忆: 跨会话保持(用户偏好、习得的行为、历史交互)

短期记忆: 会话内保持(对话历史、临时变量、工作流状态)

状态对象: 运行时状态管理(当前任务进度、临时计算、会话变量)

实现示例:


# 长期记忆存储

user_profile = {

    "preferences": {

        "communicationStyle": "technical",

        "expertise": "senior-developer"

    },

    "projectContext": {

        "currentProject": "video-editor",

        "techStack": ["React", "RxJS", "PIXI.js"]

    },

    "conversationHistory": [

        # ... previousSessions

    ]

}


# 短期记忆(当前会话)

session_state = {

    "currentTask": "debugging timeline drag-drop",

    "activeFiles": ["timeline.jsx", "dragHandler.js"],

    "recentErrors": [

        # ...

    ]

}

  1. 读取上下文:策略性信息检索 读取上下文涉及将相关信息智能地提取到代理的工作上下文窗口中。这需要复杂的检索机制和相关性评分。

上下文来源:

工具: 外部 API、数据库、文件系统

知识库: 文档、向量数据库、结构化数据

记忆系统: 先前写入操作存储的上下文

智能检索策略:

语义搜索: 使用向量嵌入来寻找具有上下文相关性的信息

新近性加权: 优先考虑最近的交互和更新

面向任务的过滤: 只检索与当前目标相关的上下文

渐进式加载: 从必要的上下文开始,根据需要加载额外细节

  1. 压缩上下文:智能摘要上下文压缩用于解决这样一个现实:检索到的信息通常包含冗余、无关细节或过多的冗长。 有效的压缩能够保留关键信息,同时减少令牌使用量。

压缩技术:

分层摘要: 创建分层的摘要(详细 → 中等 → 高层次)

实体抽取: 聚焦于关键实体、关系和事实

意图保留: 确保压缩后的上下文保留原始意图和含义

模板式压缩: 使用结构化格式来标准化压缩输出

压缩示例:

1// 原始上下文 (500 tokens)


2"用户正在开发一个基于React的视频编辑器应用,他们在时间轴组件上遇到了拖拽操作无法正常工作的问题。这个时间轴使用PIXI.js进行渲染,并通过RxJS的可观察对象进行复杂的状态管理。他们尝试了多种解决方案,包括更新拖拽事件处理程序、检查事件传播以及调试状态更新。此外,该应用还使用GSAP实现动画,并与Chromatic集成以进行视觉回归测试。。。"


3


4// 压缩后的上下文 (100 tokens)


5"项目:React 视频编辑器,包含 PIXI.js 时间线。 问题:拖放操作不起作用。 技术:RxJS 状态管理,GSAP 动画。 尝试过:更新事件处理程序,调试状态。 测试:Chromatic 集成。"

  1. 隔离上下文:专用环境管理 上下文隔离涉及有策略地将不同类型的上下文分开,以防止互相干扰并实现专门的处理。 对于涉及多个方面的复杂应用来说,这是至关重要的。

隔离策略:

多代理架构: 不同的代理处理问题的不同方面

沙盒环境: 为代码、实验或敏感操作提供隔离的执行上下文

状态分区: 为不同的功能域分离状态对象

上下文的六种类型

要进行有效的上下文工程,需要了解代理所需的不同类型的上下文:

  1. 指令上下文
  • 角色定义: 代理应该采用什么角色?
  • 目标: 需要实现哪些具体目标?
  • 要求: 必须遵循哪些约束、格式或标准?
  • 示例上下文
    • 行为示例: 代理应该如何思考并解决问题?
    • 响应示例: 良好的输出应该是什么样的?
    • 反模式: 应避免哪些错误?
  • 知识上下文
    • 外部知识: 特定领域的信息、文档、最佳实践
    • 特定任务知识: API、schema、工作流、技术规范
  • 记忆上下文
    • 短期记忆: 当前会话状态、最近的交互
    • 长期记忆: 用户偏好、历史规律、习得的行为
  • 工具上下文
    • 工具描述: 每个工具能做什么,以及应在何时使用
    • 参数: 所需输入、可选设置、预期输出
    • 结果: 如何解释并利用工具输出
  • 护栏上下文
    • 输入验证: 确保输入干净、安全
    • 操作约束: 将工具和动作限制在安全、批准的操作范围之内
    • 输出验证: 确保响应符合安全和质量标准

    上下文策略:

    写入上下文: 存储用户编辑偏好、项目设置、常用效果

    读取上下文: 检索当前时间线状态、可用素材、用户的编辑历史

    压缩上下文: 将长时间的编辑会话总结为关键决策和更改

    隔离上下文: 将渲染操作与 UI 交互分离,隔离撤销/重做状态

    最佳实践和模式

    上下文生命周期管理

    性能优化

    延迟加载: 仅在需要时才加载上下文,而非预先加载。

    上下文缓存: 缓存经常访问的上下文以减少检索开销。

    增量更新: 以渐进方式更新上下文,而非重写全部内容。

    上下文修剪: 定期移除过时或无关的上下文。

    质量保证

    上下文验证: 确保检索的上下文相关且准确。

    反馈循环: 从代理的表现中学习,以改进上下文选择。

    A/B 测试: 测试不同的上下文策略以优化性能。

    工具和技术

    开源上下文工程栈

    内存管理:

    Zep AI: 面向 AI 代理的高级内存管理

    Redis: 快速的内存数据结构存储

    PostgreSQL 搭配 pgvector: 向量相似搜索

    知识库:

    Milvus: 开源向量数据库

    ChromaDB: AI 原生向量数据库

    Weaviate: 内置机器学习模型的向量搜索引擎

    代理编排:

    CrewAI: 多代理系统框架

    LangGraph: 基于图的代理工作流管理

    AutoGen: 多代理对话框架

    可观测性和跟踪:

    LangSmith: 用于 LLM 应用的调试和测试

    Weights & Biases: 实验跟踪和监控

    上下文工程模式

    • 上下文金字塔: 从一般层面(底层)到具体层面(顶层)构建上下文
      • 底层: 系统指令和核心知识
      • 中层: 特定任务的上下文和示例
      • 顶层: 即时的用户查询和会话状态
    • 记忆层级: 仿照人类的记忆系统
      • 感官记忆: 即时输入处理
      • 工作记忆: 当前任务上下文
      • 长期记忆: 持久的知识和经验
    • 上下文路由器: 智能地将不同类型的查询路由到适当的上下文集合
      • 技术类查询 → 文档 + 代码示例
      • 个人类查询 → 用户偏好 + 历史记录
      • 创意类查询 → 示例 + 风格指南

    衡量上下文工程的成功

    关键指标

    • 相关性得分: 检索到的上下文与任务之间的相关性有多高?
      • 通过人工评估或自动化相似度评分进行测量
      • 跟踪代理响应中上下文的利用率
    • 效率指标: 上下文的使用效率如何?
      • 每次成功完成任务所使用的 token 数
      • 上下文检索延迟
      • 缓存命中率
    • 质量指标: 上下文对提升代理性能的效果如何?
      • 带有和不带特定上下文类型时的任务完成率
      • 用户满意度评分
      • 错误率和恢复时间

    持续改进

    • 上下文分析: 跟踪哪种类型的上下文能够带来更好的结果。
    • 用户反馈整合: 从用户的纠正和偏好中学习。
    • 性能监控: 监控代理在不同上下文配置下的性能。

    上下文工程的未来

    • 自适应上下文系统: 能够针对不同用户和任务学习最佳上下文策略的代理。
    • 多模态上下文: 将文本、图像、音频和视频的上下文进行集成,以实现更丰富的理解。
    • 分布式上下文: 在多个代理和系统之间共享并同步上下文。
    • 预测性上下文加载: 根据当前的进展轨迹预测将需要哪些上下文。

    结论

    上下文工程代表了我们构建AI应用方式的根本性转变。 我们不能再将上下文视为一个简单的输入/输出问题,而必须架构出复杂的系统,以策略性地管理信息流,优化性能和成本,并随着时间推移适应用户需求。

    这四大支柱——写入、读取、压缩和隔离——提供了一个系统性思考上下文管理的框架。 结合六种上下文类型和现代工具,开发者可以构建出不仅智能而且真正具备上下文感知能力的代理。

    当你构建下一个AI应用时,请记住:一个普通代理和一个出色代理之间的区别往往不在于模型本身,而在于其管理和利用上下文的效能。 精通上下文工程,你就掌握了构建真正理解并适应用户需求的AI代理的艺术。

    53AI,企业落地大模型首选服务商

    产品:场景落地咨询+大模型应用平台+行业解决方案

    承诺:免费POC验证,效果达标后再合作。零风险落地应用大模型,已交付160+中大型企业

    联系我们

    售前咨询
    186 6662 7370
    预约演示
    185 8882 0121

    微信扫码

    添加专属顾问

    回到顶部

    加载中...

    扫码咨询