You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
reacted with thumbs up emoji reacted with thumbs down emoji reacted with laugh emoji reacted with hooray emoji reacted with confused emoji reacted with heart emoji reacted with rocket emoji reacted with eyes emoji
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
完整研究记录:中立样例、边界与验证;下载修复与回归。
希望讨论的问题
OpenPI 的 computer use 应怎样复用 Pi package,并让用户可以稳定控制内置浏览器?这次先把工具接口、执行后端和验收结果分清,再讨论长期方案。
目标是通用的表单、检索、文件上传下载、多步编辑,以及用户同时使用其他标签时的输入隔离。公开案例使用本地生成的“社区活动报名”页面和文本附件,不附截图、业务系统地址、内部资料、凭据或原始会话。
关联:#169 外部能力 provider seam、PR #892。这是研究讨论,表中的观察不构成跨模型排名或已采用的架构 Decision。
先区分三个层次
固定的
pi-computer-use@0.5.1向模型注册 11 个工具;Maka 实验移植的是 6 个工具。这是两套模型接口,不是分别需要 11 个或 6 个外部插件。将 UI 折叠成一个 computer-use 工具组,也不会自动把模型接口变成一个 tool。虚拟输入与光标动画要分开验收。 内置后端通过 CDP 向绑定的页面投递输入,可以检验是否保持其他标签的焦点;画一个光标只是反馈。原生 OS 键鼠、系统文件弹窗、物理键盘并行输入需要另行验证。本次没有新增可见虚拟光标,也不从任何产品截图推断其内部实现。
中立样例与对照方法
两组加载同一 OpenPI
b4f13995b90eeed5ff8ed03b833c7174d4b2d21a、相同 Browser Bridge 0.5.0 字节和相同模型配置:GPT-6.1 Sol / xhigh,关闭 Code Mode,独立 profile、工作区与 Chrome,每组一个新回合。原版 Pi 接口先运行,Maka 六工具接口后运行。任务相同,仅替换各组本地页面地址:
.txt附件上传。允许插件公开的 DOM 脚本能力。提交和上传必须通过页面实际按钮,禁止直接请求业务接口、调用处理函数、改校验或伪造回执。服务端独立核对精确字段、提交次数、上传字节和 SHA256;下载必须有实际落盘文件。每组上限 8 分钟、60 次工具调用。没有运行中改题、增加工具或修补产品。
基线结果:修复下载权限前
Pi 的数字与下拉使用页面脚本,事件
isTrusted=false,不能当作纯原生键盘或 React 受控组件通过。上传通过既有内置适配,随后点击真实上传按钮。另一活动标签分别收到 13,630 / 17,249 个完全匹配字符,并通过 1,340 / 1,669 次焦点和活动身份采样。Pi 的四个异常包括根引用、导航和不可编辑控件;Maka 的六个异常包括三次等待条件参数错误、一次导航失效及两次拒绝填充。不能把所有异常都算成插件实现缺陷。本轮 Pi 调用更少,但文本反馈和 token 更多;工具结果图像均为 0。没有据单次时间推断通用性能,也没有推算实际账单。
已定位的共用接入层问题
修复前的内置 iframe sandbox 没有
allow-downloads,两种接口都会遇到这一限制。此前在同一源码做的单变量 A → B → A 诊断为:原标志无文件 → 仅在测试 DOM 增加该标志后保存文件且哈希一致 → 恢复原标志后再次无文件。那次诊断没有模型参与,不计作插件下载验收。已做最小修复: 共享
BrowserPanel只增加allow-downloads并重建前端。实际下载回归在旧配置下等待下载超时,在新配置下保存成功、完整字节一致;其余既有输入、选择、滚动、导航与标签检查也通过。修复后的模型专项复测中,Pi 和新 Session 的 Maka 均通过插件保存一份 114,688 字节文件,另一活动标签保持焦点,SHA256 都是
dcaa6410fab70cb330d8093c51841b586498d1907805b44d6f416764d533c471。这项复测预先打开中立下载页,不是整套基线重跑,也不把之后的通过回填为之前的结果。Maka 首次复测在旧 Session 更换 controller 后被旧页面绑定拒绝,未执行下载;新 Session 才完成下载验证。另外两次 harness 准备错误均发生在模型任务开始前,单独保留,不计作插件结果。没有放宽产品 owner 检查。controller 切换后的恢复行为仍值得研究。
文件能保存之后,模型仍可能只知道“点击已执行”:当前接口没有可靠的落盘回执。文件路径、归属和失败原因如何反馈给模型,是下一步要补的接入能力。
换模型接口不会自动补齐内置层的文件归属与可验证回执。类似地,导航后状态引用失效、取消后的迟到输入和 Session/controller/document 归属,需要接入层给出准确结果,不能用“动作已派发”表示任务完成。
建议与需要讨论的取舍
暂时继续以原版 Pi 接口为通用能力基线,保留一套模型接口,优先补齐共用的内置控制与文件结果,再借鉴 Maka 的紧凑 DOM 反馈。这是当前证据支持的建议,不是宣布完整 Maka/OpenCLI 不适用。
值得集中讨论:
验证
bun run check和完整bun run test通过:Node 2,398 通过、8 个既有跳过;UI 1,642 通过、107 个文件。另有真实 Chrome 下载回归的先失败后通过,以及两种插件实际模型调用的下载文件核验。自动化通过不替代基线中未通过的原生控件、上传和恢复结果。来源与证据边界
173f1e7397ded73cdfc8f362e89858602e073ef4/ OpenCLI 1.8.6,复用 OpenPI 传输,并非完整 Maka 桌面产品。原始执行与配置在本地私有档案保存;公开文字只保留合成任务和必要结果。单次、单模型、简单 HTML 页面不能证明真实生产网站、React 受控组件、SSO、全平台键鼠并行或跨模型泛化;这不是正式 Benchmark。
All reactions