证据等级:B(工程设计提案)
本文讨论 Harness 如何控制模型可见信息、干扰项和验证成本。它不再把“上下文越长,注意力必然按1/L衰减”写成 Transformer 物理定律。任何质量收益必须通过固定模型、固定任务集和可复现实验确认。请先阅读 研究方法与事实校准。创新点索引:I-03
系列:LLM + Harness = Agent
上一篇:02 大脑主动驱动小脑
下一篇:04 稳定约束与可压缩历史分区
长任务中的 Agent 可能出现约束遗漏、目标漂移、工具选择错误、重复读取和审查质量下降,但这些现象不能简单归因于“注意力被平均稀释”。更准确的工程问题是:
在有限上下文、成本和延迟预算下,Harness 应该让模型看到哪些信息、按什么结构看到、哪些规则必须由 Runtime 强制执行、哪些结果必须由外部证据验证?
本文把“注意力预算”定义为一个产品工程概念,而不是一个可直接从序列长度推出的数学量。核心方案是:
O(n²) 不等于每个 Token 只能获得 1/n 注意力标准全注意力的 O(n²) 描述 Query-Key 配对数量随序列长度增长的计算复杂度。单个 Token 的实际注意力权重由 Query、Key、层、注意力头、位置编码、训练分布和任务内容共同决定,并不要求均匀分配。
因此,以下推导不能作为事实:
序列长度增长
→ 每条指令的权重必然等于 1/L
→ 约束遵守率必然与 1/L 成正比
长上下文可能增加检索难度、干扰项、位置敏感性和成本,但退化是否发生、何时发生、退化多少,必须对具体模型和任务测量。
质量变化可能来自:
重新检索、清理工具结果、重建活跃工作集、回滚错误状态或切换独立审查上下文,都可能恢复质量。因此不能把“继续对话只会继续变差”写成普遍结论。
40% → 95% 数据降级早期文章曾写出:
40% → >95%;8K–35K Token;60%。这些数字缺少完整任务集、Runner、原始结果、随机种子、基线定义、统计检验和独立复现,不能作为确认性实验结论。它们只保留为历史自测线索,不进入 README、产品承诺或 Release Gate。
必须分开测量:
| 概念 | 问题 | 典型指标 |
|---|---|---|
| 上下文保留 | 信息是否仍在请求中 | 字段/消息/摘要完整性 |
| Prefix Cache | Provider 是否复用了共同前缀计算 | hit/miss tokens、TTFT、成本 |
| 信息检索 | 模型是否找到了相关内容 | retrieval accuracy、引用正确率 |
| 约束遵守 | 最终动作是否满足规则 | violation rate、policy blocks |
| 任务质量 | 结果是否正确完成 | first-pass success、tests、human intervention |
前缀命中率高,不能证明模型遵守了约束;约束文本仍存在,也不能证明模型会执行它。
Harness 不能直接分配模型内部每一层的注意力权重,但可以控制模型输入和执行环境:
可见信息集合
信息顺序与结构
工具 Schema 和工具结果
Memory / Skill 披露范围
压缩与检索策略
子任务边界
权限与副作用
验证器与完成条件
模型、预算与重试策略
因此,“注意力预算管理”更准确的定义是:
Harness 对模型可见信息、确定性规则、推理成本和验证资源的联合分配。
不把任务质量写成 1/L 的函数,而使用可实验分解:
TaskQuality = f(
model,
task,
relevant_context_recall,
instruction_conflict,
tool_result_quality,
context_layout,
state_correctness,
policy_enforcement,
verifier_quality,
retry_budget
)
这个表达不声称知道闭式解。它的价值是把可能原因拆成可以单独控制和测量的变量。
以下规则不应仅依赖 Prompt:
.git 或受保护路径;模型可以解释规则、提出动作和生成候选方案,但最终执行权由 Policy、Sandbox、ChangeSet 和 Verifier 决定。
稳定规则区
系统角色、批准的项目规则、稳定工具契约
追加证据区
决策、测试、Checkpoint、审查结论、失败原因
活跃工作集
当前目标、相关文件片段、最近工具结果、待处理风险
外部索引
完整轨迹、历史 Session、归档文档、可按需读取的 Skill Body
分区目标不是宣称“前面的 Token 永远更受关注”,而是:
默认只加载索引和短描述;Body、详细 Memory 和低频工具在匹配到当前任务时再读取。
但按需披露必须处理两个风险:
因此需要记录:
candidate set
selected items
selection reason
confidence
fallback behavior
missed dependency
子任务可以使用独立 Session,避免把全部工具轨迹带回主线程。但子任务返回的摘要不能成为无来源的“新事实”。至少应附带:
source files / tool calls
diff or artifact hash
tests executed
unverified assumptions
failure samples
主 Agent 和 Reviewer 应能从摘要回到原始证据,而不是只相信另一模型的自然语言结论。
Checkpoint 保存的是任务状态和证据索引,不是简单摘要:
objective
approved scope
completed steps
pending steps
changeset ids
test results
open risks
source refs
resume preconditions
压缩器可以重写历史叙述,但不能覆盖:
记录:
prefix fingerprint
prefix length
hit tokens
miss tokens
drift reason
TTFT
total latency
input/output tokens
estimated cost
Cache 优化只有在以下条件同时成立时才有效:
对同一批 Held-out 任务控制以下变量:
| 因素 | 对照 | 处理 |
|---|---|---|
| 上下文布局 | 全历史追加 | 四区布局 + 活跃工作集 |
| Skill | 全量加载 | 索引 + 按需 Body |
| 工具结果 | 原始全文 | 清洗、截断、Artifact 引用 |
| 子任务 | 共享历史 | 独立 Session + Evidence 返回 |
| 压缩 | 自由摘要 | 结构化 Checkpoint + 来源索引 |
| 安全规则 | Prompt 约束 | Runtime Policy |
优先指标:
first-pass task success
success within retry budget
constraint violation rate
incorrect tool-call rate
human intervention rate
rollback rate
source citation accuracy
资源指标:
prompt/output tokens
cache hit/miss tokens
TTFT
total latency
cost per successful task
不得只报告 Token 下降,不报告正确性和失败样本。
必须分开:
development set
prompt-tuning set
validation set
final held-out test set
任务专用 acceptance hints、Verifier feedback 和多轮 retry 都必须记录,不能把调参后的最终完成率当作首次泛化成功率。
因此所有策略都必须允许:
disable
fallback
rebuild context
invalidate cache
escalate to user
reproduce from evidence
“注意力预算”是一个有用的工程隐喻,但不是 α = 1/L 的物理定律。
可靠的 Harness 不试图通过口号让模型“记得更多”,而是:
只有当实验同时证明正确性不下降、风险不增加、每成功任务成本或延迟稳定改善时,某种上下文策略才应进入产品默认值。
← 返回全部 18 篇研究