SkillZip:面向可扩展智能体技能库的契约保持图压缩
大型语言模型(LLMs)日益成为智能体,其程序性知识以可复用技能包的形式存储,并在推理时加载。随着技能库的不断增长,一个核心挑战是如何在有限的上下文预算下,暴露最小且充分的执行上下文。现有系统难以在低于整个技能的粒度上复用例程,难以在压缩期间保留程序契约,难以保持压缩例程的可执行性与可扩展性,也难以在技能演化时更新压缩库。这些挑战揭示了一个单元错配:技能以包的形式被检索、以文本形式被压缩,并在检索后才转换为执行图,而可靠的复用需要一个携带契约的程序单元。 为此,我们提出 SkillZip 一种执行感知的程序抽象框架,在章节级图上进行契约保持压缩。SkillZip 将重复出现的契约有效子图重写为可逆移植宏,同时保留边界签名、依赖闭包、验证器可达性和源码级展开。推理时,它水合出紧凑且依赖闭合的上下文,并仅在需要时展开宏。ReZip 机制进一步利用执行证据集成新技能,并修订高风险宏。 在技术和具身智能体基准上的综合实验表明,SkillZip 相比最强基线最高提升 12.2 分,同时实现 3.46 倍压缩率、99.2% 依赖保留率和 98.7% 验证器可达率。规模分析进一步证实了在 200 至 100K 个技能库中的稳健检索性能。
论文精读
TL;DR SkillZip 通过节级图上的契约保持压缩,将重复有效模体重写为可逆 ported 宏,保持依赖闭包与可执行性,以 3.46x 压缩比和 99.2% 依赖保持支持 10 万技能库扩展。
问题
问题背景
LLM agent 通过可复用 skill packages 存储过程知识,推理时按需加载。技能库规模增长后,如何在有限 context budget 内暴露最小充分的可执行上下文成为核心问题。
现有方法局限
- 现有系统以 whole-skill package 为检索单元,但压缩时退化为纯文本,导致 unit mismatch:检索粒度、压缩粒度与执行粒度不一致。
- 缺乏 below-skill 级别的复用:无法提取技能内部可重复的子流程。
- 压缩过程不保留 procedural contracts,如边界签名、依赖闭包、验证器可达性;压缩后的 routine 可能不可执行或无法再扩展。
- 技能库动态更新时,压缩表示难以增量维护,常需全量重压缩。
为什么这个问题难/重要
可靠复用要求压缩单元必须是 contract-bearing procedural unit:既要足够小以节省上下文,又要保留执行必需的前置依赖、后置条件和可验证路径。技术上需要同时满足 可逆宏展开、依赖闭包、预算内 hydration 与后续维护,这在图结构压缩中比文本摘要难得多。业界对 agent 规模化部署关注度高,检索质量与上下文效率直接决定多步任务成功率。
行业类比
类似函数级代码重构:将重复代码片段抽取为可复用宏,但这里还要保证宏在任意调用点都能安全展开并继续组合。
核心洞察
- 将技能压缩的单元从文本段落提升为执行图上的程序节,保留契约边界和依赖闭包,使压缩结果仍可被解析执行。SkillZip 的独特之处在于它不在检索前对原始技能文本做有损摘要,而是先构建 Sec2Graph,再在图上识别重复的契约有效模体并压缩,从而解决了现有系统“以包检索、以文本压缩、以图执行”的单元不匹配问题,让压缩后的单元天然具备可执行性和可扩展性。
- 通过可逆端口宏实现结构级压缩与按需水化,在上下文预算内保持程序语义完整。与文本摘要或截断不同,SkillZip 将重复的契约有效子图重写为宏,宏保留边界签名和源级展开能力;推理时 PathHydrate 只水化依赖闭包并展开必要的宏,使得压缩后的技能在有限上下文下依然可被验证器追踪,达到 99.2% 依赖保留和 98.7% 验证器可达性,这比直接压缩文本更能保障执行可靠性。
- ReZip 将压缩库视为动态系统,利用执行证据增量集成新技能并修订高风险宏。现有压缩方案通常是离线的、静态的,技能库更新后需整体重新压缩;SkillZip 的增量维护机制可以流式吸收新技能,并根据实际执行反馈定向修订,避免全量重算,在 200 到 100K 技能规模的扩展分析中表现出稳定检索性能,这为大规模、持续演化的代理技能库提供了运维层设计参考。
方法
SkillZip 将可复用技能包从纯文本压缩提升为契约保持的图压缩。输入为技能库(每个技能为文本包),整体流程拆为四个关键模块:
- Sec2Graph: 将每个技能解析为 section-level 图结构,节点为携带前置/后置条件与验证器的程序段,边表示控制流或数据依赖。这一步把检索粒度从“整个技能包”降到可独立复用、可验证的程序段。
- MotifZip: 在图结构中识别重复出现的 contract-valid motifs(满足契约的局部模式),并将其重写为可逆 ported macros。压缩过程强制保持:① 边界签名不变;② 依赖闭包完整;③ 验证器可达;④ 源级可扩展(宏可无损内联回原图)。
- PathHydrate: 推理时依据上下文预算,从压缩库中水合出一个依赖闭包的紧凑上下文;只有在执行路径真正需要时才展开宏,从而在不破坏语义的情况下最小化 token 开销。
- ReZip: 库维护模块,支持新技能的增量整合,并利用执行证据(例如验证失败、依赖缺失)识别并修订高风险宏,使压缩库随技能演进保持可靠。
输出是一个压缩后的可执行图单元库:每个单元为带契约的程序抽象,既可被独立检索,也可按依赖关系组合水合。
与同类方法的差异:现有系统通常在检索后才将文本转换为执行图,而 SkillZip 直接在 section-level 图上进行契约保持压缩,使压缩单元本身就是可执行、可扩展的 contract-bearing procedural unit,从根源上解决了 unit mismatch。
实验
实验设计
论文在 technical 与 embodied agent benchmarks 上评估 SkillZip,与当前最强基线对比,同时测量压缩比、依赖保持率、验证器可达率等结构指标。实验还进行了库规模从 200 到 100K 技能的扩展性测试,以及增量更新(ReZip)场景。
关键发现
- SkillZip 在任务性能上最高超出最强基线 12.2 分。
- 平均压缩比达 3.46x,而依赖闭包保持率 99.2%,验证器可达率 98.7%,说明压缩过程几乎没有破坏过程契约。
- 扩展性实验显示,在 100K 技能规模下检索依然稳定,证明方法具备大规模部署潜力。
基线对比解读
现有方法往往将技能作为整包检索、以纯文本压缩、检索后才构建执行图,导致子技能重用困难、契约丢失、压缩结果不可执行或无法增量更新。SkillZip 在 section-level graphs 上做压缩,保留 contract-valid motifs 并编码为可逆 ported macros,从源头保证压缩产物的可执行性与可扩展性。其 12.2 分的性能优势并非来自单一技巧,而是消除了 unit mismatch——通过过程抽象单元(而非文本块)进行压缩与检索,使压缩后上下文仍具备完整依赖与验证路径。这一点对工程实践的意义在于:可技能库不再受上下文窗口硬约束,同时能保持可靠执行。
行业影响
落地场景
企业级 agent 平台、自动化工作流与垂直领域助手(电商客服、IT 运维、医疗指南、金融服务)在技能库从数百扩展到 10 万+ 规模时,SkillZip 可将重复子流程压缩为可逆 macro,显著降低上下文加载量,同时保持可执行性与验证器可达性。
商业价值
- 降本:3.46x 压缩比直接减少 LLM token 消耗与推理延迟;99.2% 依赖保持率与 98.7% verifier reachability 降低执行失败率,减少人工干预与重试成本。
- 增收 / 体验:更快的响应与更可靠的任务完成率提升客户满意度;技能库易于增量维护(ReZip),加速新功能上线。
与现有 stack 集成
可作为检索后处理中间件,嵌入现有 vector DB 与 agent runtime(如 LangChain / AutoGen / Semantic Kernel)。输入 retrieved skill packages,输出压缩后的 graph context,推理时通过 PathHydrate 按需扩展 macro。支持流式增量更新,无需重训或重建索引。
具体 use case
- 电商客服自动化:售后流程(退货、换货、退款)包含大量重复验证步骤(地址校验、订单状态查询、支付确认)。SkillZip 将这些步骤压缩为可重用 macro,使客服 agent 在小上下文预算内覆盖更多工单类型,并保持验证器可达性,降低错误退款风险。
- IT 运维 runbook 库:上千条故障排查脚本中的公共诊断模块(日志解析、权限检查、网络探测)被压缩为 ported macros,运维 agent 可快速加载相关步骤;当新技能加入或执行证据表明某 macro 有风险时,ReZip 增量修订,不影响其他已部署技能。
局限
- - **依赖结构化技能定义**:SkillZip 的核心假设是技能可被解析为带 contract 的 section-level graph。但真实技能库中大量 procedural knowledge 以自由文本、隐式依赖或跨文档引用存在,Sec2Graph 的解析准确率会直接影响后续压缩与保真度。论文在技术基准上验证了有效性,但对高噪声、非结构化技能包的泛化能力未被充分测试,实际工程中可能需要大量人工清洗或定制解析器。
- - **冷启动与执行证据稀疏时的风险**:ReZip 依赖 execution evidence 来识别并修订 risky macros。在技能库部署初期或执行轨迹稀少的领域,系统可能无法及时捕捉错误的压缩决策,导致 contract 违约或依赖丢失。此外,收集执行证据本身需要运行 agent,在成本敏感或安全关键场景中并不总是可行,这限制了 SkillZip 的增量学习实用性。
- - **实验域覆盖有限**:论文主要在 technical 和 embodied agent benchmarks 上评估,尽管展示了从 200 到 100K 技能的 scaling 性能,但未涉及开放域、多模态或长期自主演化的技能库。3.46x 的压缩率是否满足实际 context budget 取决于具体模型窗口与技能复杂度,对于超长程序、高分支或频繁更新的技能,压缩收益和结构开销的平衡仍需进一步验证。