11 月 6 日,harness-hub 团队公布扩展后的编程 Agent 适配器训练方案,让模型在原有工具环境中完成任务,再用强化学习训练专用 LoRA。对运行本地编程助手、研究小模型工具调用的开发者,它回应了一个熟悉的痛点:模型会写代码,却可能反复查找、执行和重试。本文解释这条训练路径如何运作,以及为什么“工具调用更少”还需要和任务成功率一起看。来源:本轮方案介绍

LoRA 编程适配训练原创概念图:小块适配材料连接基座与不同工具

原创 AI 概念插画,以织物基座、补片与工具图案解释适配关系,不代表模型结构实物、产品界面或测试成绩。

[配图建议:同一块织物基座搭配可替换的小补片,线迹连接查找、终端与检查图案 + 梅紫、薄荷绿和芥末黄的织物拼贴编辑摄影风格。]

一、会写代码,还要学会在这套工具里工作

假设你让助手给日志统计脚本补上跨天汇总。它需要找到入口、读懂时间字段、修改实现、运行检查,再根据报错调整。有的执行过程能很快找到关键文件,有的却在重复搜索与无关命令之间兜圈。这是本文自拟的任务场景,用来区分代码知识与工具使用过程。

这里的 harness,可以理解为围绕模型的一套执行环境:它决定系统提示、工具列表、工具结果怎样返回,以及什么时候继续或结束。换了环境,模型看到的接口和工作节奏也可能改变。因此,模型本身会编程,不等于已经熟悉某个助手的全部用法。

本轮方案让模型直接在 pi、OpenCode、Hermes 等原有环境中练习,为模型与环境的组合训练适配器。值得关注的是训练位置:模型看到的,正是执行任务时那套工具交互,而不是只在独立题库里写出一段代码。

LoRA 是模型权重的适配方法。它冻结原有权重,训练较小的更新矩阵;推理时结合基座与适配更新。可以把它比作给同一个基础能力增加一份专门训练出来的工作习惯。它既不是换一段提示词,也不是单纯给编辑器安装一个扩展。来源:PEFT 的 LoRA 原理说明

这也解释了使用前提:适配器要配合对应基座与工具设置,不能拿到一个小文件,就假定可以让任意模型在任意助手里变得更高效。

[配图建议:同一位抽象工作者分别面对不同布局的查找、编辑与检查工具,旁边放置一块对应的适配补片 + 清楚的织物拼贴分镜,不暗示人物能力排名。]

二、训练的关键,是任务结束后能判断到底做对没有

强化学习需要反馈。对编程任务来说,一句“看起来写得不错”远远不够:环境必须给出可执行的起点、明确的任务,以及能区分成功与失败的验证方式。

项目引用的 Repo2RLEnv 将已有开发材料转成任务环境,任务中包含说明、初始环境、验证器和参考解。仓库也明确提醒:生成的任务只是起点,仍要看控制检查和评估记录,不能因为目录齐全就认为题目可靠。来源:任务环境项目说明

放回日志脚本的例子,至少要能确认:参考实现能通过跨天与空输入等检查;没有实现功能的空壳不能通过;只修改一条示例输出也不能蒙混过关。这些是本文建议的验收条件,不是对发布数据集逐项复测后的结论。

本轮训练还把正确完成放在效率奖励之前:只对正确的执行给予少调用工具的额外奖励。这一点很关键。省掉必要检查、直接说“完成了”,也可能让调用次数下降,却没有交付用户需要的结果。

训练还要防止模型通过修改评分材料、寻找参考答案等方式拿分。方案接入 safeagents,在工具调用交给执行环境之前检查;它是一个位于助手和模型服务之间的代理。其仓库同时提供仅记录模式与实际拦截模式,两者不能混为一谈。来源:代理机制与运行模式

训练目标、验证器和调用规则共同决定模型学到什么。规则检查能减少已知的取巧路径,也需要处理误拦;它不是“从此没有异常行为”的保证。对团队而言,先检查评分是否奖励了正确工作,往往比先增加训练步数更值得做。

[配图建议:一次任务经过代码修改与独立检查后,才进入反馈环;旁边把“正确完成”和“减少调用”分成主次两张记录 + 简洁刺绣流程图,全部数字位置留空。]

三、“少调用 39%”要连着评测条件一起读

为理解这条路线,可以看团队此前公开的 pi 适配器模型卡。它使用同一基座,针对数据分析任务训练;这份早期成绩不是 11 月 6 日新一轮全部模型的最终结果。

模型卡说明,评估使用 100 个任务,每题一次尝试,采样温度为 0.8,并与基座在相同任务上配对比较:

观察项 作者报告的结果 阅读时要保留的条件
首次尝试成功率 pass@1 比基座低 4.2 个百分点 作者认为落在约 ±5 点的噪声范围内
工具调用次数 减少 39% 只比较双方都成功完成的任务
完整任务耗时与总成本 这两个数字无法直接给出 还要记录生成、工具等待与重试

因此,不能把它概括成“编程能力提升 39%”,也不能直接写成“所有任务快了 39%”。成功率点估计下降仍应如实保留;作者的噪声判断,也不等于已经证明所有条件下都没有质量损失。来源:早期 pi 适配器模型卡

任务分布同样影响外推。公开任务卡列出 270 个由轨迹生成的环境,并提醒同一来源轨迹可能产生近似任务,应按 source_trace 划分训练与评估。若相近任务分到两边,测试成绩就可能高估面对新工作的能力。来源:任务卡与切分提示

还有一个常见误会:适配参数少,不代表训练资源也少。本轮方案列出的 LFM3-1.7B 训练使用两张 H200。多轮任务执行、评分和模型更新仍要消耗资源;这条训练配置也不能反过来当作日常推理的最低硬件要求。来源:本轮训练资源说明

[配图建议:一张成绩便签旁边钉着任务数量、共同成功子集与采样条件,避免只放大百分比 + 编辑核对手账风格;若出现 39%,明确标为作者早期特定评测。]

四、普通开发者先做对照,训练团队再准备可验证任务

如果你只是想让编程助手少绕路,第一步可以是收集几次能亲自验收的任务:新建小功能、修复已有缺陷、继续修改完成过的项目分别保留。先记录基座的表现,再决定要不要尝试已有的匹配适配器。

对照时尽量固定模型版本、工具环境、任务输入与预算,同时记录四件事:

  • 成功情况:完整功能是否通过检查,不能只看助手是否宣告完成。
  • 调用过程:哪些调用提供了新信息,哪些重复了已经知道的内容。
  • 时间与消耗:整项任务耗时、生成量、失败与重试,而非只数命令。
  • 需要人工接手的部分:是工具格式不匹配、模型理解错误,还是测试本身有问题。

如果准备自行训练,再把典型任务做成可重建、可评分的环境,先验证参考解与失败对照,再划分训练和保留评估材料。对真实业务,更应该补充多轮修改与失败修复,而不是只收集一次就做完的漂亮演示。

已有适配器的接入也要核对基座、工具解析方式和接口设置。早期模型卡对这些条件有明确要求,并说明转换后的 GGUF 版本未重新评估;不能把一种服务配置的成绩直接搬给另一种格式。未具备对应推理环境的读者,可以先读模型卡与任务示例,暂缓投入训练资源。

[配图建议:同一份日志脚本任务分别进入基座与匹配适配器两条路径,最终并排放置功能检查、时间和人工修改记录 + 对照实验工作台插画,不填虚构结果。]

今天先找到一段值得保留的执行过程

这次更新把“模型怎样使用工具”变成一个可以专门训练、检查和比较的问题。已经运行本地编程模型的团队,可以从匹配环境的适配器做小范围对照;准备训练的人,先把一项任务的成功条件做扎实。今天就保留一次反复重试但最终完成的执行记录,找出真正推进任务的步骤。你的助手更常卡在找文件、理解报错,还是确认工作已经完成?

[配图建议:一段弯曲的任务线迹中,真正产生进展的节点被保留,旁边放一页待核对的任务记录 + 与封面一致的纺织拼贴静物。]

资料核查截至北京时间 2026 年 11 月 7 日。新闻为 11 月 6 日扩展训练方案;39% 等数字来自此前 pi 模型卡的作者评测,不代表本站实测或新一轮最终成绩。本文未运行训练或复现评测,日志脚本为自拟示例,封面为原创 AI 概念图。