Fara-7B作为微软首款专为计算机使用设计的7B参数代理小模型(SLM),通过纯视觉屏幕解析实现高效的agentic工作流。其核心在于不依赖可访问性树,仅从浏览器截图预测精确坐标执行点击、输入、滚动等动作,支持本地设备运行,显著降低延迟并提升隐私。该模型在WebVoyager基准上达到73.5%成功率,平均仅需16步完成任务,超越GPT-4o(65.1%)和同规模UI-TARS-1.5-7B(66.4%)。
视觉屏幕解析的核心工程机制
Fara-7B的屏幕解析依赖Qwen2.5-VL-7B视觉语言底座,支持128k上下文长度。输入包括用户目标文本、最近3张截图(分辨率固定1428x896)和完整动作历史。模型输出链式推理(thinking)后调用工具,如click([x,y])、type("text")、scroll(pixels)。训练数据来源于Magentic-One多代理合成管道:145k条任务轨迹(100万步),涵盖定位、VQA、字幕等辅助任务,经三重验证器(对齐、评分、多模态)过滤。
工程要点:
- 截图预处理:统一分辨率1428x896,避免畸变。使用最新3张截图捕捉动态变化,历史截图仅存文本描述以节省token。
- 坐标预测精度:模型直接从像素预测(x,y),阈值建议误差<5像素。复杂元素(如按钮边缘)需先
mouse_move对准光标尖端,再left_click。
- 参数优化:推理时启用bf16精度,vLLM服务器设置
--max-model-len 131072 --gpu-memory-utilization 0.9,单A100/H100 GPU支持实时<2s/step。
动作执行与工作流参数化
动作原语基于Playwright标准,支持key(["Enter"])、visit_url("url")、web_search("query")等宏操作。代理循环:observe-think-act,直至terminate(status="success")或达到max_steps。
可落地部署清单:
-
环境准备:
| 组件 |
版本/要求 |
作用 |
| torch |
>=2.7.1 |
核心推理 |
| transformers |
>=4.53.3 |
模型加载 |
| vllm |
>=0.10.0 |
高效服务 |
| Docker |
WSL2 (Windows) |
沙盒隔离 |
Copilot+ PC优先,使用NPU量化版(AI Toolkit VSCode下载)。
-
低延迟推理阈值:
- 超时:每步30s,total 50步(~16min)。
- 等待:
wait(time=2-5)处理加载延迟。
- 重试:环境错误重试3次,调整坐标±3像素。
-
监控与回滚策略:
- 日志全记录:JSON格式存推理、动作、截图哈希。
- 关键点(Critical Point)拦截:购置、登录、邮件前强制暂停,用户确认。
- 安全拒绝:红队测试82%拒绝率,监控幻觉( grounding检查:输出坐标须在截图可见区域)。
- 回滚:
history_back()或terminate("failure"),结合人工干预。
-
工作流示例:购物代理:
用户:购买Xbox Spongebob手柄。
步骤1:web_search("Xbox Spongebob controller") → 访问Amazon。
步骤2:截图解析 → click([800,400]) 添加购物车。
步骤3:关键点:暂停确认金额。
步骤4:terminate("success")。
实际部署中,集成Magentic-UI实现人机环路。
风险限制与优化路径
局限:复杂任务准确率降至<50%,指令遵循偶发错误,易幻觉。风险包括误操作不可逆动作,故强制沙盒+审计。未来优化:RLHF在沙盒强化,底座升级至更强VL模型。
通过上述参数,Fara-7B可在笔记本部署,实现<100ms端到端延迟的屏幕解析代理,适用于企业隐私敏感场景如内部账户管理。
资料来源:
- 微软研究博客:“Fara-7B operates by visually perceiving a webpage and takes actions like scrolling, typing, and clicking on directly predicted coordinates.”
- HuggingFace模型卡:训练于合成轨迹,支持Playwright动作原语。
(正文约1200字)