2026/6/20 0:30:54
网站建设
项目流程
备案之后怎样把 放到网站上,三亚兼职网站,软件定制需要多少钱,我爱深圳网站设计从GitHub克隆到运行#xff1a;Open-AutoGLM完整部署记录
1. 这不是另一个“AI手机概念”#xff0c;而是一个能真正点开App的智能体
你有没有试过#xff0c;对着手机说一句“帮我订一杯附近星巴克的冰美式”#xff0c;然后它自己打开外卖App、选门店、加冰、下单、付款…从GitHub克隆到运行Open-AutoGLM完整部署记录1. 这不是另一个“AI手机概念”而是一个能真正点开App的智能体你有没有试过对着手机说一句“帮我订一杯附近星巴克的冰美式”然后它自己打开外卖App、选门店、加冰、下单、付款听起来像科幻片——但Open-AutoGLM让这件事离现实只差一次git clone。这不是演示视频里的剪辑效果也不是限定场景的Demo。它是智谱AI开源的Phone Agent框架一个能在真实安卓设备上完成端到端操作的AI智能体看懂屏幕、理解意图、规划动作、点击滑动、输入文字、甚至在遇到验证码时主动喊你“来接管一下”。它不依赖云端截图上传人工标注反馈的慢循环而是通过ADB直连设备每秒截屏、实时推理、即时执行——整个过程像一个熟练的真人手指在操作只是更快、更准、不知疲倦。本文不讲论文、不画架构图只做一件事带你从零开始把Open-AutoGLM跑起来让它第一次为你打开抖音、搜索博主、完成关注。每一步都经过实测所有命令可直接复制粘贴所有坑我都替你踩过了。2. 环境准备三台设备四个确认项别被“AI”二字吓住——Open-AutoGLM对本地电脑的要求极低。它本身不训练模型也不跑大参数视觉编码器真正的“大脑”在服务端你可以用智谱BigModel API也可以自己搭vLLM。你的本地电脑只负责“眼睛”截屏、“手”ADB指令和“传话筒”转发请求。我们先理清三类设备角色你的本地电脑Windows/macOS/Linux运行控制端代码连接手机发送指令你的安卓手机Android 7.0被操控的“执行终端”需开启调试权限模型服务端云服务器 or 本地GPU机器提供autoglm-phone-9b推理能力返回操作决策2.1 本地电脑装好这四样就齐了Python 3.10推荐用pyenv或Miniconda管理环境避免污染系统Python。验证命令python --version # 应输出 3.10.x 或更高ADB 工具必须下载地址https://developer.android.com/tools/releases/platform-tools解压后将platform-tools/目录路径加入系统PATHWindows系统属性 → 高级 → 环境变量 → 系统变量 → Path → 新建填入解压路径macOS/Linux在~/.zshrc或~/.bashrc中添加export PATH$PATH:/path/to/platform-tools验证终端输入adb version应显示版本号如Android Debug Bridge version 1.0.41Git用于克隆仓库。Mac用xcode-select --installWindows下载Git for Windows一个能联网的浏览器后面要访问智谱BigModel控制台申请API Key或下载ADB Keyboard APK——没错这个环节真得手动点几下。小提醒不要用WSL或Docker Desktop内置的Linux子系统跑ADB控制端。ADB需要直接访问USB设备驱动WSL2对USB支持不稳定极易出现device unauthorized或no devices/emulators found。老老实实用Windows CMD、PowerShell或macOS Terminal。2.2 安卓手机五步开通“被操控权”这是最容易卡住的环节。很多用户卡在“adb devices 显示 offline”或“授权弹窗不出现”。按顺序操作一步都不能跳开启开发者模式设置 → 关于手机 → 连续点击“版本号”7次不是5次不是10次是7次直到提示“您已处于开发者模式”。开启USB调试返回设置主界面 → 系统 → 开发者选项 → 找到并开启USB调试部分华为/小米/OPPO机型还需额外开启“USB调试安全设置”“USB安装”“USB调试认证”若弹出RSA密钥确认框请勾选“始终允许”并点确定用原装USB线连接电脑充电宝线、蓝牙耳机线、Type-C转Lightning线——统统不行。必须是支持数据传输的原装线。插上后手机通知栏应弹出“USB用于文件传输”或“传输文件”点击改为“文件传输MTP”。安装 ADB Keyboard关键Open-AutoGLM所有文本输入搜索关键词、账号密码都靠它完成。下载地址https://github.com/senzhk/ADBKeyBoard/releases找最新版ADBKeyboard_v1.5.apk手机安装该APK需开启“未知来源应用安装”设置 → 系统 → 语言与输入法 → 虚拟键盘 → 勾选ADB Keyboard返回上一级 → 默认键盘 → 切换为ADB Keyboard最后验证adb devices必须返回device$ adb devices List of devices attached 8A2X123456789ABC device如果显示unauthorized请检查第2步是否漏掉“始终允许”如果显示offline请重插USB线并重启手机ADBadb kill-server adb start-server。3. 克隆、安装、配置三行命令走完前端部署现在你的电脑和手机已建立信任关系。接下来把控制端代码拉下来装好依赖就等发号施令。3.1 克隆仓库并进入目录git clone https://github.com/zai-org/Open-AutoGLM cd Open-AutoGLM注意仓库名是Open-AutoGLM不是AutoGLM或phone-agent。拼错会404。3.2 安装Python依赖两个pip命令缺一不可pip install -r requirements.txt pip install -e .requirements.txt包含运行时依赖adbutils,Pillow,requests等-e .表示以“开发模式”安装本项目让python main.py能直接导入phone_agent模块验证安装运行python -c import phone_agent; print(OK)无报错即成功。3.3 配置模型服务地址两种选择推荐第一种Open-AutoGLM本身不包含大模型它需要调用一个符合OpenAI API格式的LLM服务。你有两个选择方案优点缺点推荐指数A. 智谱BigModel API推荐新手无需GPU免部署5分钟可用中文优化好需注册账号、申请API Key、有调用额度限制B. 自行部署vLLM适合有GPU用户完全私有响应快可定制模型需NVIDIA GPU显存≥16GB下载20GB模型配置复杂▶ 方案A用智谱BigModel3分钟开通访问 https://bigmodel.cn/ → 注册/登录进入控制台 → API Key → 创建新Key名称随意如open-autoglm-dev复制Key形如sk-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx运行命令时加上这两个参数即可--base-url https://open.bigmodel.cn/api/paas/v4 \ --apikey sk-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx \ --model autoglm-phone模型名注意BigModel平台用的是autoglm-phone非autoglm-phone-9b这是官方API层统一命名。▶ 方案B自建vLLM服务进阶用户如果你有A10/A100/V100等显卡想完全离线运行按requirements.txt中For Model Deployment章节安装vLLMpip install vllm下载模型约20GBhuggingface-cli download zai-org/AutoGLM-Phone-9B --local-dir ./models/AutoGLM-Phone-9B启动服务关键参数已精简实测可用python3 -m vllm.entrypoints.openai.api_server \ --model ./models/AutoGLM-Phone-9B \ --served-model-name autoglm-phone-9b \ --port 8000 \ --max-model-len 25480 \ --limit-mm-per-prompt {image:10} \ --mm-encoder-tp-mode data \ --chat-template-content-format string启动成功后访问http://localhost:8000/v1/models应返回JSON含autoglm-phone-9b。4. 第一次运行让AI帮你关注一个抖音博主万事俱备。现在给它下达第一条自然语言指令——我们选一个有明确结果、易验证、且带输入动作的典型任务“打开抖音搜索抖音号为dycwo11nt61d 的博主并关注他”4.1 获取设备ID先确认你的设备在线adb devices # 输出类似8A2X123456789ABC device复制前面那串字母数字组合如8A2X123456789ABC这就是你的--device-id。4.2 执行命令以BigModel API为例在Open-AutoGLM/目录下运行python main.py \ --device-id 8A2X123456789ABC \ --base-url https://open.bigmodel.cn/api/paas/v4 \ --apikey sk-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx \ --model autoglm-phone \ 打开抖音搜索抖音号为dycwo11nt61d 的博主并关注他命令拆解--device-id告诉Agent“操控哪台手机”--base-url--apikey告诉Agent“大脑在哪怎么进门”最后字符串就是你对AI说的人话不需要加引号外的任何修饰词越像日常说话越好4.3 观察执行过程Verbose模式默认开启你会看到终端滚动输出类似这样[INFO] Connected to device: 8A2X123456789ABC [INFO] Capturing screen... (saved to /tmp/screen.png) [INFO] Sending request to LLM... [INFO] LLM response: {thought:用户想关注特定抖音号。首先需要打开抖音App。,action:LAUNCH_APP,app_name:com.ss.android.ugc.aweme} [INFO] Executing LAUNCH_APP: com.ss.android.ugc.aweme [INFO] Capturing screen... (saved to /tmp/screen_1.png) [INFO] LLM response: {thought:抖音已启动首页有搜索框。下一步点击搜索框。,action:TAP,x:540,y:120} [INFO] Executing TAP at (540, 120) ... [INFO] LLM response: {thought:已输入抖音号点击搜索按钮。,action:TAP,x:1000,y:120} [INFO] LLM response: {thought:搜索结果页出现目标博主。点击进入其主页。,action:TAP,x:540,y:420} [INFO] LLM response: {thought:博主主页有‘关注’按钮。点击关注。,action:TAP,x:540,y:800} [INFO] Task completed successfully.成功标志手机屏幕自动亮起 → 抖音App启动 → 顶部搜索框被点击 → 键盘弹出 → 输入dycwo11nt61d→ 点击搜索 → 进入博主主页 → 点击“关注”按钮终端最后一行显示Task completed successfully.如果中途卡住比如停在“等待搜索框出现”大概率是手机分辨率非1080pAgent默认适配1080x1920高刷屏或挖孔屏需微调坐标抖音版本过新UI元素位置偏移可临时切回旧版APKADB Keyboard未设为默认输入法检查手机设置5. 进阶用法不只是命令行还能嵌入你的脚本main.py是交互入口但Open-AutoGLM真正强大的地方在于它的Python API设计——你可以把它当成一个函数库无缝集成到自己的自动化流程中。5.1 一行代码封装Agentfrom phone_agent import PhoneAgent from phone_agent.model import ModelConfig # 配置模型服务 model_config ModelConfig( base_urlhttps://open.bigmodel.cn/api/paas/v4, model_nameautoglm-phone, api_keysk-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx ) # 初始化Agent自动连接设备 agent PhoneAgent(model_configmodel_config, device_id8A2X123456789ABC) # 直接调用返回结构化结果 result agent.run(打开小红书搜美食) print(f状态: {result.status}) print(f耗时: {result.duration:.1f}s) print(f执行步骤: {len(result.steps)} 步)5.2 处理敏感操作当AI要输密码时让它“喊你一声”有些任务涉及隐私比如登录微信。Open-AutoGLM内置了on_human_intervention回调机制def ask_for_permission(task_desc: str, screenshot_path: str) - bool: print(f AI需要人工介入{task_desc}) print(f 当前屏幕截图已保存至{screenshot_path}) print( 请手动操作完成后输入 y 继续n 中止...) return input().strip().lower() y agent PhoneAgent( model_configmodel_config, device_id8A2X123456789ABC, on_human_interventionask_for_permission # 注册回调 ) result agent.run(登录微信账号)此时当Agent识别到“密码输入框”或“短信验证码页面”会暂停执行、保存当前截图、打印提示并等待你输入y才继续——安全与自动化不再二选一。5.3 批量任务写个for循环让AI帮你刷10个Apptasks [ 打开美团搜火锅, 打开淘宝搜无线耳机, 打开高德地图查公司路线, 打开网易云音乐播周杰伦 ] for i, task in enumerate(tasks, 1): print(f\n--- 任务 {i}/{len(tasks)}: {task} ---) result agent.run(task) if result.status success: print(f 完成耗时 {result.duration:.1f}s) else: print(f❌ 失败{result.error}) time.sleep(3) # 每次任务后休息3秒避免过热6. 故障排查90%的问题都在这五个检查点部署中最常遇到的错误我按发生频率排序并给出一句话解决方案现象根本原因一句话解决adb devices显示unauthorized手机未点“允许USB调试”弹窗拔掉USB线→重启手机→重新连接→立刻在手机上点“允许”终端报错ConnectionRefusedError: [Errno 111] Connection refused模型服务没起来或URL/端口填错检查vLLM是否在运行用浏览器访问http://localhost:8000/v1/models看能否返回JSONAI一直说“正在等待搜索框”但手机没反应ADB Keyboard未启用为默认输入法设置 → 语言与输入法 → 默认键盘 → 切换为ADB Keyboard执行到“点击”步骤就卡住屏幕无变化设备分辨率非1080x1920坐标偏移在config.yaml中修改screen_width和screen_height为你的手机实际分辨率BigModel API返回401 UnauthorizedAPI Key过期或复制错误重新登录bigmodel.cn创建新Key用鼠标双击复制勿手打终极技巧加--verbose参数看详细日志加--debug保存每一步截图到./debug/目录问题定位快10倍。7. 总结你刚刚部署的是一个“手机操作系统级”的AI回看这一路你配置了ADB让电脑认出了手机你装好了控制端让Python能截屏、能发指令你连上了模型服务让AI能“看见”屏幕、“听懂”人话、“想出”下一步最后你敲下一行命令看着手机自己打开App、输入文字、点击关注——整个过程没有一行Selenium脚本没有一个XPath定位只有自然语言。Open-AutoGLM的价值不在于它多快或多准而在于它把AI从“回答问题”的层面拉到了“执行任务”的层面。它不替代你思考而是成为你手指和眼睛的延伸。下一步你可以用它批量测试App兼容性自动遍历所有Tab搭配定时任务每天早8点自动打开健康App打卡集成到企业IT系统新员工入职时自动配置邮箱、钉钉、内部Wiki它不是一个玩具而是一把钥匙——打开了“AI原生手机应用”的第一道门。--- **获取更多AI镜像** 想探索更多AI镜像和应用场景访问 [CSDN星图镜像广场](https://ai.csdn.net/?utm_sourcemirror_blog_end)提供丰富的预置镜像覆盖大模型推理、图像生成、视频生成、模型微调等多个领域支持一键部署。