Open-AutoGLM部署指南:快速搭建多模态手机操作助手
1. 项目概述
AutoGLM-Phone 是智谱AI开源的手机端智能助理框架,基于视觉语言模型构建。它能以多模态方式理解手机屏幕内容,并通过自动化操作帮助用户完成任务。系统通过ADB(Android Debug Bridge)控制设备,结合视觉语言模型进行屏幕感知和智能规划,最终执行操作流程。
1.1 核心功能
- 自然语言交互:用户只需用自然语言描述需求,如"打开小红书搜索美食"
- 多模态理解:能够理解手机屏幕上的文字、图像和布局信息
- 自动化操作:自动解析意图、理解界面、规划并执行操作流程
- 安全机制:内置敏感操作确认功能,支持人工接管验证码等场景
- 远程控制:支持通过WiFi或网络连接设备,实现灵活的远程控制
2. 环境准备
2.1 服务器端要求
- 操作系统:Ubuntu 22.04 LTS
- 显卡:建议显存40G以上(如A40、A100-40G或RTX 4090)
- Docker:需要安装最新版本
- Python:3.10及以上版本
2.2 客户端要求
- 操作系统:Windows 10/11或macOS
- Python:3.10及以上版本
- 安卓设备:Android 7.0+手机或模拟器
- ADB工具:Android Platform Tools
3. 服务器端部署
3.1 Docker环境配置
首先清理可能存在的旧版本Docker:
for pkg in docker.io docker-doc docker-compose docker-compose-v2 podman-docker containerd runc; do sudo apt-get remove $pkg; done安装最新版Docker Engine:
sudo apt-get update sudo apt-get install ca-certificates curl sudo install -m 0755 -d /etc/apt/keyrings sudo curl -fsSL https://download.docker.com/linux/ubuntu/gpg -o /etc/apt/keyrings/docker.asc sudo chmod a+r /etc/apt/keyrings/docker.asc echo \ "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/ubuntu \ $(. /etc/os-release && echo "$VERSION_CODENAME") stable" | \ sudo tee /etc/apt/sources.list.d/docker.list > /dev/null sudo apt-get update sudo apt-get install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin3.2 模型下载
使用ModelScope下载AutoGLM-Phone-9B模型:
pip install modelscope mkdir -p /opt/model modelscope download --model 'ZhipuAI/AutoGLM-Phone-9B' --local_dir '/opt/model'3.3 启动vLLM推理服务
配置NVIDIA Container Toolkit:
curl -fsSL https://nvidia.github.io/libnvidia-container/gpgkey | sudo gpg --dearmor -o /usr/share/keyrings/nvidia-container-toolkit-keyring.gpg \ && curl -s -L https://nvidia.github.io/libnvidia-container/stable/deb/nvidia-container-toolkit.list | \ sed 's#deb https://#deb [signed-by=/usr/share/keyrings/nvidia-container-toolkit-keyring.gpg] https://#g' | \ sudo tee /etc/apt/sources.list.d/nvidia-container-toolkit.list sudo apt-get update sudo apt-get install -y nvidia-container-toolkit sudo nvidia-ctk runtime configure --runtime=docker sudo systemctl restart docker启动vLLM容器:
docker pull vllm/vllm-openai:v0.12.0 docker run -it \ --entrypoint /bin/bash \ --gpus all \ -p 8800:8000 \ --ipc=host \ -v /opt/model:/app/model \ --name autoglm \ vllm/vllm-openai:v0.12.0在容器内启动API服务:
pip install -U transformers --pre python3 -m vllm.entrypoints.openai.api_server \ --served-model-name autoglm-phone-9b \ --allowed-local-media-path / \ --mm-encoder-tp-mode data \ --mm_processor_cache_type shm \ --mm_processor_kwargs "{\"max_pixels\":5000000}" \ --max-model-len 25480 \ --chat-template-content-format string \ --limit-mm-per-prompt "{\"image\":10}" \ --model /app/model \ --port 80004. 客户端配置
4.1 ADB环境准备
Windows系统配置:
- 下载Android Platform Tools
- 解压后添加路径到系统环境变量
- 命令行输入
adb version验证安装
macOS系统配置:
export PATH=${PATH}:~/Downloads/platform-tools4.2 手机端设置
- 开启开发者模式:设置 -> 关于手机 -> 连续点击"版本号"
- 开启USB调试:设置 -> 开发者选项 -> 勾选"USB调试"
- 安装并设置ADB Keyboard为默认输入法
4.3 部署控制端代码
克隆Open-AutoGLM仓库并安装依赖:
git clone https://github.com/zai-org/Open-AutoGLM cd Open-AutoGLM pip install -r requirements.txt pip install -e .5. 连接与使用
5.1 设备连接方式
USB连接:
adb devicesWiFi连接:
adb tcpip 5555 adb connect 192.168.x.x:55555.2 启动AI代理
命令行运行:
python main.py \ --device-id <设备ID或IP:5555> \ --base-url http://<服务器IP>:<端口>/v1 \ --model "autoglm-phone-9b" \ "打开抖音搜索抖音号为:dycwo11nt61d 的博主并关注他!"Python API调用:
from phone_agent.adb import ADBConnection, list_devices conn = ADBConnection() success, message = conn.connect("192.168.1.100:5555") print(f"连接状态: {message}") devices = list_devices() for device in devices: print(f"{device.device_id} - {device.connection_type.value}") success, message = conn.enable_tcpip(5555) ip = conn.get_device_ip() print(f"设备 IP: {ip}") conn.disconnect("192.168.1.100:5555")6. 常见问题解决
6.1 连接问题
- 连接被拒绝:检查服务器防火墙是否放行了对应端口
- ADB掉线:WiFi连接不稳定时,尝试使用USB线连接
- 设备未识别:确保已开启USB调试并安装正确的驱动程序
6.2 模型问题
- 模型无响应:检查vLLM启动参数是否正确,特别是显存和max-model-len设置
- 输出乱码:确认模型路径和名称是否正确
- 推理速度慢:检查服务器GPU利用率,必要时升级硬件配置
6.3 操作问题
- 操作失败:确保ADB Keyboard已设置为默认输入法
- 权限不足:检查开发者选项中的"USB调试(安全设置)"是否开启
- 屏幕锁定:建议关闭手机的锁屏密码以提高稳定性
获取更多AI镜像
想探索更多AI镜像和应用场景?访问 CSDN星图镜像广场,提供丰富的预置镜像,覆盖大模型推理、图像生成、视频生成、模型微调等多个领域,支持一键部署。