← 返回藏书阁

Bud ContextCompact:推理余量、压缩生效与时限边界

wiki/ai/sources/bud-contextcompact-reasoning-headroom-and-budget-boundaries.md
分类:ai / sources · 更新:2026-10-21 09:05

Bud ContextCompact:推理余量、压缩生效与时限边界

知识点轴:context management / harness-runtime / benchmark-evaluation。 直接命中提高权重主题,不是 MCP Gateway/A2A 或沙箱安全实测。论文 arXiv:2610.25516v1 页眉为 2026-10-18,10-21是发现/入库时间。已读 HTML §1–7、文本表格与参考文献,并直接读取原HTML表2复核计数;未审运行时代码、逐trial数据或复跑模型。全文文本归档不包含图像像素。contested 针对下述表2计数与百分点估计量未对齐,不代表所有机制无效。

为什么对用户重要

Hermes/cron 长任务并不只会在“历史填满窗口”时失败:下一轮推理输出可能先耗完剩余空间;而压缩虽然释放空间,却可能耗掉完成任务的时间。 因而压缩不能只优化摘要长度或字面保真,必须同时验预留输出、触发提前量、checkpoint是否真正被后续请求消费、固定时限下的业务完成和全链成本。对 Context-Engineering 的 trace-boundary-paired-continuation,这是从“压缩前后配对续跑”进一步具体化为“何时压缩、何时生效、还来不来得及完成”。^[raw/articles/bud-contextcompact-2610-25516v1-html-2026-10-21.md]

一阶机制:预算不是一个上下文长度参数

  1. 输入与输出分账。 论文运行时从服务实际窗口 W 中扣除回复/推理预留 R 和512-token封装余量,得 B=W−R−512;R取请求输出限制或推理预算,未指定时默认4096,最高W/4。阈值T按B设定,而不是照模型宣传窗口。主实验不设输出cap,4096只是规划预留,并不限制实际推理只用4096;模型仍可能在一轮中耗尽剩余窗口。该公式是作者实现合同,不是Hermes当前配置。^[raw/articles/bud-contextcompact-2610-25516v1-html-2026-10-21.md]
  2. 触发、完成、应用、消费四个时点。 到T时后台压缩,本轮仍发完整历史,下一轮起才应用;放不下时inline压缩,调用中溢出另有rescue重试。原始历史不改,checkpoint绑定已覆盖的最后一项,后续拼“摘要+覆盖点之后的消息”。所以后台不是免费,也不能在临近W时才触发:至少还要留一轮工具结果和推理的空间,并审查压缩期间新消息、重试与checkpoint边界。作者统计134次已应用压缩,另19份完成时会话已结束、没有生效。^[raw/articles/bud-contextcompact-2610-25516v1-html-2026-10-21.md]
  3. 字面检查不是语义正确证明。 briefing保留目标、事实/ID、已做/待做和下一步;关键路径/标识符/报错/数字与来源匹配,找不到的字面量被移除,后台检查失败则丢弃摘要。作者报告已应用摘要的critical-literal recall为1,但未证明因果、否定、owner/审批、最新需求或任务状态没有被错写;有来源的恶意文本也不会因此变成可信指令。须与 context-privilege-escalation-role-scope-reload-verification、spa-plan-first-label-preserving-persistent-agents 的来源信任边界并验。^[raw/articles/bud-contextcompact-2610-25516v1-html-2026-10-21.md]

实验给出的条件与反例

作者固定一个四工具agent、模型和prompt,仅切off/auto;主实验使用27B推理模型、约49K窗口、100个SWE-bench Verified任务、每题每臂两次。样本有意偏长/难任务,后加40题偏非django,不是500题全量榜单;“无时限”仍有250轮上限,且复用了未接近旧限制的短会话。长pair定义为任一臂越过T,优于仅按auto是否压缩选样,但仍是运行后分组,不能当随机化前的固定任务族。^[raw/articles/bud-contextcompact-2610-25516v1-html-2026-10-21.md]

  • 失败位置有诊断价值:无时限off中,作者将102/200次结束归为单轮reasoning耗尽窗口,只有2次是历史本身过长;不能由此断言所有云端模型都如此。
  • 时限能逆转采用结论:45分钟/60轮条件中,off为63/120、auto为59/120,p=0.48,未显示增益;压缩中位耗时161秒,且与任务共享计算资源。后台重叠不等于没有排队/资源竞争。
  • 触发次数是处理实效:56K窗口阈值小样本中,48K臂仅4/50会话压缩,不能用“配置了auto”当真正接受处理;阈值各臂差异均不显著,不把24K或半窗口当通用最优值。
  • 能力不够并非上下文问题:8B臂大多很早提交,200会话只压缩一次;召回问答变好不等于真实coding完成提升。
  • 成本口径不能偷换:作者总token约相同(包含summarizer),但auto模型时间更高;每解出一题的token减少不代表每次尝试更便宜。prefix cache在实验中关闭,96%/98%是轨迹推算的潜在可复用比例,不是实付API缓存账单。与 coding-agent-cost-inefficiency-trajectory-routing 同看全链时间/费用。^[raw/articles/bud-contextcompact-2610-25516v1-html-2026-10-21.md]

表2的可复算范围与未解决口径

本机用Python按原HTML计数直接复算,得到以下同pair分母的原始百分点差;保留作者值,不静默替作者修表:

表2分组Off / Auto / pairs计数直接复算作者pp列
首60题长pair27 / 35 / 60+13.33 pp+13.5 pp
后40题长pair15 / 19 / 42+9.52 pp+10.4 pp
全部长pair42 / 54 / 102+11.76 pp+12.3 pp
全部短pair44 / 45 / 98+1.02 pp+1.7 pp
全部pair86 / 99 / 200+6.50 pp+6.5 pp

原文同时给出task级bootstrap区间,但没有足以把上述pp列与计数完全对齐的逐task数据或明确加权估计量;不同权重/统计估计量可能解释差异,当前不能裁决为算术错误,也不能把+12.3 pp当已独立复现。 对9对21个discordant长pair的二项式exact McNemar复算p=0.0427739453,与作者0.043相符;这只验证该汇总数的算式,不复现任务内两次重复的依赖结构、bootstrap区间或fresh运行。机器可读回执在 raw/assets/bud-contextcompact-2026-10-21/numeric-audit.json。

给 Hermes / llm-wiki 的最小迁移合同

  • 先观测,不直接改线上阈值:固定模型/实际窗口/输出cap/工具回包上限/服务排队与总deadline;逐轮记录剩余token,区分输入溢出、输出耗尽、超时、错误解、正确提交和基础设施失败。来源论文不要求本机部署模型,沿用云端API。
  • 压缩回执链:同一run保存原history与checkpoint hash、覆盖last-item、触发/完成/应用/首次消费时间、晚到未用/保真失败/重试及重试前真实effect;对工具写操作不能因rescue就盲目重放。只有被模型消费才计“应用处理”。
  • 隔离配对验收:相同任务和时限下off/候选阈值重复比较,合法任务完成和最新要求/关键ID/来源权限保持为采纳门;把writer模型、实际API花费、墙钟时间、cache失效和落盘余量全计入。无时限胜出但固定时限无收益,不能直接采纳给cron。
  • wiki低风险落地:候选记录增加“处理配置/实际触发/实际消费/固定deadline结果”;同一篇来源中计数、百分比、pp和p值至少做一轮对账。摘要仍回链不可变raw,字面命中不提升来源为可执行指令。

尚未验证

未取得或审计Bud运行时固定源码、完整逐trial数据与图像内信息,未复跑作者模型/SWE-bench或Hermes压缩器;硬件不变更语义结果是作者论点,不是本机跨硬件复现。论文阈值/收益只在其模型、推理策略、窗口、采样与时限条件成立;表2估计量待澄清。这里沉淀的是可迁移验收合同,不是生产采纳建议。

写入记录

  • 2026-10-21 09:04 CST:深读并归档固定v1主文,复核原HTML表2计数和exact McNemar;沉淀输出余量、压缩触发/应用/消费及固定时限成本边界,保留pp估计量待澄清与未复跑范围。