Open-AutoGLM Windows 安装部署教程

Open-AutoGLM Windows 安装部署教程

本教程记录在 Windows 系统上部署 Open-AutoGLM (Phone Agent) 的完整流程,包含常见问题的解决方案。

由于电脑显存原因,使用的Q8gguf版本,所以任务完成度比较低,可以准确做到打开APP并滑动,无法打字输入,AI推测由于量化版本无法准确识别屏幕与通信延时过高。

环境要求

  • 操作系统: Windows 10/11
  • Python: 3.10+
  • GPU: NVIDIA 显卡(推荐 12GB+ 显存)
  • Android 设备: Android 7.0+,已启用 USB 调试

一、克隆项目

powershell 复制代码
git clone https://github.com/zai-org/Open-AutoGLM.git
cd Open-AutoGLM

⚠️ 网络问题 : 如果克隆失败,可尝试添加 --depth 1 参数进行浅克隆:

powershell 复制代码
git clone https://github.com/zai-org/Open-AutoGLM.git --depth 1

二、安装 Python 依赖

powershell 复制代码
pip install -r requirements.txt
pip install -e .

三、安装 ADB 工具

1. 下载 ADB

Android 官方 下载 Platform Tools,解压到自定义目录(如 C:\platform-tools)。

2. 配置环境变量

  1. 右键「此电脑」→「属性」→「高级系统设置」→「环境变量」
  2. 在「系统变量」中找到 Path,点击「编辑」
  3. 添加 ADB 所在目录(如 C:\platform-tools
  4. 重启终端使配置生效

3. 验证安装

powershell 复制代码
adb version
# 应显示: Android Debug Bridge version 1.0.41

四、模型部署

⚠️ 重要:vLLM 不支持 Windows

官方推荐的 vLLM 部署方式不支持 Windows (依赖 uvloop 模块),会报错:

vbnet 复制代码
ModuleNotFoundError: No module named 'uvloop'

解决方案:使用 Ollama + GGUF 量化模型

1. 安装 Ollama

Ollama 官网 下载 Windows 版本并安装。

2. 下载 GGUF 量化模型

从 HuggingFace 下载量化版本:

  • Q8_0(约 10GB,精度高):
  • Q4_K_M(约 5.5GB,显存友好): 适合 8GB 显存显卡

⚠️ 网络问题: 如果 HuggingFace 下载失败,可使用镜像站:

arduino 复制代码
https://hf-mirror.com/mradermacher/AutoGLM-Phone-9B-GGUF

将下载的 .gguf 文件放到项目的 models 目录下。

3. 创建 Ollama Modelfile

models 目录下创建 Modelfile 文件:

sql 复制代码
FROM ./AutoGLM-Phone-9B.Q8_0.gguf

PARAMETER temperature 0.1
PARAMETER num_ctx 4096
PARAMETER num_gpu 99
4. 导入模型到 Ollama
powershell 复制代码
cd models
ollama create autoglm-phone-9b -f Modelfile
5. 验证模型
powershell 复制代码
ollama list
# 应显示: autoglm-phone-9b:latest

五、连接 Android 设备

1. 启用开发者模式

在手机上:设置关于手机 → 连续点击「版本号」7 次

2. 启用 USB 调试

设置开发者选项 → 启用以下选项:

  • USB 调试
  • USB 调试(安全设置)(部分机型需要)

⚠️ 重要: 部分机型需要同时开启「USB 调试」和「USB 调试(安全设置)」才能正常点击操作。

3. 连接设备

用 USB 数据线连接手机和电脑(确保数据线支持数据传输,不是仅充电线)。

手机弹出授权提示时,点击「允许」。

4. 验证连接

powershell 复制代码
adb devices
# 应显示:
# List of devices attached
# XXXXXX    device

⚠️ 设备未识别 : 如果显示 unauthorized 或无设备,尝试:

powershell 复制代码
adb kill-server
adb start-server
adb devices

5. 安装 ADB Keyboard

ADB Keyboard 用于文本输入,必须安装:

powershell 复制代码
# 下载 APK
Invoke-WebRequest -Uri "https://github.com/senzhk/ADBKeyBoard/raw/master/ADBKeyboard.apk" -OutFile "ADBKeyboard.apk"

# 安装到手机
adb install ADBKeyboard.apk

安装后,在手机上启用: 设置系统语言和输入法虚拟键盘(或「键盘管理」)→ 启用 ADB Keyboard

六、运行 Phone Agent

启动命令

powershell 复制代码
# 设置编码(解决中文乱码)
$env:PYTHONIOENCODING="utf-8"

# 交互模式
python main.py --base-url http://localhost:11434/v1 --model autoglm-phone-9b

# 直接执行任务
python main.py --base-url http://localhost:11434/v1 --model autoglm-phone-9b "打开小红书搜索美食"

系统检查

启动时会自动检查:

  1. ✅ ADB 安装
  2. ✅ 设备连接
  3. ✅ ADB Keyboard
  4. ✅ 模型 API

全部通过后进入交互模式,输入任务即可。

常见问题

1. vLLM 报错 No module named 'uvloop'

原因 : vLLM 不支持 Windows
解决: 使用 Ollama + GGUF 量化模型(见第四节)

2. 中文乱码 UnicodeEncodeError gbk

解决: 运行前设置环境变量

powershell 复制代码
$env:PYTHONIOENCODING="utf-8"

3. ADB Keyboard 检查失败

解决:

  1. 确认 APK 已安装:adb shell pm list packages | findstr adbkeyboard
  2. 在手机设置中启用 ADB Keyboard 输入法

4. 能打开应用但无法点击

原因 : 部分机型需要额外权限
解决: 在「开发者选项」中同时启用:

  • USB 调试
  • USB 调试(安全设置)

5. 截图黑屏

原因 : 应用显示敏感页面(支付、密码等)
解决: Agent 会自动检测并请求人工接管

6. 显存不足

解决: 使用更小的量化版本:

  • Q4_K_M(约 5.5GB)
  • Q5_K_M(约 6.5GB)

7. HuggingFace 下载失败

解决: 使用国内镜像站

arduino 复制代码
https://hf-mirror.com/mradermacher/AutoGLM-Phone-9B-GGUF

环境变量配置(可选)

可以通过环境变量简化命令:

powershell 复制代码
$env:PHONE_AGENT_BASE_URL = "http://localhost:11434/v1"
$env:PHONE_AGENT_MODEL = "autoglm-phone-9b"
$env:PYTHONIOENCODING = "utf-8"

# 之后直接运行
python main.py

支持的操作

操作 描述
Launch 启动应用
Tap 点击指定坐标
Type 输入文本
Swipe 滑动屏幕
Back 返回上一页
Home 返回桌面
Long Press 长按
Double Tap 双击
Wait 等待页面加载
Take_over 请求人工接管

参考链接

相关推荐
君义_noip2 小时前
信息学奥赛一本通 4017:【GESP2309三级】小杨的储蓄 | 洛谷 B3867 [GESP202309 三级] 小杨的储蓄
c++·算法·gesp·信息学奥赛
高山上有一只小老虎2 小时前
判断是否为数独数组
java·算法
TDengine (老段)2 小时前
TDengine 存储引擎:极速、高压缩、零冗余
android·大数据·数据库·设计模式·时序数据库·tdengine·涛思数据
宝贝儿好2 小时前
【强化学习】第二章:老虎机问题、ε-greedy算法、指数移动平均
人工智能·python·算法
CoovallyAIHub2 小时前
超越深度学习:量子优化如何通过算法与硬件重塑AI
深度学习·算法·计算机视觉
mit6.8243 小时前
模拟|str_dp
算法
前端小L3 小时前
回溯算法专题(九):棋盘上的巅峰对决——经典「N 皇后」问题
数据结构·算法
DR-ZF-3 小时前
20251210 线性最小二乘法迭代拟合(梯度下降)
算法·机器学习·最小二乘法