AI欢迎来到杨骐玮的简历网站
Contact me
← 返回 AI 探索

note

上下文工程

上下文工程是设计和管理 LLM 所需 Context 的系统化方法:按 Context 特性分工组合(Skills/RAG/API/Memory/Agent 决策);Skill 的本质是预定义 Context 注入,13 种 Context 按任务生命周期 MECE 切分,再按流动性分为静态锚点与动态协议。Skill 能定义协议,不能定义运行时状态。

摘要

五个来源合成一篇,覆盖 2026-04 到 2026-05 的认知演进:

  1. 全景:Context Engineering 的实践分工地图。Skills 只管静态预定义部分,动态数据、海量知识、持久化记忆靠其他实践组合;
  2. 本质:Skill 就是预定义 Context 注入,13 种 Context 按生命周期 MECE 切分;
  3. 设计法:五要素闭环 + 稳定性四原则 + 高效性三技巧;
  4. 流动性:静态锚点与动态协议的正交框架,Skill 能定义协议,不能定义运行时状态。

一、全景:Context Engineering 的实践分工

**Context Engineering 是设计和管理 LLM 所需 Context 的系统化方法。**不同实践方式解决不同问题,各有边界,需要组合使用:

Context 特性 实践方式 解决什么
静态(预定义) Skills、System Prompts、Few-shot Examples 不变的规则、流程、格式
动态(实时获取) RAG、API 调用、文件读取 实时数据、用户私有数据、外部知识
大规模(海量/超大) RAG(向量数据库)、Long Context + 分块 10 万+条知识库、超大单文件
持久化(跨 session) Memory Systems 用户偏好、历史记忆、个性化
动态调整(实时优化) Conversation Design、Agent 自主决策 复杂交互、自适应、自主 Agent

Skills 的边界

能做到:预定义的工作流程、行为约束、有限领域知识、工具调用方式、输出格式、验证方法。

做不到(及补位实践):实时数据 → API 调用;用户私有数据 → 文件读取;跨 session 持久化 → Memory Systems;海量知识 → RAG;根据反馈实时调整 → Conversation Design / Agent 决策;超大文件 → Long Context + 分块。

Skills 负责静态预定义的 Context,其余靠其他实践配合。例:智能客服 = Skills(流程/模板/边界)+ RAG(产品知识库)+ API(订单实时状态)+ Memory(用户历史)。


二、Skill 的本质:预定义 Context 注入

LLM 做不好某个任务,常见原因有两个:

  1. Context 不够,不知道该怎么做;
  2. Context 不对,有错误的行为倾向。

Skills 靠注入正确的 Context 应对这两类问题。

13 种 Context:按任务生命周期 MECE 切分

输入阶段(6 种):我是谁、做什么、我有什么

Context LLM 需要知道的
角色 我是谁、职责是什么
任务 要做什么、预期结果
工具 脚本、命令、API、调用方式
知识 规则、最佳实践、领域概念
数据 用户提供的具体信息、文件、参数
环境 依赖、前置条件、系统环境

处理阶段(5 种):怎么做、不能怎么做、为什么

Context LLM 需要知道的
流程 正常情况的操作步骤
分支 特殊场景、异常情况的处理
示例 完整的输入→输出参考
边界 禁止行为、必做行为、约束条件
原理 设计原则、底层逻辑、为什么

输出阶段(2 种):输出什么、怎么验证

Context LLM 需要知道的
格式 结构、样式、字段要求、模板
验证 验证方法、检查点、成功标准

设计 Skill:选择 Context 类型 + 组织内容

四步:诊断缺哪种 Context → 按三阶段选择类型 → 组织内容(单文件/多文件/渐进披露)→ 设计 Bundled Resources(scripts 对应工具 Context、references 对应知识 Context、assets 对应数据 Context)。

渐进披露:三层加载控制成本

Layer 1: Metadata(name + description)  ~100 tokens,常驻,用于判断是否触发
Layer 2: SKILL.md body                    <5000 tokens,触发后加载,核心 Context
Layer 3: Bundled Resources                按需加载,详细知识/示例/工具

三、设计方法:五要素、稳定性、高效性

五要素定义骨架

何时触发 → 输入什么 → 怎么执行 → 输出什么 → 结果怎么处理

每种输出都要有明确的后续动作(Critical 立即修、Minor 记录、可以反驳但需技术理由),流程才有闭环。

稳定性四原则

原则 做法 原理
输入标准化 占位符系统({BASE_SHA} 等),标注含义、格式、必填/可选 防遗漏,强制填充
输出结构化 分类分级 + 标准格式(File:line + 问题 + 建议)+ 最终判定 + 理由 主 agent 可程序化处理
行为边界 DO/DON’T 红黑名单 防止输出质量不稳定
检查清单 标准化 Review Checklist 每次执行覆盖相同范围

高效性三技巧

  • 上下文最小化:给 reviewer 精确构造的 context,不带会话历史。历史太长浪费 token、分散注意力,主 agent 还会自我辩护;
  • 模板复用:给完整示例,模型会模仿格式,减少格式错误;
  • 闭环设计:输入 → 执行 → 输出 → 处理 → 继续/停止,每种结果都有后续动作。

九步设计法与文件结构

九步:定义目标 → 五要素 → 占位符 → 输出结构 → 检查清单 → 行为边界 → 示例 → 闭环 → 触发条件。

三种文件范式:

范式 结构 适用
行为约束型 单文件 SKILL.md 限制 agent 行为、简单规则注入
工作流驱动型 SKILL.md + template.md 调 subagent、多 agent 协作
知识库型 SKILL.md(索引)+ AGENTS.md + rules/ 领域知识注入、大量规则

四、流动性:静态锚点与动态协议

在 13 种分类(按生命周期)之上加一个正交维度:流动性。长周期运行的 Agent 的 Skill,主要看这一层。

Skill 文件的三层构成

Skill 文件(静态注入)
├── 1. 静态锚点层:不漂移的"操作系统"
│     角色(我是谁)/ 知识(领域规则)/ 行为(DO/DON'T)
│     / 原理(自主决策的"宪法")/ 参照(标准输入→输出示例)
├── 2. 动态协议层:定义信息如何流动
│     流入协议(从哪个源读数据、读什么格式、何时触发)
│     处理协议(读→执行→判断→回流的路径、异常分支、周期绑定)
│     回流协议(自验证不达标重写、写回共享库、触发下游)
└── 3. 运行时层:Skill 不定义,由 LLM 执行产生
      每轮实际读到的数据/文件状态/自评分数/写入共享库的内容

能力边界:Skill 定义协议,不定义状态

层 谁定义 不定义什么
静态锚点 Skill 设计者 —
动态协议 Skill 设计者预设路径 —
运行时状态 LLM 执行产生 实际数据、自评分数、写入内容

两个典型实现

  • Quality Gates(自验证回流):输出初稿 → 按多维标准自评分 → 达阈值提交,不达标自动重写回流。Skill 定义的是评分标准和回流条件;Agent 自己打的分数、第几次重写才过,是运行时的,Skill 预设不了。
  • 共享库写入(跨 Agent 回流):共享知识库是跨 Agent 的持久化环境 Context。Skill 不能定义库里的内容,但定义了“谁写、谁读、写什么字段、读什么字段”。

稳定性原则的流动性演进

原有四条原则各补一条:占位符的内容来源是流入协议的目标文件;输出结构也是回流协议的写入格式;行为边界是核心的静态锚点;检查清单需包含回流完整性检查。

新增三原则:

  • 回流闭环:每种输出都要定义“写回到哪、谁读取、何时读取”,不能产生孤儿输出;
  • 自验证嵌入:回流路径中嵌入 Quality Gates,减少人工介入频率;
  • 周期绑定:触发可以是事件,也可以是周期(类似 cron),长周期 Agent 需要显式的时间锚点。

设计检查项的增补

在九步法之前加 Step 0:静态/动态分界线检查,哪些 Context 写一次管长期(静态锚点)?哪些需要定义读/判断/回流路径(动态协议)?动态协议的路径是否清晰可执行?之后加回流完整性检查(自验证兜底、写回内容谁读、读的时机)和跨周期连续性检查(上轮输出如何流入下一轮、共享库读写协议是否一致、长期运行会不会膨胀)。


关键要点

  • Context Engineering 是系统化方法:静态/动态/大规模/持久化/动态调整五类实践分工组合,Skills 只负责静态预定义部分
  • Skill 的本质是预定义 Context 注入,应对“Context 不够”和“Context 不对”两类问题
  • 13 种 Context 按生命周期 MECE:输入 6(角色/任务/工具/知识/数据/环境)、处理 5(流程/分支/示例/边界/原理)、输出 2(格式/验证)
  • 设计 Skill:诊断 → 选择 Context 类型 → 组织内容 → 设计 Bundled Resources;渐进披露三层控制成本
  • 稳定高效的 skill:标准化输入 + 结构化输出 + 行为边界 + 检查清单 + 闭环处理 + 示例引导
  • 流动性是正交第二维度:静态锚点保下限,动态协议定义信息流的读/判断/回流路径
  • Skill 能定义协议,不能定义运行时状态:实际数据、自评分数、写入内容都由执行产生
  • Quality Gates 是回流协议的典型实现;共享知识库是跨 Agent 的持久化环境 Context

来源

  • Context Engineering 实践分工地图
  • 13 种 Context 的 MECE 分类
  • Skill 设计方法论:五要素、稳定性四原则、高效性三技巧、九步法
  • 13 种 Context 的流动性重分类
  • 静态锚点与动态协议框架、Quality Gates、共享库