PowerScan
ZH

AI 浏览器智能体需要专属浏览器

自动化 · 阅读约 9 分钟 · 作者:PowerOps

图片:Unsplash

把日常使用的浏览器交给自主智能体,等于把你的 Cookie、登录状态和设备都交了出去。本文说明为什么智能体应当运行在隔离的配置文件中,以及如何为它们配置。

让 AI 智能体在网络上拥有真正能力的最快办法,是让它驱动浏览器;而最快后悔的办法,就是让它驱动你自己的浏览器。日常浏览器保存着你曾登录过的每一个会话,一个能点击的智能体,可以点击这些会话所能触及的一切。

爆炸半径问题

被要求调研供应商的智能体并不想打开你的银行标签页。但它所运行的浏览器不做这种区分:一个 Cookie 容器、一套保存的登录信息、一个机器身份。凡是智能体能导航到的地方,它都已经通过了身份验证。人们最先想到的缓解办法 — 单独的 Chrome 配置文件、无痕窗口 — 只是挪动了 Cookie,其他什么都没有挪动。

隔离究竟需要覆盖什么

这份清单,正是隔离的浏览器配置文件本来就满足的那一份。从浏览器的角度看,智能体不过是你机器上的又一个用户,不应当能够看到你其余的工作。

为智能体配备配置文件

在 PowerOps 中,这套模式很简短。为智能体创建一个配置文件,给它你想让其流量使用的线路,并且只登录该任务需要的账号。然后通过本地 API 启动它,该 API 会返回浏览器的调试端点,再让你的智能体框架指向这个端点,而不是指向它自己启动的浏览器。

# Start the agent's profile and take the endpoint it returns.
curl -s -X POST http://127.0.0.1:50326/v1/browsers/start \
  -H "Authorization: Bearer $POWEROPS_KEY" \
  -H "Content-Type: application/json" \
  -d '{"profileId": "agent-research-01"}'

任何支持 Chrome DevTools Protocol 的工具都能连接该调用返回的端点 — Puppeteer、Playwright,或封装了二者之一的智能体框架。智能体的代码不需要任何改动;改变的是它所落入的浏览器。

每个任务一个配置文件,而不是每个智能体一个

直觉是给智能体一个配置文件,更好的单位其实是任务。一个用于供应商调研的配置文件,一个用于它被允许发帖的账号,一个用于它读取的仪表板。如果某次运行出了问题,损害被限制在那一个配置文件所能触及的范围内,而且你可以丢弃该目录,重新开始。

让每次运行具有可比性

智能体很难调试,因为两次运行很少是同一次运行。一个每次启动都报告同一台设备、来自同一线路、状态保持你离开时模样的配置文件,消除了各次尝试之间的一整类差异。当某次运行表现不同时,环境不再是嫌疑对象之一。

底线

这一切都不是绕过网站条款、速率限制或 robots 政策的办法,也不是作为这样的办法来出售的。它给智能体的,是一个属于任务而不是属于你的浏览器。

全部文章 · 开始扫描