3.5 KiB
3.5 KiB
VLM Agent - 视觉语言模型电脑操作工具
基于Qwen-VL模型的自动化电脑操作工具,可以通过自然语言指令控制电脑完成各种任务。
项目简介
这是一个利用视觉语言模型(VLM)实现的电脑自动化操作工具,能够通过分析屏幕截图并执行相应操作来完成用户指定的任务。该工具可以模拟人类操作电脑的行为,包括鼠标点击、文本输入、窗口滚动等。
核心功能
支持的操作工具
- 鼠标点击 - 在指定坐标点击鼠标
- 文本输入 - 在指定位置输入文本(支持中英文)
- 窗口滚动 - 在指定位置向上或向下滚动
- 关闭窗口 - 关闭指定坐标所在的窗口
- Windows键 - 按下Windows键打开开始菜单
- 回车键 - 按下回车键确认或换行
- 删除文本 - 删除指定输入框中的文本
- 鼠标拖拽 - 从起始坐标拖拽到结束坐标
- 等待 - 等待指定时间
- 打开终端 - 打开新的终端窗口
- 快捷键 - 在指定位置点击后执行快捷键操作
特色功能
- 坐标系统:使用0-1比例坐标系统,适配不同分辨率屏幕
- 图像处理:自动缩放截图至最大边长1024像素以优化API调用
- 智能解析:自动解析模型输出的工具调用指令
- 跨平台支持:支持Windows、macOS和Linux系统
安装与使用
环境要求
- Python 3.6+
- 阿里云API密钥(用于调用Qwen-VL模型)
安装依赖
pip install pyautogui pillow openai pyperclip
运行程序
python main.py
首次运行时,程序会提示您输入阿里云API密钥。
获取阿里云API密钥
使用示例
程序运行后,您可以尝试以下任务:
- "打开记事本并输入'Hello World'"
- "在浏览器中搜索'人工智能'"
- "创建一个名为'test.txt'的文件"
- "打开计算器并计算2+3的结果"
注意事项
- 程序运行时,请勿手动操作电脑,以免干扰自动化流程
- 如需紧急停止程序,可将鼠标快速移至屏幕左上角触发PyAutoGUI安全机制
- 坐标系统使用比例值,x和y的取值范围都是0到1之间的小数
- 请确保网络连接稳定,以便正常调用模型API
- 不要在程序运行时关闭终端窗口
安全提醒
- API密钥是敏感信息,请妥善保管
- 程序只能执行您授权的任务,请勿尝试危险操作
- 如发现异常行为,请立即终止程序运行
技术架构
- 核心控制器:VLMAgent类负责API连接、截图、坐标转换和操作执行
- 模型服务:基于阿里云Qwen-VL模型提供视觉语言理解能力
- 操作执行:通过pyautogui库实现底层的鼠标和键盘操作
- 图像处理:使用PIL库处理屏幕截图以优化API传输效率
项目结构
.
├── main.py # 主程序文件
└── README.md # 项目说明文档
常见问题
如何提高操作准确性?
如果发现鼠标点击位置不准确,可能是坐标转换存在问题,程序会自动微调坐标值。如果是软件正在运行导致操作延迟,建议增加等待时间。
支持哪些操作系统?
支持Windows、macOS和Linux主流操作系统。
最多执行多少步操作?
默认情况下,程序最多执行50步操作以防止无限循环。