如何砍掉一半模型轮次: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 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.ts | Action 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),仅供参考