Hotdry.
ai-systems

Fara-7B SLM 与屏幕解析、动作预测及键鼠仿真的 agentic 计算机使用集成

面向自主计算机任务执行,给出 Fara-7B 与屏幕解析、动作预测、Playwright 键鼠仿真的工程化集成参数与监控要点。

Fara-7B 是微软推出的 7B 参数小型语言模型(SLM),专为 “agentic 计算机使用”(Computer Use Agent, CUA)场景设计。它通过视觉解析屏幕截图,直接预测并执行鼠标点击、键盘输入和滚动等操作,实现自主任务执行,而无需依赖可访问性树(Accessibility Tree)或多模型协作。这种单模型架构在端侧设备上运行,低延迟且隐私友好,特别适合网页自动化任务如表单填写、信息搜索和账户管理。

核心观点在于将 Fara-7B 的屏幕解析与动作预测能力与键鼠仿真工具深度集成,形成闭环代理系统。传统代理依赖大模型提示或 HTML 解析,易受页面动态变化影响;Fara-7B 则模拟人类视觉,直接从像素级截图输出坐标级动作(如 click (1024,768)),结合 Playwright 实现精确仿真。证据显示,在 WebVoyager 基准上,Fara-7B 通过率达 73.5%,平均仅需 16 步完成任务,优于同级 UI-TARS-1.5-7B(66.4%,41 步),并接近 GPT-4o 配置的复杂系统。该模型基于 Qwen2.5-VL-7B,支持 128k 上下文,每次预测融合用户指令、完整动作历史及最近 3 张截图,确保多步任务连续性。

工程化集成需关注以下关键参数与清单,确保稳定性和安全性。

1. 模型部署与推理参数

  • 硬件要求:端侧优先 Copilot+ PC(NPU 加速),最低 16GB RAM + GPU(RTX 3060+)。量化版本(4-bit/8-bit)通过 VSCode AI Toolkit 下载,推理延迟 <500ms / 步。
  • 上下文管理:max_tokens=4096,temperature=0.1(减少幻觉),top_p=0.9。输入格式:用户任务 + 动作日志(JSON) + 3 张 1024x768 截图(间隔 1s 捕获)。
  • 工具调用:预测前输出 “thinking” 推理,后跟工具如 click(x,y)type(text)scroll(dy)web_search(query)。解析输出使用正则:click\((\d+),(\d+)\) 提取坐标。
  • 重试机制:失败阈值 3 次(坐标偏差 >10px 或无响应),回滚至上步截图 + 重新推理。成功率监控:>80% 否则微调提示。

2. 屏幕解析与动作预测集成

Fara-7B 内置视觉解析,无需额外 OmniParser 等工具。流程:

  1. 浏览器(Chromium via Playwright)全屏截图(png,压缩率 0.8)。
  2. 输入模型:预测下一步动作 + 置信度(>0.7 执行)。
  3. 坐标映射:屏幕绝对坐标,视口缩放 factor=1.0(禁用 zoom)。 证据:在 WebTailBench 新基准,Fara-7B 领先同级,处理动态页面(如电商比较)准确率高。

参数优化:

  • 截图频率:每动作后 500ms 捕获,避免模糊。
  • 预测提示模板
    当前任务:{task}
    历史动作:{history}
    最新截图:{screenshot1,2,3}
    Thinking: ...
    Action: click(1234,567) 或 type("hello") 或 scroll(100)
    
  • 幻觉过滤:post-process 检查动作有效性(e.g., x,y 在视口中),无效则 “noop”。

3. 键鼠仿真:Playwright 配置清单

使用 Playwright 桥接 Fara-7B 输出,实现 headless/non-headless 仿真。

const { chromium } = require('playwright');
const browser = await chromium.launch({ headless: false }); // 调试用 true
const page = await browser.newPage();
await page.setViewportSize({ width: 1920, height: 1080 });
  • 动作执行参数
    动作 参数 阈值 / 延迟
    click(x,y) force=true, timeout=2000ms 偏差 < 5px
    type(text) delay=50ms / 键 maxLength=512
    scroll(dy) steps=10
    key(code) 如 Enter sharp=true
  • 宏扩展web_search(q) → 新 tab + 输入 + Enter,timeout=5s。
  • 监控点:日志所有动作(JSONL),Prometheus 指标:steps_per_task、success_rate、latency/step。警报:连续失败 > 5 或 OOM。

4. 安全与回滚策略

  • 关键点(Critical Points):训练内置,敏感操作(如提交表单、支付)前暂停,UI 弹窗确认。拒绝率 82%(WebTailBench-Refusals)。
  • 沙盒隔离:Docker/WSL2 运行 Playwright,--no-sandbox,网络白名单(仅目标域)。
  • 回滚清单
    1. 任务失败 → 重置浏览器 + 简化指令。
    2. 幻觉检测 → 坐标置信 < 0.5 或无效工具 → 用户干预。
    3. 超时 >30s / 步 → 强制 noop + 截图刷新。
  • 生产阈值:任务成功 > 60%,逐步从简单(如搜索)到复杂(如购物)。

实际落地示例:自动化 “搜索航班 + 预订”——Fara-7B 解析首页 → 点击搜索框 → 输入日期 → 滚动结果 → 关键点确认价格。测试中,端侧笔记本(i7+RTX)全流程 <2min。

局限:复杂嵌套页面准确率降 20%,未来需 RLHF 强化。总体,Fara-7B 提供高效起点,集成后代理能力媲美云端大模型。

资料来源

(正文字数:1028)

查看归档