上下文工程即缺口工程:让AI Agent精准击中用户信息缺口

系列一:AI Agent × GAP模型 | 第5篇(深度型)
上下文窗口不是"记忆容器",而是"缺口感知器"——Agent如何通过上下文精确感知并填充用户的信息缺口。


本文你将获得

  • 🧩 上下文工程的产品化解读框架(非技术视角)
  • 📐 上下文与信息缺口的映射模型
  • 🔄 上下文管理的4层架构(感知层/记忆层/推理层/输出层)
  • 🎯 Agent精准击中缺口的6种设计策略
  • 📊 上下文质量评估矩阵
  • 📋 上下文工程设计检查清单(16项)

引言:为什么同一个模型,有时"正中下怀",有时"答非所问"?

你一定有过这样的体验——

同一个大模型,在同一个产品里,有时候给你的回答精准得像"读心术",你刚想到的问题它已经替你回答了;但有时候,你明明描述得很清楚,它却给你一堆无关信息,让你忍不住想摔键盘。

比如你问AI编程助手:“这段代码有Bug吗?”——

好的回答:它不仅指出了Bug的位置,还分析了Bug产生的原因,顺便提醒你"这个函数在并发场景下还有另一个潜在问题"。你甚至没问并发,但它知道你的项目是一个高并发服务。

差的回答:它把你的代码重新解释了一遍,末尾加了一句"总体来看代码质量不错"。你心里想的是"我当然知道代码不错,我问的是Bug在哪里"。

差别在哪里?不在于模型参数,不在于训练数据,而在于上下文工程——Agent是否"理解"了你的信息缺口在哪里。

这就是本文的核心论点:

上下文工程(Context Engineering)的本质,就是信息缺口工程的AI实现。Agent的上下文窗口不是"记忆容器",而是"缺口感知器"——它能通过上下文精确感知用户的信息缺口,并针对性地填充。

这个视角将彻底改变你设计AI产品的方式:你不再思考"给模型喂什么信息",而是思考"如何让模型感知用户缺什么信息"。

上下文工程:信息流与缺口感知


一、上下文工程的产品视角

1.1 什么是上下文工程?(非技术解读)

在技术圈,上下文工程通常被定义为"管理输入大语言模型的信息,以优化输出质量的方法"。这个定义没错,但它是工程师视角的。

产品视角来看,上下文工程有一个更本质的定义:

上下文 = Agent理解用户的"信息总和"

注意,不是"信息量",而是"信息总和"——它不仅包括用户说了什么,还包括用户没说什么、用户的历史行为、用户所处的环境、以及用户自己都没意识到的隐含需求。

┌─────────────────────────────────────────────────────────────┐
│                    上下文的信息流全景                          │
│                                                             │
│  ┌──────────────┐                                           │
│  │  用户输入     │─── 显性信息(说了什么)                    │
│  └──────────────┘                                           │
│         │                                                    │
│         ▼                                                    │
│  ┌──────────────┐     ┌──────────────┐                     │
│  │  行为信号     │───▶│              │                     │
│  └──────────────┘     │   上下文      │───▶ 缺口感知 ──▶ 输出│
│         │             │   窗口        │                     │
│         ▼             │              │                     │
│  ┌──────────────┐     │              │                     │
│  │  环境信号     │───▶│              │                     │
│  └──────────────┘     └──────────────┘                     │
│         │                                                    │
│         ▼                                                    │
│  ┌──────────────┐                                           │
│  │  历史记忆     │─── 隐性信息(过去发生了什么)               │
│  └──────────────┘                                           │
│                                                             │
│  关键洞察:上下文窗口的真正功能不是"存储信息",                 │
│            而是"通过信息对比来感知缺口"                         │
└─────────────────────────────────────────────────────────────┘

这个视角的转变至关重要。传统理解中,上下文窗口是一个"容器"——你往里面塞更多信息,模型就能更好地回答。但如果我们把上下文窗口理解为"缺口感知器",逻辑就变了:

  • 塞入信息的目的不是让模型"知道得更多",而是让模型能更精确地"感知用户缺什么"
  • 上下文的质量不取决于"信息量",而取决于"缺口对比度"——已知与未知之间的边界是否清晰

1.2 上下文 vs 信息缺口:一个映射模型

上下文与信息缺口之间存在一个精密的映射关系。我们可以把上下文中的信息分为三类,每类对应一种缺口形态:

上下文信息类型 定义 对应的缺口形态 产品设计启示
已知信息 上下文中明确存在的、用户已经掌握的信息 定义缺口的边界——告诉Agent"用户已经知道什么" 不要重复用户已知的信息,否则会造成"信息冗余厌恶"
缺失信息 上下文中应该存在但实际不存在的、用户正在寻找的信息 就是信息缺口本身——用户的核心需求 Agent的任务就是精准识别并填充这些缺失
隐含信息 上下文中没有直接表达、但可以从已有信息中推断出来的信息 潜在缺口——用户自己都没意识到的需求 这是Agent"超预期"的关键来源

用一个映射模型来可视化这种关系:

┌─────────────────────────────────────────────────────────────┐
│               上下文-缺口映射模型                              │
│                                                             │
│  ┌─────────────────────────────────────┐                   │
│  │           上下文空间                  │                   │
│  │                                     │                   │
│  │   ████████  已知信息                 │                   │
│  │   ████████  (用户已掌握的知识)       │                   │
│  │                                     │                   │
│  │   · · · · ·  缺失信息 ←── 核心缺口   │                   │
│  │   · · · · ·  (用户正在寻找的答案)    │                   │
│  │                                     │                   │
│  │   ░░░░░░░░  隐含信息                 │                   │
│  │   ░░░░░░░░  (用户没意识到的需求)     │                   │
│  │                                     │                   │
│  └─────────────────────────────────────┘                   │
│                                                             │
│  Agent的工作流程:                                            │
│  1. 识别"已知" → 确定缺口边界(不重复已知)                     │
│  2. 定位"缺失" → 精准填充核心缺口                              │
│  3. 挖掘"隐含" → 提供超预期的价值                              │
└─────────────────────────────────────────────────────────────┘

这个映射模型揭示了一个反直觉的洞察:上下文中的"已知信息"越多,Agent反而越容易精准定位缺口。这不是因为模型需要更多信息来回答,而是因为"已知"与"缺失"之间的对比度更高了,缺口的轮廓更清晰了。

这就像医生诊断:你告诉医生的信息越详细(已知),医生越能精准判断你缺什么(缺失),甚至能发现你自己没注意到的健康隐患(隐含)。


二、上下文管理的4层架构

理解了上下文与缺口的映射关系,接下来我们拆解Agent的上下文管理系统。一个设计良好的Agent,其上下文管理可以分为四层架构:

┌─────────────────────────────────────────────────────────────┐
│                  上下文管理4层架构                              │
│                                                             │
│  ┌─────────────────────────────────────────────────────┐   │
│  │  第四层:输出层  —— 针对性填充缺口                      │   │
│  │  ┌─────────────────────────────────────────────┐    │   │
│  │  │  第三层:推理层  —— 从上下文推断缺口            │    │   │
│  │  │  ┌─────────────────────────────────────┐    │    │   │
│  │  │  │  第二层:记忆层  —— 存储和检索上下文    │    │    │   │
│  │  │  │  ┌─────────────────────────────┐    │    │    │   │
│  │  │  │  │  第一层:感知层  —— 收集信息   │    │    │    │   │
│  │  │  │  └─────────────────────────────┘    │    │    │   │
│  │  │  └─────────────────────────────────────┘    │    │   │
│  │  └─────────────────────────────────────────────┘    │   │
│  └─────────────────────────────────────────────────────┘   │
│                                                             │
│  信息流向:感知 → 记忆 → 推理 → 输出                          │
│  缺口流向:识别 → 保留 → 定位 → 填充                          │
└─────────────────────────────────────────────────────────────┘

2.1 感知层:收集用户信息

感知层是上下文工程的入口。它的任务不是"收集尽可能多的信息",而是"收集能帮助识别缺口的信息"。

感知层需要关注三类信息源:

(1)显性信息——用户说了什么

这是最直接的信息源。用户的问题、指令、反馈,都是显性信息。但显性信息往往只是缺口的"表层表达",而非缺口本身。

用户问:“怎么优化这段代码?”
显性信息:用户想优化代码。
实际缺口:用户可能不知道代码的性能瓶颈在哪里、不知道有哪些优化手段、不知道优化的优先级如何排列。

(2)隐性信息——用户没说什么但暗示了什么

隐性信息需要Agent从用户的表达方式、用词选择、提问时机中推断。这是区分"平庸Agent"和"优秀Agent"的关键能力。

用户在凌晨两点问:“这个API的并发上限是多少?”
显性信息:用户想知道API并发上限。
隐性信息:用户很可能正在处理一个线上性能问题,时间紧迫,需要的不只是一个数字,而是一个解决方案。

(3)环境信息——时间、设备、历史行为

环境信息为缺口识别提供"情境坐标"。同样的一个问题,在不同的环境下,对应的缺口完全不同。

环境维度 信息示例 对缺口识别的影响
时间 凌晨两点、工作日白天、周末 判断紧迫程度,决定回答的详细程度
设备 手机、桌面端、API调用 判断使用场景,决定输出格式
历史行为 过去问过类似问题、频繁切换话题 判断用户的专业水平和当前关注点
会话状态 对话刚开始、已经深入讨论了10轮 判断用户是在探索还是在收尾

2.2 记忆层:存储和检索

记忆层的核心挑战不是"存多少",而是"存什么、怎么检索"。从缺口工程的视角看,记忆层的设计需要解决一个问题:如何让过去的上下文服务于当前的缺口识别?

记忆层包含三种记忆机制:

(1)短期记忆——当前会话

短期记忆保存当前对话的完整上下文。它的作用是维持对话的连贯性,让Agent能追踪缺口的变化轨迹。

第一轮:用户问"Python怎么读取CSV?"
第二轮:用户问"如果是TSV呢?"
第三轮:用户问"那JSON呢?"

短期记忆让Agent知道:用户的缺口不是"怎么读JSON",而是"Python怎么读取不同格式的数据文件"。缺口在演化,但核心需求不变。

(2)长期记忆——用户偏好与历史交互

长期记忆保存跨会话的用户信息。它的作用是建立"用户模型",让Agent能基于对用户的深度理解来识别缺口。

ChatGPT的"记忆"功能就是一个典型案例:它记住了你的职业是产品经理、你偏好简洁的回答风格、你正在做一个AI项目。当你问一个模糊问题时,这些长期记忆帮助它更精准地定位缺口。

(3)RAG——检索增强生成

RAG(Retrieval-Augmented Generation)从产品角度看,本质上是为Agent提供一个"外部知识库"来扩展缺口感知的范围

没有RAG的Agent,只能在"用户输入 + 训练数据"的范围内感知缺口。有了RAG,Agent可以检索企业内部文档、用户的历史项目文件、实时的行业数据——这些外部信息极大地丰富了上下文,让Agent能感知到更深层、更精准的缺口。

┌─────────────────────────────────────────────────────────────┐
│                   记忆层的三级结构                             │
│                                                             │
│  ┌──────────────────────────────────────────────────┐      │
│  │  长期记忆(跨会话)                                │      │
│  │  用户画像 / 偏好 / 历史模式 / 领域知识              │      │
│  │  ┌────────────────────────────────────────────┐  │      │
│  │  │  RAG知识库(外部检索)                       │  │      │
│  │  │  企业文档 / 行业数据 / 实时信息               │  │      │
│  │  │  ┌──────────────────────────────────────┐  │  │      │
│  │  │  │  短期记忆(当前会话)                   │  │  │      │
│  │  │  │  对话历史 / 当前任务状态 / 临时上下文    │  │  │      │
│  │  │  └──────────────────────────────────────┘  │  │      │
│  │  └────────────────────────────────────────────┘  │      │
│  └──────────────────────────────────────────────────┘      │
│                                                             │
│  越外层的记忆,覆盖范围越广,但对当前缺口的针对性越弱            │
│  越内层的记忆,覆盖范围越窄,但对当前缺口的针对性越强            │
└─────────────────────────────────────────────────────────────┘

2.3 推理层:从上下文推断缺口

推理层是上下文工程的"大脑"。感知层收集了信息,记忆层存储了信息,推理层的任务是从这些信息中推断出用户真正的信息缺口

推理层需要完成三个关键任务:

(1)缺口定位——用户真正需要什么?

这是最核心的推理任务。用户的表面问题往往不等于真正的缺口。

用户问:“React和Vue哪个好?”

表面缺口:React和Vue的对比。
推理后的真实缺口:

  • 如果用户是新手 → 缺口是"我应该学哪个作为入门?"
  • 如果用户是团队Leader → 缺口是"我们技术选型应该用哪个?"
  • 如果用户是资深开发者 → 缺口是"在特定场景下两者的性能差异是什么?"

(2)缺口优先级——先填哪个缺口?

一个复杂问题往往包含多个缺口。推理层需要判断哪些缺口是核心的、哪些是次要的。

用户问:“帮我设计一个推荐系统。”

识别到的缺口:

  • 推荐算法选型(核心缺口)
  • 数据采集方案(核心缺口)
  • 系统架构设计(次要缺口,依赖前两个)
  • 团队人员配置(潜在缺口)
  • 部署和运维方案(潜在缺口)

优秀的Agent会先解决核心缺口,再逐步展开次要和潜在缺口。

(3)缺口验证——这个缺口是真实的吗?

不是所有"看起来像缺口"的都是真实缺口。推理层需要验证缺口的真实性,避免"过度填充"。

用户问了一个关于Python基础语法的问题,但他的GitHub上有大量高级Python项目。

推理判断:这个"基础语法缺口"很可能是假的——用户可能是在帮别人问、在写教学文档、或者在测试Agent。直接给一个入门级回答反而会冒犯用户。

2.4 输出层:针对性填充缺口

输出层是上下文工程的"最后一公里"。推理层精确定位了缺口,输出层的任务是用最合适的方式填充它。

输出层的质量可以用三个维度来衡量:

维度 定义 评估标准 与GAP模型的关联
精准度 回答是否击中了真正的缺口? 用户是否觉得"这就是我要的"? 对应GAP模型中的**Payoff(回报)**质量
完整度 是否完全填充了缺口? 用户是否还需要追问才能解决问题? 决定了闭环能否顺利形成
意外度 是否提供了超出预期的价值? 用户是否产生了"没想到它连这个都考虑到了"的反应? 直接对应RPE(奖赏预测误差)——超出预期的回报会触发更强的正向反馈

其中,意外度是最容易被忽视、但对用户留存影响最大的维度。

当Agent不仅回答了用户的问题,还预判了用户的下一个问题、指出了用户没意识到的风险、提供了用户没想到的替代方案——这种"超出预期"的体验,正是我们在本系列第三篇中讨论的**奖励预测误差(RPE)**在产品层面的体现。

回顾RPE理论(Schultz, 1997):当实际回报超过预期回报时,多巴胺系统会产生一个正向的预测误差信号,驱动个体重复导致该回报的行为。

在Agent产品中,"预期回报"是用户根据问题复杂度预判的答案质量,“实际回报"是Agent实际给出的答案。当Agent通过上下文工程实现了"意外度”——实际回报 > 预期回报——用户就会获得一个正向的RPE信号,驱动他继续使用。


三、Agent精准击中缺口的6种设计策略

理解了4层架构之后,我们进入实战环节。以下是Agent精准击中缺口的6种设计策略,每一种都对应上下文工程的一个具体落地方法。

3.1 主动追问策略

核心逻辑:当上下文不足以精确定位缺口时,Agent主动提问来缩小缺口范围。

这不是简单的"您能再说详细点吗",而是一种有针对性的缺口探测——Agent基于已有上下文,提出最能帮助定位缺口的问题。

┌─────────────────────────────────────────────────────────────┐
│                   主动追问策略示意                              │
│                                                             │
│  用户输入:"怎么优化性能?"                                    │
│       │                                                     │
│       ▼                                                     │
│  ┌─────────────┐                                           │
│  │ 上下文分析   │  缺口范围太大,需要收敛                      │
│  └─────────────┘                                           │
│       │                                                     │
│       ▼                                                     │
│  Agent追问(三选一,基于已有上下文选择最可能的):                │
│  ┌──────────────────────────────────────────────────┐      │
│  │ ① "您指的是数据库查询性能,还是API响应速度?"       │      │
│  │ ② "目前的性能瓶颈大概在哪个环节?"                  │      │
│  │ ③ "是前端渲染性能,还是后端处理性能?"              │      │
│  └──────────────────────────────────────────────────┘      │
│       │                                                     │
│       ▼                                                     │
│  用户回答 → 缺口范围缩小 → Agent精准填充                       │
└─────────────────────────────────────────────────────────────┘

典型案例:Perplexity的追问建议

Perplexity在每次回答后,会基于当前上下文自动生成3-5个"相关问题"。这些追问建议不是随机的,而是基于当前回答中的信息缺口来生成的——它们指向用户可能还没意识到、但很可能感兴趣的方向。这就是主动追问策略的产品化实现。

3.2 上下文继承策略

核心逻辑:跨会话保持上下文连续性,让Agent在每次新对话开始时,都能"继承"之前积累的用户理解。

上下文继承解决了AI产品中一个普遍的痛点:每次新对话都要重新解释背景。

┌─────────────────────────────────────────────────────────────┐
│                   上下文继承示意                               │
│                                                             │
│  会话A(三天前):                                             │
│  用户:"我在做一个电商推荐系统,用Python写的。"                  │
│  Agent:[回答了推荐算法相关的问题]                              │
│       │                                                     │
│       ▼  上下文提取                                           │
│  ┌─────────────────────────────────────┐                   │
│  │ 长期记忆更新:                        │                   │
│  │ - 用户在做电商推荐系统                 │                   │
│  │ - 技术栈:Python                      │                   │
│  │ - 专业水平:中高级                     │                   │
│  └─────────────────────────────────────┘                   │
│       │                                                     │
│       ▼  上下文继承                                           │
│  会话B(今天):                                               │
│  用户:"怎么处理冷启动问题?"                                   │
│  Agent:(无需追问"什么系统",直接基于继承的上下文回答)          │
│  "针对您的电商推荐系统,冷启动有三种策略……"                      │
└─────────────────────────────────────────────────────────────┘

典型案例:ChatGPT的"记忆"功能

ChatGPT的Memory功能会自动从对话中提取关键信息(用户的职业、项目、偏好等),并在后续对话中自动调用。从缺口工程的角度看,这个功能的价值不在于"记住用户",而在于每次新对话开始时,Agent不需要从零开始感知缺口,而是可以直接在一个更精确的起点上工作

3.3 多源融合策略

核心逻辑:整合多个信息源来构建更完整的上下文,从而更全面地感知缺口。

单一信息源往往只能揭示缺口的某个侧面。多源融合策略通过同时分析多个信息源,构建一个"立体"的上下文视图。

信息源 提供的缺口信息 融合后的增强效果
用户的问题描述 缺口的表层表达 -
用户的代码/文档 缺口的技术背景 判断缺口的深度和专业级别
错误日志/运行数据 缺口的客观证据 验证缺口是否真实
相关文档/知识库 领域标准答案 判断缺口的"标准解法"

典型案例:AI编程助手的多源分析

当你在Cursor中遇到一个Bug时,它不只是分析你当前的代码——它会同时参考你的项目结构、依赖配置、Git提交历史、甚至相关的Stack Overflow讨论。这种多源融合让它的上下文远比"当前文件内容"丰富,因此它能感知到的缺口也远比表面问题更深层。

3.4 渐进精炼策略

核心逻辑:先给一个粗略但有用的答案,再根据用户的反馈逐步精炼,在迭代中逼近真正的缺口。

这种策略连接了产品设计中的**“渐进式揭示”(Progressive Disclosure)**模式——不要一次性给出所有信息,而是根据用户的反馈逐步展开。

┌─────────────────────────────────────────────────────────────┐
│                   渐进精炼策略示意                              │
│                                                             │
│  第一轮:粗略填充                                             │
│  ┌─────────────────────────────────────┐                   │
│  │ Agent:"推荐系统有协同过滤和内容过滤    │                   │
│  │ 两种主流方案,您想了解哪种?"           │                   │
│  └─────────────────────────────────────┘                   │
│       │                                                     │
│       ▼  用户反馈 → 缺口收窄                                  │
│  第二轮:定向精炼                                             │
│  ┌─────────────────────────────────────┐                   │
│  │ 用户:"协同过滤,但我的数据很稀疏。"    │                   │
│  │ Agent:"数据稀疏场景下,可以考虑矩阵    │                   │
│  │ 分解、知识图谱增强、或者混合方案……"     │                   │
│  └─────────────────────────────────────┘                   │
│       │                                                     │
│       ▼  用户反馈 → 缺口进一步收窄                             │
│  第三轮:精准填充                                             │
│  ┌─────────────────────────────────────┐                   │
│  │ 用户:"矩阵分解具体怎么做?"           │                   │
│  │ Agent:(给出完整的实现方案和代码)      │                   │
│  └─────────────────────────────────────┘                   │
│                                                             │
│  每一轮交互都在收窄缺口范围,直到精准填充                         │
└─────────────────────────────────────────────────────────────┘

渐进精炼策略的优势在于:它避免了"过度回答"(给太多信息造成认知负担)和"回答不足"(信息不够无法解决问题)两个极端,通过多轮交互逐步逼近用户的真实缺口。

3.5 隐性需求探测策略

核心逻辑:从用户的行为模式中推断用户自己都没有明确表达的需求。

这是最高级的缺口感知能力。它要求Agent不仅理解"用户说了什么",还要理解"用户的行为模式暗示了什么"。

场景:用户连续三次在Agent中查询不同数据库的对比信息(MySQL vs PostgreSQL、MongoDB vs Redis、Elasticsearch vs Solr)。

显性缺口:每次查询的具体对比信息。
隐性需求:用户很可能在做技术选型决策。Agent可以主动提供"技术选型决策框架"或"根据您的业务场景推荐最合适的数据库"——这是用户自己都没明确提出的缺口。

隐性需求探测的关键在于行为模式识别——单个行为可能没有意义,但一系列行为的组合模式会暴露出深层的缺口。

3.6 上下文压缩策略

核心逻辑:在有限的上下文窗口中,保留对缺口感知最有价值的信息,丢弃冗余信息。

上下文窗口是有限的资源。不是所有上下文信息对缺口感知都同等重要。上下文压缩策略的核心是信息优先级排序——在窗口即将溢出时,优先保留那些对缺口感知最关键的信息。

┌─────────────────────────────────────────────────────────────┐
│                   上下文压缩优先级                              │
│                                                             │
│  优先级1(必须保留):                                         │
│  ├── 用户的当前问题和核心需求                                   │
│  ├── 当前任务的中间状态                                       │
│  └── 缺口定位的关键线索                                       │
│                                                             │
│  优先级2(尽量保留):                                         │
│  ├── 近期对话的关键结论                                       │
│  ├── 用户的明确偏好和约束                                     │
│  └── 已尝试过但失败的方案                                     │
│                                                             │
│  优先级3(可以丢弃):                                         │
│  ├── 已解决的历史子问题                                       │
│  ├── 重复的上下文信息                                        │
│  └── 与当前缺口无关的背景信息                                  │
│                                                             │
│  设计原则:压缩的不是"信息量",而是"对当前缺口感知的             │
│            贡献度低的信息"                                     │
└─────────────────────────────────────────────────────────────┘

产品设计意义:上下文压缩策略提醒我们,Agent产品的设计不应该追求"塞入更多上下文",而应该追求"让每一块上下文都服务于缺口感知"。一个精心压缩的上下文,比一个塞满无关信息的上下文,更能帮助Agent精准击中缺口。


四、上下文质量评估矩阵

如何评估你的Agent的上下文工程质量?以下是一个5维评估矩阵:

评估维度 定义 优秀(5分) 良好(3-4分) 待改进(1-2分)
准确性 上下文信息是否正确、无歧义? 所有信息准确无误,无歧义表达 偶有模糊但不影响缺口识别 存在错误信息导致缺口误判
完整性 上下文是否覆盖了缺口感知所需的关键信息? 覆盖显性+隐性+环境三类信息 覆盖显性信息,部分隐性信息 仅覆盖用户直接输入的信息
相关性 上下文信息与当前缺口的关联程度? 每条信息都直接服务于缺口感知 大部分信息相关,少量噪声 大量无关信息干扰缺口识别
时效性 上下文信息是否反映了最新的状态? 实时更新,反映用户最新意图 基本更新,偶有滞后 使用过时信息,缺口定位偏差
一致性 多源信息之间是否矛盾? 多源信息互相印证,形成统一视图 轻微矛盾但不影响整体判断 信息冲突严重,Agent无所适从

使用方法:对你的Agent产品进行一次完整的用户对话测试,然后对每个维度打分。总分20分以上为优秀,15-19分为良好,15分以下需要重点优化。

特别需要关注的是相关性一致性这两个维度——它们是上下文工程中最容易被忽视、但对缺口感知影响最大的因素。大量无关信息(低相关性)会稀释Agent对缺口的感知精度;矛盾的信息(低一致性)会让Agent在多个可能的缺口之间摇摆不定。


五、上下文工程设计检查清单

以下是设计Agent上下文工程时的16项检查清单,覆盖从感知层到输出层的完整链路:

感知层(4项)

  • S1 Agent是否能区分用户的显性问题和隐性意图?
  • S2 Agent是否利用了环境信息(时间、设备、场景)来辅助缺口判断?
  • S3 Agent是否能从用户的用词和表达方式中推断专业水平?
  • S4 Agent是否记录了用户的历史行为模式?

记忆层(4项)

  • M1 短期记忆是否完整保留了当前会话的关键上下文?
  • M2 长期记忆是否建立了有效的用户画像?
  • M3 RAG检索是否能找到与当前缺口最相关的知识?
  • M4 记忆检索的优先级排序是否合理(最相关的排在最前)?

推理层(4项)

  • R1 Agent是否能区分用户的"表面问题"和"真实缺口"?
  • R2 当存在多个缺口时,Agent是否能正确判断优先级?
  • R3 Agent是否能验证缺口的真实性(避免过度填充)?
  • R4 Agent是否能从行为模式中推断隐性需求?

输出层(4项)

  • O1 Agent的回答是否精准击中了用户的核心缺口?
  • O2 Agent是否避免了重复用户已知的信息?
  • O3 Agent是否提供了超出预期的价值(触发正向RPE)?
  • O4 Agent的回答格式是否适应当前场景(简洁/详细/结构化)?

结语:从"喂信息"到"感知缺口"

上下文工程正在成为AI产品设计的核心能力。但我们对它的理解,需要从"如何给模型喂更多信息"升级为"如何让模型精确感知用户缺什么信息"。

这个转变的本质是:从信息供给思维,转向缺口感知思维

传统的上下文工程关注的是"输入端"——如何构造更好的Prompt、如何检索更相关的文档、如何管理更长的对话历史。而缺口视角的上下文工程关注的是"感知端"——Agent是否真正理解了用户的信息缺口在哪里、有多大、有多紧迫。

当你下次设计Agent产品时,不妨问自己三个问题:

  1. 我的Agent能从用户的输入中感知到几个层次的缺口?(表面问题 / 真实需求 / 隐性需求)
  2. 我的Agent的上下文中,"已知"与"缺失"的边界是否足够清晰?
  3. 我的Agent的回答中,有多少比例是真正填充缺口的,多少比例是冗余信息?

这三个问题的答案,将决定你的Agent是"正中下怀"还是"答非所问"。


🔖 系列连载中
本文属于「AI Agent × GAP模型」系列(第5篇/共6篇)

  • 上一篇:《AI产品的"多巴胺开关":奖励预测误差在智能体中的应用》
  • 下一篇:《MCP工具生态的产品化思考:从"连接万物"到"精准交付"》
  • 关注本博客,第一时间收到更新推送

💎 关注后私信回复"Agent",获取配套资料:

  • 上下文工程设计检查清单(16项)
  • 上下文质量评估矩阵模板
Logo

AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。

更多推荐