---
license: other
language:
- zh
- en
base_model:
- THUDM/glm-4v-9b
pipeline_tag: image-text-to-text
library_name: transformers
---
# CogAgent
## 关于模型
`cogagent-9b-20241220` 是 我们基于 [GLM-4V-9B](https://huggingface.co/THUDM/glm-4v-9b) 训练得到的一个专门用于 Agent任务的模型。
`cogagent-9b-20241220` 是一款较为先进的智能体模型,它具备强大的跨平台兼容性,能够实现对多种计算设备上的图形界面进行自动化的操作。
无论是Windows、macOS还是Android系统,`cogagent-9b-20241220` 都能够接收用户指令,自动获取设备屏幕截图,经过模型推理后执行自动化设备操作。
## 运行模型
请前往我们的[github](https://github.com/THUDM/CogAgent) 查看具体的运行示例。
## 输入和输出
cogagent-9b-20241220是一个Agent类执行模型而非对话模型,不支持连续对话,但是但支持连续的执行历史。
这里展示了用户应该怎么整理自己的输入格式化的传入给模型。并获得模型规则的回复。
### 用户输入部分
1. `task` 字段
用户输入的任务描述,类似文本格式的prompt,该输入可以指导 CogAgent1.5 模型完成用户任务指令。请保证简洁明了。
2. `platform` 字段
CogAgent1.5 支持在多个平台上执行可操作Agent功能, 我们支持的带有图形界面的操作系统有三个系统,
- Windows 10,11,请使用 `WIN` 字段。
- Mac 14,15,请使用 `MAC` 字段。
- Android 13,14,15 以及其他GUI和UI操作方式几乎相同的安卓UI发行版,请使用 `Mobile` 字段。
如果您使用的是其他系统,效果可能不佳,但可以尝试使用 `Mobile` 字段用于手机设备,`WIN` 字段用于Windows设备,`MAC`
字段用于Mac设备。
3. `format` 字段
用户希望 CogAgent1.5 返回何种格式的数据, 这里有以下几种选项:
- `Answer in Action-Operation-Sensitive format.`: 本仓库中demo默认使用的返回方式,返回模型的行为,对应的操作,以及对应的敏感程度。
- `Answer in Status-Plan-Action-Operation format.`: 返回模型的装题,行为,以及相应的操作。
- `Answer in Status-Action-Operation-Sensitive format.`: 返回模型的状态,行为,对应的操作,以及对应的敏感程度。
- `Answer in Status-Action-Operation format.`: 返回模型的状态,行为。
- `Answer in Action-Operation format.` 返回模型的行为,对应的操作。
4. `history` 字段
拼接顺序和结果应该如下所示:
```
query = f'{task}{history}{platform}{format}'
```
### 模型返回部分
1. 敏感操作: 包括 `<<敏感操作>> <<一般操作>>` 几种类型,只有要求返回`Sensitive`的时候返回。
2. `Plan`, `Agent`, `Status`, `Action` 字段: 用于描述模型的行为和操作。只有要求返回对应字段的时候返回,例如带有`Action`则返回
`Action`字段内容。
3. 常规回答部分,这部分回答会在格式化回答之前,表示综述。
4. `Grounded Operation` 字段:
用于描述模型的具体操作,包括操作的位置,类型,以及具体的操作内容。其中 `box` 代表执行区域的坐标,`element_type` 代表执行的元素类型,
`element_info` 代表执行的元素描述。这些信息被一个 `操作指令` 操作所包裹。这些指令包括:
- `CLICK`: 点击操作,模拟鼠标点击或者手指触摸。
- `LONGPRESS`: 长案操作。仅在 `Mobile` 模式下支持。
### 例子
用户的任务是希望帮忙将所有邮件标记为已读,用户使用的是 Mac系统,希望返回的是Action-Operation-Sensitive格式。
正确拼接后的提示词应该为:
```
Task: 帮我将所有的邮件标注为已读
(Platform: Mac)
(Answer in Action-Operation-Sensitive format.)
```
接着,这里展现了不同格式要求下的返回结果:
Answer in Action-Operation-Sensitive format
```
Action: 点击页面顶部工具栏中的“全部标为已读”按钮,将所有邮件标记为已读。
Grounded Operation: CLICK(box=[[219,186,311,207]], element_type='可点击文本', element_info='全部标为已读')
<<一般操作>>
```
Answer in Status-Plan-Action-Operation format
```
Status: None
Plan: None.
Action: 点击收件箱页面顶部中间的“全部标记为已读”按钮,将所有邮件标记为已读。
Grounded Operation: CLICK(box=[[219,186,311,207]], element_type='可点击文本', element_info='全部标为已读')
```
Answer in Status-Action-Operation-Sensitive format
```
Status: 当前处于邮箱界面[[0, 2, 998, 905]],左侧是邮箱分类[[1, 216, 144, 570]],中间是收件箱[[144, 216, 998, 903]],已经点击“全部标为已读”按钮[[223, 178, 311, 210]]。
Action: 点击页面顶部工具栏中的“全部标为已读”按钮,将所有邮件标记为已读。
Grounded Operation: CLICK(box=[[219,186,311,207]], element_type='可点击文本', element_info='全部标为已读')
<<一般操作>>
```
Answer in Status-Action-Operation format
```
Status: None
Action: 在收件箱页面顶部,点击“全部标记为已读”按钮,将所有邮件标记为已读。
Grounded Operation: CLICK(box=[[219,186,311,207]], element_type='可点击文本', element_info='全部标为已读')
```
Answer in Action-Operation format
```
Action: 在左侧邮件列表中,右键单击第一封邮件,以打开操作菜单。
Grounded Operation: RIGHT_CLICK(box=[[154,275,343,341]], element_info='[AXCell]')
```
CogVLM📖 Paper: CogVLM: Visual Expert for Pretrained Language Models CogVLM 是一个强大的开源视觉语言模型(VLM)。CogVLM-17B拥有100亿的视觉参数和70亿的语言参数,支持490*490分辨率的图像理解和多轮对话。 CogVLM-17B 17B在10个经典的跨模态基准测试中取得了最先进的性能包括NoCaps, Flicker30k captioning, RefCOCO, RefCOCO+, RefCOCOg, Visual7W, GQA, ScienceQA, VizWiz VQA 和 TDIUC 基准测试。 |
CogAgent📖 Paper: CogAgent: A Visual Language Model for GUI Agents CogAgent 是一个基于CogVLM改进的开源视觉语言模型。CogAgent-18B拥有110亿的视觉参数和70亿的语言参数, 支持1120*1120分辨率的图像理解。在CogVLM的能力之上,它进一步拥有了GUI图像Agent的能力。 CogAgent-18B 在9个经典的跨模态基准测试中实现了最先进的通用性能,包括 VQAv2, OK-VQ, TextVQA, ST-VQA, ChartQA, infoVQA, DocVQA, MM-Vet, 和 POPE 测试基准。它在包括AITW和Mind2Web在内的GUI操作数据集上显著超越了现有的模型。 |