整合下载,避开国外网站(已整合,方便后续操作)
## 📦 下载方式🔒 隐私内容
此内容需要登录并回答问题才能查看。
本教程合并文件下载后分为Windows和Mac两个版本可以放心食用
解压之后文件:  ## 环境准备 1. **安装python 和 VS code** 建议使用 Python 3.10 及以上版本。 教程提供版本为3.12.0版本可以放心*“食用”* ----- 2. **ADB (Android Debug Bridge)** 配置adb环境⭐⭐⭐ |【系统通过 ADB(Android Debug Bridge)来控制设备】 2. 配置环境变量 - MacOS 配置方法:在 `Terminal` 或者任何命令行工具里 ```bash # 假设解压后的目录为 ~/Downloads/platform-tools。如果不是请自行调整命令。 export PATH=${PATH}:~/Downloads/platform-tools ``` - Windows 配置方法:可参考 [第三方教程](https://blog.csdn.net/x2584179909/article/details/108319973) (第三方教程同时也由mac的教程)进行配置。 也可参照本视频: ----- 3. Android 7.0+ 的设备或模拟器,并启用 `开发者模式` 和 `USB 调试` 1.开发者模式启用:通常启用方法是,找到 `设置-关于手机-版本号` 然后连续快速点击 10 次左右,直到弹出弹窗显示“开发者模式已启用”。不同手机会有些许差别,如果找不到,可以上网搜索一下教程。 2.USB 调试启用:启用开发者模式之后,会出现 `设置-开发者选项-USB 调试`,勾选启用 3.部分机型在设置开发者选项以后, 可能需要重启设备才能生效. 可以测试一下: 将手机用USB数据线连接到电脑后, `adb devices` 查看是否有设备信息, 如果没有说明连接失败. 也可参照本视频:(示例华为手机) ----- ## 部署准备工作 ### 1. 注册智谱 BigModel 或者 ModelScope(魔搭社区) **1. 智谱 BigModel** - 文档: https://docs.bigmodel.cn/cn/api/introduction - `--base-url`: `https://open.bigmodel.cn/api/paas/v4` - `--model`: `autoglm-phone` - `--apikey`: 在智谱平台申请你的 API Key **2. ModelScope(魔搭社区)** - 文档: https://modelscope.cn/models/ZhipuAI/AutoGLM-Phone-9B - `--base-url`: `https://api-inference.modelscope.cn/v1` - `--model`: `ZhipuAI/AutoGLM-Phone-9B` - `--apikey`: 在 ModelScope 平台申请你的 API Key 具体注册视频:(智谱 BigModel) ### 2. 安装依赖 ----- *以下的操作视频* ----- 用VS code 打开Open-AutoGLM-main文件夹 新建终端输入以下内容: 1. **打开终端**:在 VS Code 中按 `` Ctrl+` ``(反引号键)或点击“终端”菜单 → “新建终端” 2. **创建虚拟环境**: (已经配备有虚拟环境了,可以直接跳过这一步) ```powershell # Windows python -m venv venv # Linux/Mac python3 -m venv venv ``` 这会在当前项目目录下创建一个名为 `venv` 的虚拟环境文件夹 3. **激活虚拟环境**: ```powershell # Windows (PowerShell) .\venv\Scripts\Activate.ps1 # Windows (CMD) venv\Scripts\activate.bat # Linux/Mac source venv/bin/activate ``` 激活后,终端提示符前会出现 `(venv)` 标识 4. **安装依赖**: (加载虚拟环境后,可以跳过这一步) ```powershell pip install -r requirements.txt pip install -e . ``` ### 3. 配置 ADB 确认 **USB数据线具有数据传输功能**, 而不是仅有充电功能 确保已安装 ADB 并使用 **USB数据线** 连接设备: ```bash # 检查已连接的设备 adb devices # 输出结果应显示你的设备,如: # List of devices attached # emulator-5554 device ``` ### 4. 安装 ADB Keyboard(用于文本输入) 下载 [安装包](https://github.com/senzhk/ADBKeyBoard/blob/master/ADBKeyboard.apk) 并在对应的安卓设备中进行安装。(下载整合包无需下载) 使用adb install ADBKeyboard.apk 注意,安装完成后还需要到 `设置-输入法` 或者 `设置-键盘列表` 中启用 `ADB Keyboard` 才能生效(或使用命令`adb shell ime enable com.android.adbkeyboard/.AdbIME`[How-to-use](https://github.com/senzhk/ADBKeyBoard/blob/master/README.md#how-to-use)) ### 5.运行main_ZP.py 选择上方运行 以调试模式运行 等待检测完毕 填入申请的Apikey就可以愉快的使用了!!!😀 **使用原生的main.py** ```bash # 使用智谱 BigModel python main.py --base-url https://open.bigmodel.cn/api/paas/v4 --model "autoglm-phone" --apikey "your-bigmodel-api-key" "打开美团搜索附近的火锅店" # 使用 ModelScope python main.py --base-url https://api-inference.modelscope.cn/v1 --model "ZhipuAI/AutoGLM-Phone-9B" --apikey "your-modelscope-api-key" "打开美团搜索附近的火锅店" ``` ----- # 常见问题 我们列举了一些常见的问题,以及对应的解决方案: ### 设备未找到 尝试通过重启 ADB 服务来解决: ```bash adb kill-server adb start-server adb devices ``` 如果仍然无法识别,请检查: 1. USB 调试是否已开启 2. 数据线是否支持数据传输(部分数据线仅支持充电) 3. 手机上弹出的授权框是否已点击「允许」 4. 尝试更换 USB 接口或数据线 ### 能打开应用,但无法点击 部分机型需要同时开启两个调试选项才能正常使用: - **USB 调试** - **USB 调试(安全设置)** 请在 `设置 → 开发者选项` 中检查这两个选项是否都已启用。 ### 文本输入不工作 1. 确保设备已安装 ADB Keyboard 2. 在设置 > 系统 > 语言和输入法 > 虚拟键盘 中启用 3. Agent 会在需要输入时自动切换到 ADB Keyboard ### 截图失败(黑屏) 这通常意味着应用正在显示敏感页面(支付、密码、银行类应用)。Agent 会自动检测并请求人工接管。 ### windows 编码异常问题 报错信息形如 `UnicodeEncodeError gbk code` 解决办法: 在运行代码的命令前面加上环境变量: `PYTHONIOENCODING=utf-8` ### 交互模式非TTY环境无法使用 报错形如: `EOF when reading a line` 解决办法: 使用非交互模式直接指定任务, 或者切换到 TTY 模式的终端应用. ----- # 其他扩展(无线调试 和 部署本地模型)
# 配置远程调试 ###### 在手机端开启无线调试 确保手机和电脑在同一个WiFi中,如图所示  #### 在电脑端使用标准 ADB 命令 ```bash # 通过 WiFi 连接, 改成手机显示的 IP 地址和端口 adb connect 192.168.1.100:5555 # 验证连接 adb devices # 应显示:192.168.1.100:5555 device ``` ### 设备管理命令 ```bash # 列出所有已连接设备 adb devices # 连接远程设备 adb connect 192.168.1.100:5555 # 断开指定设备 adb disconnect 192.168.1.100:5555 # 指定设备执行任务 python main.py --device-id 192.168.1.100:5555 --base-url http://localhost:8000/v1 --model "autoglm-phone-9b" "打开抖音刷视频" ``` ### Python API 远程连接 ```python 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}") # 在 USB 设备上启用 TCP/IP success, message = conn.enable_tcpip(5555) ip = conn.get_device_ip() print(f"设备 IP: {ip}") # 断开连接 conn.disconnect("192.168.1.100:5555") ``` ### 远程连接问题排查 **连接被拒绝:** - 确保设备和电脑在同一网络 - 检查防火墙是否阻止 5555 端口 - 确认已启用 TCP/IP 模式:`adb tcpip 5555` **连接断开:** - WiFi 可能断开了,使用 `--connect` 重新连接 - 部分设备重启后会禁用 TCP/IP,需要通过 USB 重新启用 **多设备:** - 使用 `--device-id` 指定要使用的设备 - 或使用 `--list-devices` 查看所有已连接设备 # 自行部署模型 如果你希望在本地或自己的服务器上部署模型: 1. 按照 `requirements.txt` 中 `For Model Deployment` 章节自行安装推理引擎框架。 对于SGLang, 除了使用pip安装,你也可以使用官方docker: > > ```shell > docker pull lmsysorg/sglang:v0.5.6.post1 > ``` > > 进入容器,执行 > > ``` > pip install nvidia-cudnn-cu12==9.16.0.29 > ``` 对于 vLLM,除了使用pip 安装,你也可以使用官方docker: > > ```shell > docker pull vllm/vllm-openai:v0.12.0 > ``` > > 进入容器,执行 > > ``` > pip install -U transformers --pre > ``` **注意**: 上述步骤出现的关于 transformers 的依赖冲突可以忽略。 1. 在对应容器或者实体机中(非容器安装)下载模型,通过 SGlang / vLLM 启动,得到 OpenAI 格式服务。这里提供一个 vLLM部署方案,请严格遵循我们提供的启动参数: - vLLM: ```shell 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 zai-org/AutoGLM-Phone-9B \ --port 8000 ``` - SGLang: ```shell python3 -m sglang.launch_server --model-path zai-org/AutoGLM-Phone-9B \ --served-model-name autoglm-phone-9b \ --context-length 25480 \ --mm-enable-dp-encoder \ --mm-process-config '{"image":{"max_pixels":5000000}}' \ --port 8000 ``` - 该模型结构与 `GLM-4.1V-9B-Thinking` 相同, 关于模型部署的详细内容,你也以查看 [GLM-V](https://github.com/zai-org/GLM-V) 获取模型部署和使用指南。 - 运行成功后,将可以通过 `http://localhost:8000/v1` 访问模型服务。 如果您在远程服务器部署模型, 使用该服务器的IP访问模型. ### 4. 检查模型部署 模型服务启动后,可以使用检查脚本验证部署是否成功: ```bash python scripts/check_deployment_cn.py --base-url http://你的IP:你的端口/v1 --model 模型名称 ``` 脚本将发送测试请求并展示模型的推理结果,你可以根据输出判断模型部署是否正常工作。 基于给定的任务, 预期输出如下。**如果思维链长度很短, 或者出现了乱码, 很可能是模型部署失败**, 请仔细检查文档要求的配置和依赖。 ```
评论 0
暂无评论,快来发表第一条评论吧!