Sarathi AI:基于结构化 DOM 的开源 Chrome AI 浏览器代理
Reddit r/LocalLLaMA2026/02/21 22:07机翻/自动摘要/自动分类
2 阅读
内容评分
技术含量
7/10
营销水分
5/10
摘要
Sarathi AI 是一款开源 Chrome 扩展,采用结构化 DOM 数据而非页面截图来驱动 LLM 完成浏览器自动化任务。它为页面可见元素分配唯一 ID,提取标签、文本等元信息并以 JSON 形式发送给 LLM,后者返回点击、输入、悬停等指令,扩展据此执行。该方案省去视觉模型和后端推理,提升速度与确定性,在普通网站上约 90% 的任务成功率,已支持 Gmail 回复、表单自动填充、电商购物等场景。
正文
近年来,AI 浏览器代理大多采用“截图 + 多模态模型” 的闭环:先截取页面图像,再让视觉模型判断点击坐标,随后循环执行。虽然可行,但受限于图像处理的时延、成本以及像素级不确定性,实际体验往往不够流畅。为突破这一瓶颈,作者实现了 Sarathi AI——一款完全基于 DOM 信息的 Chrome 扩展,摆脱了视觉识别和后端服务器的依赖。
核心工作流
- 扩展注入目标页面并为所有可见元素分配全局唯一 ID;
- 采集每个元素的元数据(标签名、文本内容、占位符、相邻标签等),形成结构化的 JSON;
- 将 JSON 与用户指令一起发送至 (支持 OpenAI、Gemini、DeepSeek 或自定义端点);
- 返回操作指令集合(如 click、type、hover、navigate、wait、pressKey 等),并指明对应的元素 ID;
- 扩展依据指令在页面上执行相应操作,循环直至任务完成。
主要特性
- 完全基于 DOM,省去截图、视觉模型和云端推理的开销;
- API 密钥本地存储于 Chrome 本地存储,安全性相对可控;
- 通过唯一 ID 实现操作的确定性,便于调试和日志追踪;
- 支持多种 接口,灵活对接不同模型供应商。
已实现的典型场景
- 打开 Gmail 并生成上下文相关的回复;
- 自动填写多字段表单(姓名、邮箱、电话等);
- 电商网站购物流程(加入购物车、处理 OTP 暂停等);
- 处理依赖 hover 效果的 UI 元素;
- 搜索信息、提取并朗读结果;
- 支持带约束的指令(如“输入内容但不发送”)。
测试表现 在大多数普通网站上,Sarathi AI 的任务完成准确率约为 90%。但在以下情形仍会失效:身份验证重定向、复杂的反机器人防护、动态生成的 Shadow DOM 等。
为何选择 DOM 而非视觉
- 迭代速度更快,调试成本低;
- 唯一 ID 保证操作的确定性,避免像素误差;
- 结构化数据更适合 进行逻辑推理。
待完善方向
- 系统性评估基于 DOM 与基于视觉的优劣;
- 更智能的循环终止策略;
- 强化实际使用中的安全防护;
- 优化身份验证重定向的处理逻辑。
项目地址
- GitHub: https://github.com/sarathisahoo/sarathi-ai-
- 演示视频: https://www.youtube.com/watch?v=5Voji994zYw
欢迎社区提供技术建议与批评。