README.md 4.23 KB
Newer Older
mashun1's avatar
uitars  
mashun1 committed
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
# UI-TARS

## 论文

`UI-TARS:Pioneering Automated GUI Interaction with Native Agents`

* https://arxiv.org/pdf/2501.12326

## 模型结构
该模型基于Qwen-2-VL,并在此基础上继续训练,以获得UI-TARS。

![alt text](readme_imgs/arch.png)

## 算法原理

增强的GUI感知(Enhanced GUI Perception)
UI-TARS通过构建大规模GUI截图和元数据集,训练模型能够更精准地理解界面元素(按钮、文本框等)、它们的布局关系和状态变化。它不仅能识别元素,还能进行细粒度的界面描述、状态转移描述和视觉问答,以增强对复杂GUI环境的感知能力。

统一的动作建模(Unified Action Modeling)
论文提出了一个统一动作空间,把不同平台(Web、桌面、移动端)上等价的操作(如点击、输入、拖拽)统一标准化。并通过大规模多步操作轨迹(multi-step action traces)数据进行训练,使模型能够连贯地完成复杂多步任务。

系统2推理(System-2 Reasoning)
UI-TARS引入了显式的“思考(Thoughts)”机制,在每步操作之前生成推理步骤,进行任务分解、长期一致性维护、里程碑识别、试错反思等多种推理模式。这种设计让UI-TARS不仅能快速反应(System-1),还能有意识地规划和调整(System-2),应对动态变化和复杂任务。

迭代式自我改进(Iterative Training with Reflective Online Traces)
UI-TARS使用数百台虚拟机在线自动采集、筛选并反思自己的交互轨迹。通过不断地数据迭代采集、错误分析、修正训练,模型能够持续学习,适应新环境和任务,极大减少了对人工标注的依赖。

![alt text](readme_imgs/alg.png)

## 环境配置

### Docker(方法一)
    
    docker pull image.sourcefind.cn:5000/dcu/admin/base/pytorch:2.4.1-ubuntu22.04-dtk25.04-py3.10

    docker run --shm-size 500g --network=host --name=uitars --privileged --device=/dev/kfd --device=/dev/dri --group-add video --cap-add=SYS_PTRACE --security-opt seccomp=unconfined -v 项目地址(绝对路径):/home/ -v /opt/hyhal:/opt/hyhal:ro -it <your IMAGE ID> bash

    pip install transformers==4.49.0

    pip install opencv-python



### Dockerfile(方法二)

    docker build -t <IMAGE_NAME>:<TAG> .

    docker run --shm-size 500g --network=host --name=uitars --privileged --device=/dev/kfd --device=/dev/dri --group-add video --cap-add=SYS_PTRACE --security-opt seccomp=unconfined -v 项目地址(绝对路径):/home/ -v /opt/hyhal:/opt/hyhal:ro -it <your IMAGE ID> bash
    
    pip install transformers==4.49.0

    pip install opencv-python

### Anaconda(方法三)

mashun1's avatar
mashun1 committed
56
1、关于本项目DCU显卡所需的特殊深度学习库可从光合开发者社区下载安装: https://developer.sourcefind.cn/tool/
mashun1's avatar
uitars  
mashun1 committed
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135

```
dtk: 25.04
python: 3.10
torch: 2.4.1
deepspeed: 0.14.2
flash-attn: 2.6.1
triton: 3.0.0
```

2、其他非特殊库直接按照requirements.txt安装

```
pip install transformers==4.49.0

pip install opencv-python
```

## 数据集



## 训练



## 推理

```bash
# 运行前需修改文件内参数

# TARS-1.5  推荐
python inference_15.py

# TARS
python inference.py
```

注意:`参考data/test_messages.json`构建自己的数据集,并使用`utils/generate_new_data.py`处理数据。

## result

![alt text](readme_imgs/result1.png)

### 精度



## 应用场景

### 算法类别

`对话问答`

### 热点应用行业

`电商,教育,广媒`

## 预训练权重

下载后的模型放在 `checkpoints` 目录(自行创建)

| Model  | url |
|-----------|------------------|
| UI-TARS-1.5-7B 推荐 | [huggingface](https://huggingface.co/ByteDance-Seed/UI-TARS-1.5-7B)  |
| UI-TARS-2B-SFT | [huggingface](https://huggingface.co/ByteDance-Seed/UI-TARS-2B-SFT)  |
| UI-TARS-7B-SFT | [huggingface](https://huggingface.co/ByteDance-Seed/UI-TARS-7B-SFT)  |
| UI-TARS-7B-DPO | [huggingface](https://huggingface.co/ByteDance-Seed/UI-TARS-7B-DPO)  |
| UI-TARS-72B-SFT| [huggingface](https://huggingface.co/ByteDance-Seed/UI-TARS-72B-SFT)  |
| UI-TARS-72B-DPO| [huggingface](https://huggingface.co/ByteDance-Seed/UI-TARS-72B-DPO)  |


## 源码仓库及问题反馈

* https://developer.sourcefind.cn/codes/modelzoo/ui-tars_pytorch

## 参考资料

* https://github.com/bytedance/UI-TARS