数据对比:Midscene 中的 UI-Tars VS GPT-4o(第二部分)

16 小时前   出处: dev.to  作/译者:Camille/小窝

先阅读第一部分有助于理解后续数据的背景信息。

这是一系列的文档内容。在第一部分中,我们大致了解了 UI-Tars 大语言模型是什么以及 Midscene 是如何对其进行统筹安排的。在本文中,我主要想通过使用 Midscene,更深入地比较 UI-Tars 和 GPT-4o 在人工智能驱动的自动化测试方面的表现,找出它们之间的差异以及优缺点。

自 2025 年 2 月起,Midscene 默认支持 GPT-4o、通义千问 2.5VL(qwen-2.5VL)和 UI-Tars。

1. 相同测试用例下 GPT-4o 与 UI-Tars 的对比

我们将分析和比较不同类型的测试步骤。

1.1 步骤 1 - AI 断言

await aiWaitFor('The country selection popup is visible')  
GPT-4o UI-Tars:7B
return_format Json_Object Plain text(但为 Json 字符串)
Steps 1 1
duration 3.09s 2.27s 👍
cost 0.0035775\$ 0.0011$ 👍
token 1390 2924
temperature 0.1 0
Message 浏览器截图、指令 浏览器截图、指令
result {"pass":true, "thought":"截图清晰显示了一个带有国家列表的国家选择弹窗,确认了该断言。" } { "pass": true, "thought": "屏幕上可见国家选择弹窗,由标题‘你住在哪里?’以及带有各自国旗的国家列表可以表明。" }

1.2 步骤 2 - 简单操作步骤

Select France as the country that I'm living  
指标 GPT-4o UI-Tars:7B
return_format Json_Object Plain text(格式化)
Steps 1 2
duration 3.22s 👍 4.54s(2.54s + 1.99s)
cost 0.0109475\$ 0.0023$ 👍
token 4184 14987(5110 + 9877)
temperature 0.1 0
Message 截图、指令、部分 HTML 树 截图、指令
result { "actions":[ { "thought":"..", "type":"Tap", "param":null, "locate":{ "id":"cngod", "prompt":"..." } } ], "finish":true, "log":"...", "error":null } 迭代了 2 个步骤,每次返回 思路:.... 动作:\<点击

为了在国家选择弹窗中点击 “法国”,由于 GPT-4o 在一次回复中就返回了动作和完成状态,所以只需要调用一次大语言模型。但 UI-Tars 根据其推理需要调用两次大语言模型,第一次调用返回动作,然后在动作执行后,第二次调用大语言模型会再次发送截图,以检查 “用户指令” 是否已完成

1.3 步骤 3 - 复杂操作步骤

Click Search bar, then Search 'Chanel', and press the Enter  
GPT-4o UI-Tars:7B
return_format Json_Object Plain text(格式化)
Steps 1 4
duration 3.52s 👍 12.16s(4+2.77+2.36+3.03)
cost 0.01268\$ 0.00608$ 👍
token 4646 49123
temperature 0.1 0
Message 截图、指令、部分 HTML 树 截图、指令
result 在一次回复中返回 3 个动作 { "actions":[ {...}, {...} ], "finish":true, "log":"...", "error":null } 迭代了 4 个步骤,每次返回 思路:.... 动作:\<点击

对于两者来说,这个步骤都有点复杂,但它们都能处理,不过存在很大差异。GPT-4o 的结果中没有推理过程,它在动作开始前就生成了 3 个动作并将完成状态标记为 “真”…… 然而,相对来说 UI-Tars 比较慢,因为它的推理过程是先执行一个动作,然后对其进行反馈,再决定下一个动作,总共它也生成了 3 个动作,另外还在最后进行了一次检查,以根据给定的 “用户指令” 验证当前阶段是否符合用户期望。

1.4 步骤 4 - 滚动至不可预测位置

Scroll down to the 1st product  
指标 GPT-4o UI-Tars:7B
return_format Json_Object Plain text(格式化)
Steps 2 2
duration 7.58s(3.01+4.57) 5.47s 👍(3.18+2.29)
cost 0.01268\$ 0.002735$ 👍
token 12557 14994
temperature 0.1 0
result { "actions":[ {...} ], "finish":true, "log":"...", "error":null } 迭代了 4 个步骤,每次返回 思路:.... 动作:\<点击

哇!由于在使用 GPT-4o 时没有推理过程,要滚动到一个未知位置需要调用两次 GPT-4o,第一次调用生成一个滚动动作,第二次调用检查截图后决定不再需要滚动。

但是使用 UI-Tars 时,它就像正常操作一样,第一次调用决定动作,第二次调用在浏览器动作执行后从新的截图中再次进行验证。

1.5 视觉能力对比

UI-Tars 和 GPT-4o 都有各自的视觉能力。

GPT-4o UI-Tars:7B
Vision

对于一些小的或重叠的元素,GPT-4o 无法识别它们,而 UI-Tars:7B 几乎可以完全识别。遗憾的是,GPT-4o 甚至无法识别顶部横幅中的 “登录” 按钮。

2. 总结

2.1 处理复杂情况的能力
GPT-4o: 因为没有推理过程或没有系统 2 推理,GPT-4o 可以处理一些简单直接的测试步骤,但对于一些非常笼统的步骤,比如 “我登录”,它基本上根本无法处理这种情况。
UI-Tars:7B: 因为它有推理能力,它最多可以支持 15 个步骤,即 14 个动作 + 1 次最终检查,这是它推理能力的上限。
2.2 速度
在大多数情况下,与使用 GPT-4o 相比,如果你使用 UI-Tars,调用大语言模型的次数必须翻倍,因为 UI-Tars 需要对每个 “用户指令” 进行最终检查。
但 GPT-4o 在大多数情况下在生成动作后不需要对 “用户指令” 进行验证。
所以 GPT-4o 速度更快,但对于测试结果来说可能存在风险。
2.3 可信度水平
UI-Tars 总是会检查之前规划的动作是否达到了 “用户指令” 的要求,所以 UI-Tars 用时间换取了准确性,UI-Tars 只有在动作执行后再次检查截图时才会将完成状态标记为 “真”,但 GPT-4o 甚至在生成的动作执行之前就直接返回完成状态为 “真”……
2.4 对图形用户界面(GUI)元素的感知
从 1.4 部分我们可以清楚地看到,UI-Tars 甚至可以识别页面上的小元素和重叠元素,但 GPT-4o 却做不到。
2.5 大语言模型的额外输入
UI-Tars 仅根据截图(模拟人类视觉)做出决策,但 GPT-4o 需要构建部分 HTML 树,由于 HTML 代码规模的增加,这可能会降低 GPT-4o 的运行速度。
2.6 成本
如果我们将 UI-Tars 部署到我们自己的基础设施上,那么为了达到与 GPT-4o 相同甚至更好的结果,你可以节省 50% - 75% 的成本。

3. 结论

总的来说,如果我们计划在日常实际工作中应用人工智能,我认为在上述情况下 UI-Tars 比 GPT-4o 能做得更好。

然而,如何加快 UI-Tars 的推理速度,将是在不久的将来面临的挑战之一。


声明:本文为本站编辑转载,文章版权归原作者所有。文章内容为作者个人观点,本站只提供转载参考(依行业惯例严格标明出处和作译者),目的在于传递更多专业信息,普惠测试相关从业者,开源分享,推动行业交流和进步。 如涉及作品内容、版权和其它问题,请原作者及时与本站联系(QQ:1017718740),我们将第一时间进行处理。本站拥有对此声明的最终解释权!欢迎大家通过新浪微博(@测试窝)或微信公众号(测试窝)关注我们,与我们的编辑和其他窝友交流。
/16 人阅读/0 条评论 发表评论

登录 后发表评论
最新文章