智能AI evening

录一遍就完事了!手把手带一次,AI学会替你填表刷网页

2026-06-28 1 阅读 新智元
新智元报道 【新智元导读】 Agent从来不是不会用浏览器,只是浪费太多时间在探索。BrowserBC把人类轨迹蒸馏成可复用Skill来完成Behaviour Cloning,用户点一遍,Agent照着就能跑通。 今天的 Web Agent,已经不缺「会操作」这件事。 Claude、Codex 这类 Agent 能看页面、能识别按钮和输入框,能点击、输入、跳转、提交。 真正卡住它们的,是另一个问题: 每接一个新任务、每换一个新网站,几乎都要让最强、也最贵的那个模型,从零开始再把整个流程摸索一遍。 而这种「从零摸索」,常常摸着摸着就出岔子:陷进 死循环 ,在几个页面之间反复横跳;慢慢 偏离最初的任务意图 ,越走越远;在搜索结果里来回切换却始终没读全;或者明明已经很接近答案,却提前收手、草草交差。 在摸索一遍之后呢?就算这次侥幸做成了,这点经验也往往随着这一轮对话一起蒸发。 下一次同类任务,再换一个 Agent,还要从头试错、再踩一遍同样的坑。 于是,一个很朴素的问题浮出水面: 能不能做一次、复用很多次? 更具体一点——能不能让人把任务认真做一遍,把这一遍操作里的「门道」打包下来,然后交给一个更便宜、更小的模型,让它照着做,就能完成同一类任务? Einsia AI 旗下 Navers Lab 发布的开源项目 BrowserBC 给出的答案,是一条三步范式:录制 → 转写成 Skill → 交付执行。 录制:在浏览器里做任务的时候,把全过程完整记录下来——任务指令、每一步的页面观察(既有渲染出来的截图,也有结构化的 DOM / 可访问性树快照)、用户的每一个动作(点击、输入、跳转、提交,并带着对应的元素定位)、页面给出的反馈(页面跳转、校验与报错信息、完成信号),以及任务最终落到哪个状态。 转写:关键在于,它不是把这段操作存成一段「回放脚本」,而是由模型把它转写成一份自然语言的 Skill——一份说明书式的「技能卡」,写清楚这类任务该怎么做、怎么判断做对了。 执行:再把这份 Skill 交给任意一个模型去读。它据此在真实页面上自己落地操作,而不是机械复刻某一次的点击坐标。 说得通俗一点,BrowserBC 有点像 agentic 时代的「按键精灵」 。 项目发布后6小时,BrowserBC已经引发了海外开源社区超过2500条相关讨论,登上了Twitter的Today News。 AI 社区最具影响力的前沿论文和开源项目分享者AK也关注并分享了该项目。 传统的按键精灵,会把人的鼠标点击和键盘敲击录下来再回放——但它录的是写死的坐标和按键,页面一变、布局一动,整段脚本立刻就废了。 BrowserBC 录的不是坐标,而是把这一遍操作 转写成一份讲清「该做什么、怎么算做完」的技能 :它能被另一个模型读懂,能在变了样的页面上举一反三,也能被不断合并、复用——它是那种会「理解」、能迁移、还能直接交给别人用的按键精灵。 这也揭示出BrowserBC的核心—— 技能从哪里来,和技能由谁来执行,可以彻底分开。 人在浏览器里把任务做一遍,这一遍操作被转写成技能;之后照着技能把同类任务做下去的,是另一个、哪怕更小、更便宜的模型。技能一旦被转写成自然语言,就能在模型之间自由地传递、复用、组合。 这正是通往「通用网页浏览」的关键步骤: 把人类每天的浏览器行为蒸馏给Agent去做。 BrowserBC 把人类的浏览器操作轨迹蒸馏成可复用的自然语言技能,为 Agent 提供访问陌生网站时的「决策先验」。 Github: https://github.com/Einsia/Browser-BC Blog: https://lab.einsia.ai/browserbc/ Paper: https://lab.einsia.ai/browserbc/paper 人类一次录制,Agent就能模拟 研究团队录制了一个 case: 任务很常见: 旅行前想要在目的地找一处安心、方便、实惠的民宿,需要在预订网站输入时间、地点、预约人数,按照网站评分、评分数量筛选,并且排序找出里面最优的选项。 这类任务看起来不难,但是小模型经常栽在它上面——不是不理解任务,而是要么不知道怎么用筛选功能,要么产生幻觉输出虚构信息假装完成。 第一步,录制。 研究团队先让一个人把它完整做一遍:进入网站 → 输入时间地点人数 → 应用合适的筛选器 → 阅读所有搜索结果 → 找到最佳选项。整个过程被原样记录下来。 第二步,转写成 Skill。 系统把这段操作转写成一张技能卡,而不是一段坐标回放。卡片上写的是这一类任务的通用门道: 意图:在预订网站找到最佳的住宿选项; 关键步骤:先写基本信息,搜索之后逐项应用筛选器——这正是小模型最容易不理解或者做不到的地方; 完成判据:最后输出可以人工核查的版本; 要避免的坑:官方筛选器可能和用户实际需要的标准不一样,如有需要则需要自己编写脚本筛选。 第三步,交付给一个小模型执行。 这张卡片被交给一个明显更小的模型,让它去完成另外一次旅程的信息检索,做同类型的任务。 没有这张卡片时,他要么跌跌撞撞卡死或者很久才勉强完成任务,要么直接输出幻觉;拿到卡片后,它立刻知道要输入什么信息,要核查什么界面,哪些要依赖网站官方哪些要自己判别——于是稳定地把任务做完了。 就这样, BrowserBC 把「操作浏览器」这件每天都在发生的事,变成了可以被Agent复用的技能。人把路趟通一次、由系统转写成说明书Agent型负责照着说明书把同一类路走顺。 而且,这条路天然是可复用、可扩展的。人类访问网站的分布服从幂律分布:常见的站点构成了人类访问的大部分,对于这些站点,用的人越多,Skill库就会收敛得越完备;更关键的是,针对稀疏的长尾分布,BrowserBC使得人们 再也不需要等那些落后的旧网站自己来提供 MCP(或官方 Agent 接口)了 。 现实是,大量老网站永远不会专门为 Agent 开放一套干净的机器接口;而 BrowserBC 直接复用人类在「给人看的那套界面」上积累下来的操作经验——只要人能用浏览器把它用起来,Agent 就能借由蒸馏出的技能把它用起来。 换句话说,一个网站能不能被 Agent 高效访问,不再取决于网站方愿不愿意配合、肯不肯升级,而取决于 有没有人已经在这个网站上走通过路 。这恰恰是「通用」二字的底气所在。 把操作沉淀成Skill 并管好越来越多的Skill BrowserBC 的方法部分,其实就回答两个问题: 一段操作该怎么总结、总结时要注意什么;以及总结出来的成千上万个 Skill,该怎么管理。 BrowserBC 将嘈杂的浏览轨迹清洗、蒸馏为可复用的自然语言技能,并进一步组织成可扩展的技能图,最后检索相关技能指导 Agent 完成新任务。 第一个问题:怎么转写,以及要特别注意什么? 原始的浏览器轨迹往往非常嘈杂——里面有误点击、无意义的等待、重复尝试、临时的页面状态,还可能夹着隐私信息。因此在转写之前,BrowserBC 会先做清洗,并按 语义 把轨迹切成一段段连贯的子过程,而不是按固定长度硬切。 每一段会先被抽成一份「证据(evidence)」:保留任务指令、这段操作前后的页面状态、用户采取的关键步骤、页面给出的反