Fara-7B:专为计算机操作设计的高效智能体模型

概述:重新定义小型语言模型的智能化操作能力

Fara-7B是微软推出的首个专门为计算机使用设计的智能体小型语言模型。这个仅有70亿参数的超紧凑模型,在同类尺寸模型中实现了最先进的性能表现,甚至能与更大、更耗资源的智能体系统竞争。

什么是计算机使用智能体?

传统聊天模型只能生成基于文本的回复,而像Fara-7B这样的计算机使用智能体模型,能够利用计算机接口(如鼠标和键盘)代表用户完成任务。想象一下,你只需告诉模型”帮我预订下周二飞往纽约的航班”,它就能自动打开浏览器、搜索航班、选择选项并完成预订流程——Fara-7B正是为此而生。

核心突破:Fara-7B通过视觉感知网页,并采取滚动、输入和点击预测坐标等操作。它不依赖单独的解析模型或辅助信息(如无障碍树),使用与人类相同的方式与计算机交互。这种设计让模型能够真正理解屏幕内容并作出相应操作。

为什么小型智能体模型如此重要?

Fara-7B的小尺寸使其能够在设备上直接运行,这带来了两个关键优势:降低延迟增强隐私保护。用户数据完全保留在本地设备上,无需上传到云端,既加快了响应速度,又确保了数据安全。

从技术角度看,Fara-7B基于Qwen2.5-VL-7B模型构建,通过监督微调进行训练。它采用了创新的合成数据生成管道,从Magentic-One多智能体框架中提取了145,000条轨迹,覆盖了多样化的网站、任务类型和难度级别。

Fara-7B性能对比图

技术架构:Fara-7B如何实现智能计算机操作

感知与行动机制

Fara-7B采用”像素输入,行动输出”的架构设计。模型仅接收浏览器窗口截图作为输入,预测单步操作,并直接输出坐标级的动作指令。

在每个步骤中,模型用于决策的上下文包含所有用户消息、完整的操作历史记录以及最新的三张屏幕截图。这种设计使模型能够跟踪任务进度,理解当前状态,并决定下一步最佳行动。

行动空间包括标准的Playwright鼠标和键盘操作,如click(x,y)和type(),以及特定于浏览器的宏操作,如web_search()和visit_url()。模型在预测时先输出推理消息(”思考”下一步行动),然后进行工具调用。

训练数据创新:FaraGen合成数据引擎

开发计算机使用智能体模型的主要瓶颈是缺乏大规模、高质量的人机交互数据。虽然互联网为聊天LLMs提供了近乎无限的文本训练数据,但没有类似的CUA数据可用。

我们的解决方案:FaraGen,一个专为基于网页任务设计的可扩展合成数据引擎。它采用协作式多智能体架构,模拟数字工作流程的完整生命周期,通过三个专门组件同时最大化生成轨迹的质量、数量和多样性:

  • 任务提案:分析多样化的实时网站,生成现实、与人类相关的任务
  • 任务解决:使用智能体协作尝试提出的任务,生成广泛的候选轨迹集合
  • 轨迹验证:作为自动化质量保证层,使用LLM验证器验证轨迹结果是否符合原始意图

这个闭环系统使FaraGen能够以每个完成任务约1美元的成本生成经过验证的网页轨迹,实现了以前对CUA研究来说成本不可行的大规模数据集创建。

数据规模:最终训练数据集包含145,000条轨迹,涵盖100万个步骤,访问了70,117个独立域名。轨迹长度分布呈现长尾特征,范围从3到84个步骤,反映了任务难度的广泛分布。

模型训练方法

Fara-7B的训练过程将多智能体系统的复杂性提炼为单一模型。训练数据包括从多智能体轨迹中提取的截图、推理文本和操作,以及几种辅助任务数据:

  • ** grounding**:识别图像中的元素并生成 grounding 查询
  • 拒绝数据:基于轨迹截图生成有害任务,训练模型拒绝不安全行为
  • UI截图问答和描述:使用随机采样的网页截图生成问答对和图像描述数据

完整的数据混合汇集了所有轨迹和相关任务数据,总共有180万个训练样本。训练采用监督微调方法,使用AdamW优化器,在64个H100 GPU上进行训练。

性能评估:在多个基准测试中展现卓越表现

基准测试框架

我们评估Fara-7B的性能采用了全面的测试框架,包括经典的公共基准测试和我们新开发的WebTailBench。评估环境使用Playwright作为跨浏览器自动化框架,结合BrowserBase管理浏览器会话,确保测试的可靠性和可重复性。

考虑到网页的动态变化特性,我们采取了多项措施确保评估的可靠性:

  • 更新了时间敏感任务(如修改酒店搜索日期)
  • 实现环境错误重试机制(最多5次)
  • 每个在线基准测试的轨迹最多100步
  • 进行三次独立评估并报告平均值

主要结果

Fara-7B在四个网页基准测试中的表现如下:

模型 参数 WebVoyager Online-Mind2Web DeepShop WebTailBench
SoM智能体
SoM Agent (GPT-5) 90.6 57.7 49.1 60.4
SoM Agent (o3) 79.3 55.4 49.7 52.7
SoM Agent (GPT-4o) 65.1 34.6 16.0 30.8
GLM-4.1V-9B-Thinking 9B 66.8 33.9 32.0 22.4
计算机使用模型
OpenAI computer-use-preview 70.9 42.9 24.7 25.7
UI-TARS-1.5-7B 7B 66.4 31.3 11.6 19.5
Fara-7B 7B 73.5 34.1 26.2 38.4

表:四个网页基准测试的在线智能体评估结果(成功率%),结果经过3次运行平均

关键发现:Fara-7B不仅在同类尺寸模型中达到最先进水平,而且与更大的前沿模型竞争激烈。特别是在WebVoyager上,Fara-7B取得了73.5%的成功率,超过了SoM GPT-4o(65.1%)和GLM-4.1V-9B-Thinking智能体(66.8%),并略微优于OpenAI computer-use基线(70.9%)。

成本效率分析

Fara-7B的另一个突出优势是其卓越的成本效益。在WebVoyager基准测试中:

模型 每任务成本(美元) 准确率(%) 每任务操作数 每任务输入标记 每任务输出标记
SoM Agent (GPT-5) 0.316 91.1 16.6±22.1 147k±249k 13.0k±21.0k
SoM Agent (GPT-4o) 0.302 65.1 16.6±22.8 114k±208k 1.8k±2.3k
Fara-7B 0.025 73.5 16.5±21.1 124k±202k 1.1k±1.4k

表:不同模型的每任务WebVoyager统计数据,包括平均输入和输出标记数

Fara-7B平均每个任务只需约16.5步就能完成,与GPT-4o和GPT-5相当,但远少于OpenAI computer-use-preview的38.0步。更重要的是,Fara-7B每个任务仅消耗约1,100个输出标记,而GPT-5需要13,000个,这使得Fara-7B的平均每任务成本仅为0.025美元,比专有基线便宜一个数量级。

WebTailBench:填补评估空白的新基准

我们开发了WebTailBench,这是一个新的评估集,旨在通过两种关键方式补充现有的CUA模型性能评估:(1)扩展任务多样性和覆盖范围;(2)增加任务复杂性。

WebTailBench包含八个在大多数基准测试中 underrepresented 或缺失的任务类型的子类别,以及三个多步骤或跨站点任务的子类别。这种设计明确评估了技能的广度(基于人类常规执行的任务)和深度(通过相互构建的链式子任务)。总共,WebTailBench包含609个任务,涵盖11个类别,全部经过人工注释者手动验证以确保可实现性。

WebTailBench详细结果

任务类别 任务数 SoM GPT-5 SoM o3 SoM GPT-4o GLM-4.1V-9B OAI Comp-Use UI-TARS-1.5 Fara-7B
单站点任务
购物 56 62.5 71.4 38.1 31.0 42.3 41.1 52.4
航班 51 60.1 39.2 11.1 10.5 17.6 10.5 37.9
酒店 52 68.6 56.4 31.4 19.9 26.9 35.3 53.8
餐厅 52 67.9 59.6 47.4 32.1 35.9 22.4 47.4
活动 80 70.4 62.9 41.7 26.3 30.4 9.6 36.3
票务 57 58.5 56.7 37.4 35.7 49.7 30.4 38.6
房地产 48 34.0 17.4 20.1 16.0 9.0 9.7 23.6
工作/职业 50 49.3 44.0 32.7 22.7 20.7 20.7 28.0
多步骤任务
购物清单(2项) 51 66.0 62.7 17.0 7.8 34.0 20.9 49.0
比价购物 57 67.3 59.1 27.5 22.8 1.2 8.8 32.7
组合任务 55 51.5 39.4 26.7 17.0 10.3 9.1 23.0
总体
宏平均 609 59.7 51.7 30.1 22.0 25.3 19.9 38.4
微平均 609 60.4 52.7 30.8 22.4 25.7 19.5 38.4

表:WebTailBench所有11个类别的详细结果。成功率(%)经过3次独立运行平均。Fara-7B在所有任务类别中的计算机使用模型中表现最佳。

在11个类别中的5个单技能子类别中,Fara-7B匹配或超过了除由GPT-5或o3支持的最有能力的前沿SoM智能体之外的所有其他基线。考虑到Fara-7B的尺寸很小,我们将这一成就归功于FaraGen数据生成管道的质量,该管道用相对较小的训练轨迹集训练了Fara-7B。

实际应用:Fara-7B能完成哪些任务?

日常网页任务自动化

Fara-7B可以自动化各种日常网页任务,包括:

  • 信息搜索和摘要:查找相关信息并生成简洁摘要
  • 表单填写和账户管理:自动填写在线表单,管理用户账户
  • 旅行预订:预订航班、酒店、租车和餐厅
  • 购物和比价:在不同零售商间比较价格,购买商品
  • 求职和房地产搜索:查找职位发布和房地产列表

实际应用示例

示例1:购物场景
当要求Fara-7B购买Xbox海绵宝宝控制器时,模型能够导航到电商网站,搜索产品,选择正确选项,并完成购买流程。重要的是,在每个关键点,模型会停止并获取用户输入和批准,然后再继续。

示例2:信息查找和摘要
当要求Fara-7B查找并总结GitHub上Microsoft/Magentic-UI的最新三个问题时,模型能够导航到GitHub仓库,找到问题列表,提取相关信息,并生成简洁的摘要。

示例3:多工具使用
当要求Fara-7B查找两地之间的驾驶时间并建议附近的奶酪店时,模型使用Bing Maps查找驾驶时间,并使用Bing搜索查找相关信息,展示了整合不同工具的能力。

安装和部署指南

系统要求

Fara-7B可以在多种环境中运行,从云端部署到本地设备。对于本地运行,建议使用支持NPU硬件加速的Copilot+ PC(搭载Windows 11)。

安装步骤

使用UV或pip安装软件包:

uv sync --all-extras

pip install -e .

然后安装Playwright浏览器:

playwright install

模型托管选项

推荐:Azure Foundry托管
最简单的方法是使用Azure Foundry托管,无需GPU硬件或模型下载:

  1. Azure Foundry上部署Fara-7B模型并获取端点URL和API密钥
  2. 将端点详细信息添加到现有的endpoint_configs/目录中:
{
    "model": "Fara-7B",
    "base_url": "https://your-endpoint.inference.ml.azure.com/",
    "api_key": "YOUR_API_KEY_HERE"
}
  1. 运行Fara智能体:
python test_fara_agent.py --task "how many pages does wikipedia have" --start_page "https://www.bing.com"

自托管与VLLM
如果有GPU资源,可以使用VLLM自托管Fara-7B:

首先,使用提供的脚本从HuggingFace下载Fara-7B模型权重:

# 安装huggingface_hub(如果尚未安装)
pip install -U huggingface_hub

# 可选,登录HuggingFace CLI
huggingface-cli login

# 下载模型(将保存到model_checkpoints/fara-7b)
python scripts/download_model.py --output-dir ./model_checkpoints --token YOUR_HF_TOKEN

其次,在GPU机器上本地托管模型:

python az_vllm.py --model_url /path/to/model_checkpoints/ --device_id 0,1

测试Fara智能体

运行测试脚本查看Fara的实际操作:

python test_fara_agent.py --task "how many pages does wikipedia have" --start_page "https://www.bing.com" --endpoint_config endpoint_configs/azure_foundry_config.json [--headful] [--downloads_folder "/path/to/downloads"] [--save_screenshots] [--max_rounds 100] [--browserbase]

预期输出

[fara_agent] Wikipedia currently has approximately 64,394,387 pages.
<tool_call>
{"name": "computer_use", "arguments": {"action": "terminate", "status": "success"}}
</tool_call>

[fara_agent] Wikipedia currently has approximately 64,394,387 pages.
INFO:__main__:Closing browser...

安全与责任:构建可信的智能体系统

安全挑战与解决方案

能够操作计算机的智能体提出了与仅聊天模型不同的挑战,包括用户误用的新途径、模型错误行为、行动的意外现实后果,以及外部风险,如提示注入或在线诈骗。

由于CUAs可以采取有实际影响的行动,强大的安全措施对Fara-7B的设计至关重要。我们专注于三种不同的风险场景:

  • 有害任务:用户请求模型执行有害任务
  • 模型错误:模型在执行非有害任务时无意中执行了有害行动
  • 有害网站:模型在执行非有害任务时遇到网站上的有害内容

安全措施实施

拒绝有害任务:Fara-7B在公共安全数据和内部生成任务的混合数据上训练,这些任务根据微软负责任AI政策应该被拒绝。在WebTailBench-Refusals上的评估显示,拒绝率高达82%。

关键点处理:Fara-7B训练识别并在执行任务时在”关键点”停止。关键点是任何需要用户个人数据或同意才能进行交易或不可逆转行动的情况。到达关键点时,Fara-7B通过告知用户没有他们的同意无法继续来响应。

对抗测试:Fara-7B在一组13个针对Magentic-UI的对抗测试任务中进行了评估,其中9个任务避免了有害行为,仅在涉及导航到指向本地或缓存文件的情况下失败,这些情况随后被浏览器沙箱阻止。

安全使用指南

  • 始终让人员在实时网络上监控Fara-7B的行动,并实施机制在必要时立即停止其行动
  • 不要与Fara-7B分享密码或敏感信息
  • 在沙箱环境中运行Fara-7B,以隔离其行动的任何潜在副作用
  • 确保Fara-7B无法访问主机上的敏感数据或资源
  • 通过允许列表或阻止列表限制模型对互联网的访问,限制其接触有害网站
  • 不建议在没有进一步测试和开发的情况下在商业或现实世界应用中使用该模型
  • 不应在高度监管的领域或高风险情况下使用Fara-7B

技术见解:从Fara-7B开发中学到的经验

数据质量胜过数据数量

在开发Fara-7B的过程中,我们发现高质量的训练数据比简单的数据规模更重要。通过FaraGen系统,我们能够用145,000条轨迹训练出表现优异的模型,这证明了精心策划的合成数据可以克服代理数据稀缺的挑战。

反思:传统观点认为训练大型模型需要海量数据,但我们的经验表明,对于专门化任务,高质量、多样化的数据往往比单纯的数据量更关键。这为开发高效的专业化模型提供了新思路。

单纯扩大模型尺寸并非唯一路径

Fara-7B的成功表明,通过专业化的架构设计和高质量训练数据,小型模型也能在特定任务上达到与大型模型竞争的性能。这挑战了”越大越好”的普遍假设。

独特见解:在AI开发中,我们应该更多地考虑”适合性”而非单纯的规模。对于许多实际应用,较小、更高效的模型可能比庞大的通用模型更实用、更经济。

安全性必须内置而非事后添加

从项目开始就将安全考虑纳入设计,比在开发完成后添加安全措施有效得多。Fara-7B的关键点处理机制就是在训练阶段内置的安全功能。

教训:AI安全不是可以后来添加的功能,而应该是系统设计的核心部分。通过在训练数据中包含安全场景和拒绝行为,我们可以创建更可靠、更值得信赖的AI系统。

未来展望:小型智能体模型的发展方向

技术改进方向

展望未来,我们看到几个有希望扩展Fara-7B的方向。广泛来说,这些沿着两个维度:(1)提高智能体在处理现实世界设置和任务中未见行为的能力,具有更强的鲁棒性;(2)实现与人类更无缝的交互。

在鲁棒性方面,整合更强的grounding多模态模型、扩展模型和数据大小,以及纳入强化学习以改进长视野推理都是有希望的途径。同时,设计与人类的无缝交互循环可以使网页智能体更可控、可解释和实用。

实际应用前景

Fara-7B为个人数字助手的未来铺平了道路,这些助手可以真正代表用户操作计算机界面。可能的演进包括更复杂的工作流程自动化、跨应用程序任务执行,以及更自然的人机协作模式。

实用摘要与操作清单

Fara-7B核心优势总结

  • 高效性能:在仅70亿参数的情况下,达到与更大模型竞争的绩效水平
  • 成本效益:每个任务平均成本仅0.025美元,比大型专有模型便宜一个数量级
  • 隐私保护:能够在设备上运行,确保用户数据保留在本地
  • 多功能性:能够处理多样化的网页任务,从信息搜索到复杂交易
  • 安全设计:内置安全措施,包括关键点处理和有害任务拒绝

快速开始清单

  1. 选择部署方式:Azure Foundry托管(推荐用于快速开始)或本地VLLM部署(需要GPU资源)
  2. 安装必要组件:使用pip或UV安装软件包,安装Playwright浏览器
  3. 配置模型端点:设置Azure Foundry端点或本地VLLM服务器
  4. 运行测试任务:使用提供的测试脚本验证安装
  5. 开发自定义应用:基于Fara智能体类构建特定用例应用

最佳实践建议

  • 始终在沙箱环境中测试新任务
  • 实施人工监督机制,特别是对于关键操作
  • 定期更新模型和评估框架以获取最新改进
  • 参与社区反馈,为模型的持续改进做出贡献

常见问题解答(FAQ)

Fara-7B与常规聊天模型有什么区别?
Fara-7B是专门为计算机使用设计的智能体模型,它不仅能生成文本回复,还能实际操作计算机界面(如点击、输入、滚动),而常规聊天模型仅限于文本对话。

Fara-7B可以在我的个人电脑上运行吗?
是的,Fara-7B的紧凑尺寸使其能够在设备上运行,包括Copilot+ PC(搭载Windows 11)。这提供了更低的延迟和更好的隐私保护,因为数据不需要发送到云端。

Fara-7B如何处理需要登录或个人信息的任务?
Fara-7B被训练识别”关键点”——需要用户个人数据或同意的场景。在这些点上,模型会停止执行并等待用户输入,确保敏感信息不会被自动共享。

使用Fara-7B有哪些安全风险?
像所有AI系统一样,Fara-7B可能产生错误或受到恶意内容的影响。我们建议在沙箱环境中使用它,实施人工监督,并避免在高风险场景中使用。模型包含了拒绝有害任务和停止在关键点的安全措施。

Fara-7B与基于大型模型(如GPT-5)的智能体相比如何?
Fara-7B在多项基准测试中与这些大型模型竞争激烈,同时成本显著更低。对于许多实际应用,Fara-7B提供了更好的性价比,特别是在需要设备上处理或成本敏感的场景中。

如何为我的特定用例微调Fara-7B?
目前,Fara-7B作为一个基础模型发布,支持通过其API集成到各种应用中。对于特定领域的微调,建议参考模型文档和最佳实践。

Fara-7B支持哪些类型的网站和任务?
Fara-7B在涵盖广泛网站和任务类型的多样化数据集上训练,包括购物、旅行预订、信息搜索等。然而,它在某些高度动态或复杂网站上的性能可能会有所不同。

如果Fara-7B在执行任务时出错,我该如何干预?
Fara-7B设计为在关键点暂停等待用户输入,并且可以配置为在特定步骤请求确认。此外,我们建议实施监控系统,允许用户在必要时手动停止或调整模型的行动。


通过将先进的人工智能能力压缩到高效的7B参数模型中,Fara-7B代表了实用AI智能体发展的一个重要里程碑。它证明了通过创新的数据生成和模型设计,小型专业化模型可以在保持成本效益和隐私的同时,实现与大型通用模型竞争的性能。随着社区的进一步探索和开发,Fara-7B有望为个人计算开启更智能、更自主的未来。