UI-TARS: 基于视觉语言模型的多模式代理
GitHub:https://github.com/bytedance/UI-TARS
更多AI开源软件:发现分享好用的AI工具、AI开源软件、AI模型、AI变现 - 小众AI
基于视觉语言模型(Vision-Language Model)的 GUI 代理应用,允许用户通过自然语言控制电脑操作。它结合了视觉识别和自然语言处理技术,能够理解用户的指令并执行相应的操作。
该应用支持跨平台运行,适用于 Windows 和 MacOS 系统。通过实时反馈和状态显示,用户可以直观地看到指令的执行情况,确保操作的精准性和高效性。
主要功能
- 自然语言控制:通过自然语言指令控制电脑操作,简化用户交互。
- 视觉识别支持:支持截图和视觉识别功能,能够识别屏幕内容并执行相应操作。
- 精准控制:提供精确的鼠标和键盘控制,确保操作的准确性。
- 跨平台支持:支持 Windows 和 MacOS 系统,满足不同用户的需求。
- 实时反馈:提供实时反馈和状态显示,帮助用户了解指令执行情况。
性能
Online Benchmark Evaluation
Benchmark type | Benchmark | UI-TARS-1.5 | OpenAI CUA | Claude 3.7 | Previous SOTA |
---|---|---|---|---|---|
Computer Use | OSworld (100 steps) | 42.5 | 36.4 | 28 | 38.1 (200 step) |
Windows Agent Arena (50 steps) | 42.1 | - | - | 29.8 | |
Browser Use | WebVoyager | 84.8 | 87 | 84.1 | 87 |
Online-Mind2web | 75.8 | 71 | 62.9 | 71 | |
Phone Use | Android World | 64.2 | - | - | 59.5 |
Grounding Capability Evaluation
Benchmark | UI-TARS-1.5 | OpenAI CUA | Claude 3.7 | Previous SOTA |
---|---|---|---|---|
ScreenSpot-V2 | 94.2 | 87.9 | 87.6 | 91.6 |
ScreenSpotPro | 61.6 | 23.4 | 27.7 | 43.6 |
Poki Game
Model | 2048 | cubinko | energy | free-the-key | Gem-11 | hex-frvr | Infinity-Loop | Maze:Path-of-Light | shapes | snake-solver | wood-blocks-3d | yarn-untangle | laser-maze-puzzle | tiles-master |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
OpenAI CUA | 31.04 | 0.00 | 32.80 | 0.00 | 46.27 | 92.25 | 23.08 | 35.00 | 52.18 | 42.86 | 2.02 | 44.56 | 80.00 | 78.27 |
Claude 3.7 | 43.05 | 0.00 | 41.60 | 0.00 | 0.00 | 30.76 | 2.31 | 82.00 | 6.26 | 42.86 | 0.00 | 13.77 | 28.00 | 52.18 |
UI-TARS-1.5 | 100.00 | 0.00 | 100.00 | 100.00 | 100.00 | 100.00 | 100.00 | 100.00 | 100.00 | 100.00 | 100.00 | 100.00 | 100.00 | 100.00 |
Minecraft
Task Type | Task Name | VPT | DreamerV3 | Previous SOTA | UI-TARS-1.5 w/o Thought | UI-TARS-1.5 w/ Thought |
---|---|---|---|---|---|---|
Mine Blocks | (oak_log) | 0.8 | 1.0 | 1.0 | 1.0 | 1.0 |
(obsidian) | 0.0 | 0.0 | 0.0 | 0.2 | 0.3 | |
(white_bed) | 0.0 | 0.0 | 0.1 | 0.4 | 0.6 | |
200 Tasks Avg. | 0.06 | 0.03 | 0.32 | 0.35 | 0.42 | |
Kill Mobs | (mooshroom) | 0.0 | 0.0 | 0.1 | 0.3 | 0.4 |
(zombie) | 0.4 | 0.1 | 0.6 | 0.7 | 0.9 | |
(chicken) | 0.1 | 0.0 | 0.4 | 0.5 | 0.6 | |
100 Tasks Avg. | 0.04 | 0.03 | 0.18 | 0.25 | 0.31 |
模型对比
Here we compare performance across different model scales of UI-TARS on the OSworld benchmark.
Benchmark Type | Benchmark | UI-TARS-72B-DPO | UI-TARS-1.5-7B | UI-TARS-1.5 |
---|---|---|---|---|
Computer Use | OSWorld | 24.6 | 27.5 | 42.5 |
GUI Grounding | ScreenSpotPro | 38.1 | 49.6 | 61.6 |
🚀 安装和使用
为了帮助您快速开始使用我们的模型,我们建议您按顺序执行以下步骤。这些步骤将指导您完成部署、预测后处理,以使模型在您的环境中执行作。
✅ 步骤1:部署和推理
👉 部署和推理。 这包括使用 huggingface 终端节点部署模型和运行第一个预测的说明。
✅ 第 2 步:后处理
👉 预测后处理。 这包括将模型预测解析为可执行的 pyautogui 代码。 为了帮助您更好地了解坐标处理,我们还提供了坐标处理可视化指南。
提示使用指南
为了适应不同的设备环境和任务复杂性,codes/prompts.py 中的以下三个提示模板。旨在指导 GUI 代理生成适当的作。选择最适合您的使用案例的模板:
🖥️COMPUTER_USE
建议用于:桌面环境(如 Windows、Linux 或 macOS)上的 GUI 任务。
特征:
- 支持常见的桌面作:鼠标单击(单击、双击、右键单击)、拖动作、键盘快捷键、文本输入、滚动等。
- 非常适合浏览器导航、办公软件交互、文件管理和其他基于桌面的任务。
📱MOBILE_USE
建议用于:移动设备或 Android 仿真器上的 GUI 任务。
特征:
- 包括特定于移动设备的作:、、、 .long_pressopen_apppress_homepress_back
- 适用于启动应用程序、滚动视图、填充输入字段以及在移动应用程序中导航。
📌GROUNDING
推荐用于:仅专注于作输出的轻量级任务,或用于模型训练和评估。
特征:
- 仅输出 ,无需任何推理 ()。ActionThought
- 用于评估接地能力。
实战演习
步骤 1:初始化:UI-TARS 首先使用 PyAutoGUI 初始化交互环境以与 GUI 元素交互。
步骤 2:观察和思考过程
- 观察:UI-TARS 识别桌面上的 Word 图标。
- 思考:“Word 图标存在;我需要双击它才能打开 Word 程序。”
- 操作:在 Word 图标上执行左键双击操作。
步骤 3:等待程序启动
- 观察:UI-TARS 检测到 Word 程序正在加载。
- 想法:“我应该等到 Word 完全启动以避免交互错误。”
- 操作:执行等待操作以确保环境已准备好进行下一步。
步骤 4:输入文本并保存
- 观察:UI-TARS 观察到 Word 文档界面已准备好进行交互。
- 想法:“现在我可以添加文本‘hello’并使用 Ctrl+S 保存文档。”
- 操作:执行输入(type("hello"))并保存文件(Ctrl+S)。
相关文章:

UI-TARS: 基于视觉语言模型的多模式代理
GitHub:https://github.com/bytedance/UI-TARS 更多AI开源软件:发现分享好用的AI工具、AI开源软件、AI模型、AI变现 - 小众AI 基于视觉语言模型(Vision-Language Model)的 GUI 代理应用,允许用户通过自然语言控制电脑操…...
02_线性模型(回归线性模型)
描述 线性模型是在实践中广泛使用的一类模型,线性模型利用输入特征的线性函数(linear function)进行预测。 用于回归的线性模型 对于回归问题,线性模型预测的一般公式如下: $ \widehat y w[0]*x[0]w[1]*x[1]…w[p…...

Spark SQL 运行架构详解(专业解释+番茄炒蛋例子解读)
1. 整体架构概览 Spark SQL的运行过程可以想象成一个"SQL查询的加工流水线",从原始SQL语句开始,经过多个阶段的处理和优化,最终变成分布式计算任务执行。主要流程如下: SQL Query → 解析 → 逻辑计划 → 优化 → 物理…...

【计算机网络】网络IP层
📚 博主的专栏 🐧 Linux | 🖥️ C | 📊 数据结构 | 💡C 算法 | 🅒 C 语言 | 🌐 计算机网络 上篇文章:传输层协议TCP 下篇文章:数据链路层 文章摘要࿱…...

一天学会Maven
一、Maven简介和快速入门 1.1 Maven介绍 Maven 是一款为 Java 项目构建管理、依赖管理的工具(软件),使用 Maven 可以自动化构建、测试、打包和发布项目,大大提高了开发效率和质量。 总结:Maven就是一个软件…...
CentOS部署Collabora Online
1.安装Docker CentOS7安装Docker(超详细)-CSDN博客 2.拉取镜像 docker pull collabora/code:latest 3. 启动容器(直接暴露HTTP端口) docker run -d --name collabora -p 9980:9980 -e "usernameadmin" -e "password123456" -e …...
DeepInjectSQL - 基于 AI 生成对抗网络(GAN)的下一代 SQL 注入自动化漏洞猎手
概述 SQLMap本身是一个成熟的自动化SQL注入工具,可以与GAN结合起来,让GAN生成的Payload替代传统的手工或规则生成的测试用例,从而提高检测的覆盖率和效率。 分析可行性 GAN通常用于生成类似真实数据分布的数据,例如图片、文本等。…...
配置Hadoop集群-集群配置
以下是 Hadoop 集群的核心配置步骤,基于之前的免密登录和文件同步基础,完成 Hadoop 分布式环境的搭建: 1. 集群规划 假设集群包含 3 个节点: master:NameNode、ResourceManagerslave1:DataNode、NodeMana…...

变量函数实战:高保真APP原型“发票页面”动态交互教程
变量函数是高保真交互原型设计中常见的高级交互功能,能够避免重复复制与手动修改页面元素和逻辑标注,让演示更有真实体验感。本文分享一个高保真APP交互原型页面的实操案例,结合原型设计工具中的变量函数与逻辑判断功能,手把手教你…...

Spring Boot 3 + Undertow 服务器优化配置
优化背景 当你的application需要支持瞬时高并发的时候,tomcat已经不在是最优的选择,我们可以改为Undertow,并对其进行优化。 Undertow 是一个轻量级的、高性能的Java Web 服务器,由JBoss 开发并开源。它是基于非阻塞(…...

7系列 之 OSERDESE2
背景 《ug471_7Series_SelectIO.pdf》介绍了Xilinx 7 系列 SelectIO 的输入/输出特性及逻辑资源的相关内容。 第 1 章《SelectIO Resources》介绍了输出驱动器和输入接收器的电气特性,并通过大量实例解析了各类标准接口的实现。 第 2 章《SelectIO Logic Resource…...
Redis--常见数据类型List列表
目录 一、概念 二、命令 2.1 LPUSH 2.2 LPUSHX 2.3 RPUSH 2.4 RPUSHX 2.5 LRANGE 2.6 LPOP 2.7 RPOP 2.8 LINDEX 2.9 LINSERT 2.10 LLEN 2.11 阻塞版本命令 三、内部编码 一、概念 列表类型是用来存储多个有序的字符串,列表中的每个字符串称为元素&…...
dfs 第一次加训 详解 下
目录 P1706 全排列问题 思路 B3618 寻找团伙 思路 B3621 枚举元组 思路 B3622 枚举子集(递归实现指数型枚举) 思路 B3623 枚举排列(递归实现排列型枚举) B3625 迷宫寻路 思路 P6183 [USACO10MAR] The Rock Game S 总结…...

vue3+flask+sqlite前后端项目实战
基础环境安装 pycharm 下载地址: https://www.jetbrains.com/zh-cn/pycharm/download/?sectionwindows vscode 下载地址 https://code.visualstudio.com/docs/?dvwin64user python 下载地址 https://www.python.org/downloads/windows/ Node.js(含npm…...

Java 线程的堆栈跟踪信息
Java 线程的堆栈跟踪信息,展示了线程的当前状态和执行位置。以下是详细解释: 线程基本信息 "Thread-0" #16 prio5 os_prio0 cpu0.00ms elapsed16.29s tid0x00000243105a4130 nid0x5384 waiting on condition [0x0000007687ffe000]线程名称…...

【计算机视觉】OpenCV实战项目:Long-Exposure:基于深度学习的长时间曝光合成技术
Long-Exposure:基于深度学习的长时间曝光合成技术 项目概述与技术背景项目核心功能技术原理 环境配置与安装硬件要求建议详细安装步骤可选组件安装 实战应用指南1. 基础使用:视频转长曝光2. 高级模式:自定义光轨合成3. 批量处理模式 技术实现…...

传输层协议UDP和TCP
传输层协议UDP和TCP 1、UDP2、TCP2.1、TCP协议段格式2.2、确认应答(ACK)机制2.3、超时重传机制2.4、连接管理机制2.5、理解CLOSE_WAIT状态2.6、理解TIME_WAIT状态2.7、流量控制2.8、滑动窗口2.9、拥塞控制2.10、延迟应答2.11、捎带应答2.12、面向字节流2.13、粘包问题2.14、TCP…...

浅谈大语言模型原理
1.反向传播算法 背景 反向传播算法是当前深度学习的核心技术。 神经网络 x是输入,o是输出,w是需要训练的参数(w有初始值)三层全连接的神经网络:输入层、隐藏层、输出层 激活函数 f ( x ) 1 1 x − 1 f(x)\frac…...

Clickhouse 迁移到 Doris 的最佳实践
一、引言 在将数据从 Clickhouse 迁移到 Apache Doris / SelectDB Cloud 的过程中,涉及表结构迁移、查询语句迁移以及数据迁移等多个关键环节。每个环节都有其复杂性和需要注意的细节,本文将详细介绍这些内容及对应的最佳实践方法。 二、表结构迁移 &…...

WebSocket的原理及QT示例
一.WebSocket 介绍 1.概述 WebSocket 是一种在单个 TCP 连接上进行全双工通讯的协议,它在 2011 年被 IETF 定为标准 RFC 6455,并由 RFC7936 补充规范。与传统的 HTTP 协议不同,WebSocket 允许服务器和客户端之间进行实时、双向的数据传输&a…...
数据库故障排查指南以及各类常用数据库基础用法
数据库故障排查指南大纲 数据库故障排查的基本概念 数据库故障的定义与分类常见数据库故障的表现形式故障排查的重要性与目标 数据库故障通常指数据库系统在运行过程中出现的异常情况,导致数据无法正常访问或操作。故障可以分为硬件故障、软件故障、网络故障、配…...
Spring Boot动态配置修改全攻略
精心整理了最新的面试资料和简历模板,有需要的可以自行获取 点击前往百度网盘获取 点击前往夸克网盘获取 无需重启应用,实时更新配置的终极指南 在微服务架构中,动态配置管理是提高系统灵活性的关键技术。本文将通过4种主流方案,…...

vue3:十二、图形看板- echart图表-柱状图、饼图
一、效果 如图展示增加了饼图和柱状图,并且优化了浏览器窗口大小更改,图表随着改变 二、 饼图 1、新建组件文件 新增组件EchartsExaminePie.vue,用于存储审核饼图的图表 2、写入组件信息 (1)视图层 写入一个div,写入变量chart和图表宽高 <template><div ref…...

2025年best好用的3dsmax插件和脚本
copitor 可以从一个3dsmax场景里将物体直接复制到另一个场景中 Move to surface 这个插件可以将一些物体放到一个平面上 instancer 实体器,举例:场景中有若干独立的光源,不是实体对象,我们可以使用instancer将他变成实体。 paste …...
趣谈Ai各种模型算法及应用
机器学习与深度学习模型选型终极指南:告别选择困难症! 大家好!今天,我们来聊一个让很多初学者甚至有经验的开发者都头疼的问题:面对琳琅满目的机器学习和深度学习模型,到底该如何选择?就像走进…...

HAProxy + Keepalived + Nginx 高可用负载均衡系统
1. 项目背景 在现代Web应用中,高可用性和负载均衡是两个至关重要的需求。本项目旨在通过HAProxy实现流量分发,通过Keepalived实现高可用性,通过Nginx提供后端服务。该架构能够确保在单点故障的情况下,系统仍然能够正常运行&#…...
vue2升级vue3
vue2升级vue3 父子自定义事件插槽差异 父子自定义事件 父组件的传给子组件的自定义事件以短横形式命名,例如:my-click 子组件声明该自定义事件时为 myClick 事件可以正常触发 插槽差异 vue2: <el-table-column:label"$t(hcp_devrs…...

5.12 note
Leetcode 图 邻接矩阵的dfs遍历 class Solution { private: vector<vector<int>> paths; vector<int> path; void dfs(vector<vector<int>>& graph, int node) { // 到n - 1结点了保存 if (node graph.size() - 1)…...

跨时钟域(CDC,clock domain crossing)信号处理
参考视频: 数字IC,FPGA秋招【单bit信号的CDC跨时钟域处理手撕代码合集】_哔哩哔哩_bilibili 一、亚稳态 原因是:建立时间和保持时间没有保持住。然后在下图的红框里面,产生亚稳态。因为电路反馈机制,最后大概率会恢复…...
鸿蒙HarmonyOS list优化一: list 结合 lazyforeach用法
list列表是开发中不可获取的,非常常用的组件,使用过程中会需要不断的优化,接下来我会用几篇文章进行list在纯原生的纯血鸿蒙的不断优化。我想进大厂,希望某位大厂的看到后能给次机会。 首先了解一下lazyforeach: Laz…...