news 2026/9/29 15:44:02

如何砍掉一半模型轮次:SoL-Pi Action Fusion编辑即运行新手教程

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
如何砍掉一半模型轮次:SoL-Pi Action Fusion编辑即运行新手教程

如何砍掉一半模型轮次:SoL-Pi Action Fusion编辑即运行新手教程

【免费下载链接】SoL-PiSoL-Pi: Scaling Auto-Research Loops for Efficient Agent Harnesses项目地址: https://gitcode.com/gh_mirrors/so/SoL-Pi

SoL-Pi 是一款为 Pi 编码代理打造的效率扩展,其中的 Action Fusion(动作融合)机制可以把"编辑文件 + 运行验证命令"两步操作合并进一次模型轮次。对新手来说,这就是一个"编辑即运行"的省钱开关:模型改完代码后不用再单独发一轮去跑测试,一半的来回轮次直接省掉了。

💡 Action Fusion 是什么?为什么能省轮次?

跑过编码代理的朋友应该都有印象:模型改完一个文件,通常会再发起一轮"运行一下看看对不对"。这两轮之间其实没有新的决策——写完就跑,跑什么命令几乎是确定的。

Action Fusion 干的事情就是把这对固定动作焊成一次工具调用:它替换了 Pi 内置的edit和write工具,给它们加了一个可选的then_run参数。模型在编辑文件的同时声明"改完就跑这条命令",扩展就会在一次调用里完成:

  1. 应用文件修改(编辑/写入);
  2. 确认文件内容没被意外改动;
  3. 执行后续命令(测试、构建、启动等);
  4. 把两步的结果合并成一条观察返回给模型。

两次模型轮次变成一次,界面里还会贴心地显示 "1 model round-trip avoided"。核心实现可以看 index.ts,命令执行逻辑在 then-run.ts。

⚙️ 三步安装:准备、安装、配置

环境要求(来自官方 README):

  • Node.js 22.19 或更新版本
  • npm
  • @earendil-works/pi-coding-agent0.85.1(Pi 官方发行版)

第一步:安装 Pi 基础版

npm install --global @earendil-works/pi-coding-agent@0.85.1

第二步:安装 SoL-Pi 扩展

git clone https://gitcode.com/gh_mirrors/so/SoL-Pi pi install ./SoL-Pi

只想在当前项目生效?加上--local --approve参数做项目级安装。

第三步:开启 Action Fusion

SoL-Pi 所有机制默认全部关闭,需要显式开启。在项目的.pi/sol-pi.json(项目可信时优先生效)或用户级的~/.pi/agent/sol-pi.json里写入:

{ "version": 1, "actionFusion": true, "observationPack": true, "evidencePreservingReducer": false, "onlineContextCompact": false, "cacheWriteReadRatio": 12.5 }

保守起见,新手只开actionFusion和observationPack这两个本地机制就够了——它们不发起额外模型调用,也不会打断正在进行的运行。完整配置说明见 docs/configuration.md,模板文件参考 sol-pi.example.json。

🚀 编辑即运行:实际用起来什么样?

启用后你不需要写任何代码,模型会自动获得新的工具能力。比如让它"修改src/app.ts后跑一遍测试",它的工具调用大致长这样:

{ "path": "src/app.ts", "edits": [{ "oldText": "before", "newText": "after" }], "then_run": { "command": "npm test", "timeout": 60 } }

一个调用,编辑和测试全搞定,返回的文本里会带[then_run:succeeded]标记。timeout可选,单位是秒。

🛡️ 新手必知的三个安全细节

SoL-Pi 在"合并轮次"的同时没有牺牲可靠性,有三个值得了解的设计(源码细节见 then-run.ts):

  • 改失败就不跑:如果编辑本身失败,then_run命令会被直接跳过,返回[then_run:skipped],不会拿一个坏文件去执行命令。
  • 跑挂了改动还在:命令执行失败时,文件修改依然保留,结果标记为[then_run:failed]——你的代码不会因为测试挂了就被回滚。
  • 改完先校验再跑:执行命令前会对比文件哈希,确保要跑命令的就是刚才改好的那份内容,同一文件上的融合操作还会串行排队,防止互相干扰。

📚 想继续深入?

资料说明
docs/compatibility.md与 Pi 的 API 兼容性说明
tests/action-fusion.test.tsAction Fusion 的完整测试用例,可读性很好
agents-install.md面向自动化环境的安装与校验协议

开启 Action Fusion 之后,留意 Pi 界面里 "1 model round-trip avoided" 的提示,你就知道省下的轮次了。跑一个稍长的任务下来,模型请求数通常能砍掉肉眼可见的一大截——这正是 SoL-Pi "花得更少,活不减"的核心思路。

【免费下载链接】SoL-PiSoL-Pi: Scaling Auto-Research Loops for Efficient Agent Harnesses项目地址: https://gitcode.com/gh_mirrors/so/SoL-Pi

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/9/29 15:43:56

BP神经网络光伏功率预测建模实战:从理论推导到避坑落地

简介:这是一份基于BP神经网络的光伏发电预测模型毕业论文文档,适合电气、能源、自动化等相关专业学生及科研人员参考,用于解决光伏发电量预测、电网运行稳定性等问题。文档结构完整,包含中英文摘要、关键词、目录、正文与结论&…

作者头像 李华
网站建设 2026/9/29 15:43:05

人脸表情识别模型zip解压到推理:格式识别与预处理全攻略

简介:面向人脸表情识别任务的模型文件压缩包,融合计算机视觉与深度学习技术,基于 PyTorch 框架提供 CNN、VGG、ResNet 三种经典网络的训练结果,其中 VGG 以多层小卷积核堆叠提取精细特征,ResNet 通过残差结构训练更深网…

作者头像 李华
网站建设 2026/9/29 15:42:30

实验室管理系统四件套交付实战:从源码部署到答辩避坑

简介:这套实验室管理系统是面向计算机专业毕业设计场景的完整Java项目,基于SpringBoot+MySQL构建,适合正在准备毕设的学生与需要项目实战的Java学习者,也可作为课程设计或期末大作业。系统分为用户端与管理员端&#x…

作者头像 李华
网站建设 2026/9/29 15:42:26

SpringBoot2+Vue3+MyBatis-Plus+MySQL8.0构建医院管理系统实战

H 医院管理系统这类项目,在 Java Web 方向里属于常青树。你随便搜一下项目源码,十有八九会看到SpringBoot2 Vue3 MyBatis-Plus MySQL8.0这个组合。我最早接触这套技术栈是在做一家小型民营医院的信息化改造,当时甲方要求系统能跑通门诊挂号…

作者头像 李华
网站建设 2026/9/29 15:42:21

本地任务拆分实战:L0硬规则+L1模型两级流水线

1. 为什么要在本地做任务拆分1.1 从一次线上事故说起去年年底我接手了一个内部工单系统的自动化改造,需求本身不复杂:把用户提交的自然语言工单,自动拆成结构化的子任务,再分派给对应的处理人。一开始我图省事,直接调了…

作者头像 李华
网站建设 2026/9/29 15:41:25

Spring Boot宠物咖啡馆系统开发实战:从需求到答辩全流程解析

刚开始接这个课题的时候,很多同学都会下意识觉得“宠物咖啡馆”不过是把普通咖啡馆系统换个皮,加几个宠物字段而已。真正动手之后才发现,这里面的业务细节远比想象中复杂:座位预约要处理时间冲突、寄养服务要记录宠物状态、点单要…

作者头像 李华