如何用Open-AutoGLM自动填写表单?完整流程解析
你是否曾为反复填写同一张注册表单而烦躁?是否在多个App间切换时,被重复的登录、收货地址、身份信息录入耗尽耐心?现在,这些琐碎操作可以交给AI——Open-AutoGLM不是简单的“点击自动化”,而是一个真正理解屏幕、读懂界面、能思考步骤的手机端AI Agent。它能把一句“帮我填完这个电商APP的收货地址页”变成一连串精准的视觉识别、字段定位、内容输入与提交动作。本文不讲抽象概念,不堆技术参数,只带你从零开始,亲手跑通一个真实表单自动填写任务:在某主流电商App中,自动填写姓名、手机号、详细地址三项核心字段并完成保存。全程无需写一行UI脚本,不用学XPath,只要你会说人话。
1. Open-AutoGLM是什么:一个会“看”会“想”会“做”的手机AI助理
Open-AutoGLM不是传统意义上的RPA工具,它的核心能力来自三重融合:视觉感知 + 语言理解 + 动作规划。你可以把它想象成一个坐在你手机旁的数字助手——它先用“眼睛”(多模态视觉模型)实时截图分析当前屏幕,识别出哪个是姓名输入框、哪个是手机号键盘、哪个按钮是“保存”;再用“大脑”(大语言模型)理解你的指令,比如“把我的常用地址填进去”,它能关联到你之前在通讯录或系统设置里存的地址;最后用“手”(ADB指令)精准点击、滑动、输入文字,一步步执行。整个过程不是预设死的流程,而是根据界面动态生成的决策链。
- 它不依赖App源码或内部API:所有操作基于屏幕像素和UI元素位置,适配任何已安装的安卓应用。
- 它能处理动态变化的界面:比如验证码弹窗出现时,它会主动暂停并提示你人工输入,而不是盲目点击导致失败。
- 它真正理解“表单”概念:不是机械地按顺序点第1个、第2个、第3个框,而是识别出“这是收货人姓名字段”“这是联系电话字段”,再匹配你提供的数据。
这种能力,让自动填写表单从“固定路径点击”升级为“语义化任务执行”。你告诉它目标,它自己规划路径。
2. 环境准备:三步搞定硬件与基础软件
别被“AI”“多模态”吓住,实际准备比装一个普通安卓开发环境还简单。整个过程控制在15分钟内,且每一步都有明确验证方式。
2.1 手机端:开启“被操控”的权限
这一步是所有自动化的前提,必须手动完成,但只需一次。
- 开启开发者模式:进入手机“设置” → “关于手机” → 连续点击“版本号”7次,直到屏幕弹出“您已处于开发者模式”。
- 启用USB调试:返回“设置” → “系统与更新” → “开发者选项” → 打开“USB调试”。部分华为/小米机型还需额外开启“USB调试(安全设置)”。
- 安装ADB Keyboard(关键!):这是实现自动输入的核心。前往GitHub Releases下载最新版
ADBKeyboard.apk,用手机浏览器打开安装。安装后,进入“设置” → “系统与更新” → “语言与输入法” → “当前输入法”,将默认输入法切换为“ADB Keyboard”。
验证方法:用USB线连接手机与电脑,在电脑命令行输入
adb devices。如果看到一串设备ID后跟着device字样,说明连接成功。若显示unauthorized,请在手机弹出的授权窗口中点击“允许”。
2.2 电脑端:配置ADB与Python环境
你不需要成为Linux高手,Windows和macOS用户都能轻松完成。
安装ADB工具:访问Android SDK Platform-Tools官网,下载对应系统的压缩包,解压到一个无中文、无空格的路径,例如
C:\adb或~/adb。配置环境变量(让系统认得adb命令):
- Windows:右键“此电脑” → “属性” → “高级系统设置” → “环境变量” → 在“系统变量”中找到
Path→ “编辑” → “新建” → 粘贴你解压ADB的完整路径(如C:\adb)→ 确定。然后打开新命令行窗口,输入adb version,看到版本号即成功。 - macOS:打开终端,输入
nano ~/.zshrc,在文件末尾添加一行export PATH=$PATH:/your/path/to/adb(将/your/path/to/adb替换为你真实的路径),按Ctrl+O保存,Ctrl+X退出,再输入source ~/.zshrc生效。最后运行adb version验证。
- Windows:右键“此电脑” → “属性” → “高级系统设置” → “环境变量” → 在“系统变量”中找到
安装Python 3.10+:前往python.org下载安装。安装时务必勾选“Add Python to PATH”。安装完成后,命令行输入
python --version,确认输出为Python 3.10.x或更高版本。
3. 部署Open-AutoGLM:两种方式,推荐新手选第一种
Open-AutoGLM本身是控制端代码,真正的“大脑”(AI模型)需要单独部署。这里提供两条清晰路径,新手强烈推荐方案A,零显卡也能跑。
3.1 方案A:使用云端模型服务(免部署,5分钟启动)
这是最省心的方式。你不需要GPU服务器,也不用下载20GB模型文件,直接调用智谱AI官方提供的在线API。
获取API Key:访问智谱AI开放平台,注册账号,进入“API密钥管理”,创建一个新的Key。
克隆并安装控制端:
# 克隆仓库 git clone https://github.com/zai-org/Open-AutoGLM cd Open-AutoGLM # 创建虚拟环境(推荐,避免污染主环境) python -m venv venv source venv/bin/activate # macOS/Linux # venv\Scripts\activate # Windows # 安装依赖 pip install -r requirements.txt pip install -e .一条命令启动表单填写:
python main.py \ --device-id "your_device_id" \ --base-url https://open.bigmodel.cn/api/paas/v4 \ --model "autoglm-phone" \ --apikey "your_api_key_here" \ "打开京东APP,进入我的地址簿,新增一个收货地址,姓名填张三,手机号填13800138000,详细地址填北京市朝阳区建国路88号SOHO现代城A座1001室,然后点击保存"将
your_device_id替换为adb devices命令输出的ID(如ZY223456789),your_api_key_here替换为你在智谱平台获取的Key。执行后,你会亲眼看到手机屏幕自动亮起、启动京东、导航到地址页、逐项填写并点击保存——整个过程约30-60秒。
3.2 方案B:本地部署模型(高性能,需NVIDIA GPU)
如果你有RTX 3090或更高性能的显卡,追求更低延迟和完全私有化,可选择本地部署。核心是用vLLM启动一个OpenAI兼容的API服务。
安装vLLM(需CUDA环境):
pip install vllm下载并启动模型(约20GB,需确保磁盘空间充足):
# 下载模型(首次运行会自动下载) python3 -m vllm.entrypoints.openai.api_server \ --served-model-name autoglm-phone-9b \ --model zai-org/AutoGLM-Phone-9B \ --port 8000 \ --max-model-len 25480 \ --limit-mm-per-prompt "{\"image\":10}" \ --mm-encoder-tp-mode data \ --allowed-local-media-path /启动成功后,服务将监听
http://localhost:8000/v1。调用本地模型:
python main.py \ --device-id "your_device_id" \ --base-url http://localhost:8000/v1 \ --model "autoglm-phone-9b" \ "打开淘宝APP,填写收货地址表单..."
4. 实战:自动填写表单的完整流程与关键技巧
现在,我们聚焦最核心的场景——表单填写。通过一个真实案例,拆解Open-AutoGLM如何将自然语言转化为精准操作。
4.1 指令设计:用“人话”触发AI的“理解力”
AI不是魔法,它依赖清晰的指令。填写表单时,避免模糊表述,遵循“应用名 + 页面路径 + 字段名 + 值”的结构:
- ❌ 差:“填地址”
- 好:“打开拼多多APP,进入个人中心,点击收货地址,点击新增地址,姓名栏输入李四,电话栏输入13900139000,地址栏输入上海市浦东新区张江路100号,点击右上角保存按钮”
为什么这样写?
Open-AutoGLM的视觉模型会将“姓名栏”“电话栏”等作为关键UI元素进行识别,而“点击右上角保存按钮”则利用了其对屏幕布局的空间理解(右上角是常见操作按钮位置)。指令越具体,AI规划的路径就越短、越可靠。
4.2 执行过程:AI的“思考”与“行动”实录
当你运行上述命令后,控制台会实时输出AI的内部决策流(Verbose模式下)。这是一个绝佳的学习机会:
[INFO] 当前屏幕已捕获,正在分析... [THINK] 屏幕上显示的是拼多多首页。用户指令要求进入个人中心,我需要找到“我的”图标。 [ACTION] 点击坐标 (180, 2200) // 底部导航栏“我的”Tab [INFO] 屏幕已切换至个人中心页。 [THINK] 用户要进入收货地址,我需要找到“收货地址”文字或相关图标。 [ACTION] 点击文本 "收货地址" [INFO] 屏幕已切换至地址列表页。 [THINK] 用户要求新增地址,我需要找到“新增地址”按钮。 [ACTION] 点击文本 "新增地址" [INFO] 屏幕已切换至新建地址表单页。 [THINK] 表单包含多个输入框。我需要依次定位:姓名、电话、详细地址。根据OCR结果,“姓名”标签在左上角,“电话”标签在其下方。 [ACTION] 点击姓名输入框区域 [ACTION] 输入文本 "李四" [ACTION] 点击电话输入框区域 [ACTION] 输入文本 "13900139000" [ACTION] 点击详细地址输入框区域 [ACTION] 输入文本 "上海市浦东新区张江路100号" [ACTION] 点击右上角“保存”按钮 [SUCCESS] 任务完成!这段日志揭示了其强大之处:它不是靠坐标硬编码,而是结合OCR文字识别(找“姓名”“电话”标签)和视觉定位(找“右上角”按钮)双重判断,具备极强的鲁棒性。
4.3 处理复杂表单:跳过验证码与人工接管
真实世界总有意外。当表单提交前弹出短信验证码或图形验证码时,Open-AutoGLM会智能暂停:
- 自动检测:AI识别出验证码弹窗后,会停止执行,并在控制台输出
[WAITING] 检测到验证码弹窗,请手动输入后按回车继续... - 无缝接管:你只需在手机上手动输入验证码,然后回到电脑命令行按一下回车,AI便会从断点继续执行后续步骤。
- 安全边界:所有涉及支付、银行、隐私授权的操作,系统都会强制弹出确认提示,绝不会在未经许可的情况下执行敏感动作。
5. 进阶技巧:让表单填写更智能、更高效
掌握了基础流程,你可以用几个小技巧大幅提升效率和成功率。
5.1 数据复用:告别重复输入
你不必每次都在指令里写死“张三”“13800138000”。Open-AutoGLM支持读取外部JSON配置:
创建
address.json文件:{ "name": "王五", "phone": "15900159000", "address": "广州市天河区体育西路103号维多利广场A座2002室" }在Python API中调用:
import json from phone_agent import PhoneAgent from phone_agent.model import ModelConfig # 读取地址数据 with open("address.json", "r") as f: addr_data = json.load(f) model_config = ModelConfig( base_url="https://open.bigmodel.cn/api/paas/v4", model_name="autoglm-phone", api_key="your_key" ) agent = PhoneAgent(model_config=model_config) # 构建动态指令 instruction = f"打开唯品会APP,填写收货地址:姓名{addr_data['name']},电话{addr_data['phone']},地址{addr_data['address']},然后保存" result = agent.run(instruction) print(result)
5.2 批量任务:一次指令,填写多张表单
利用其“多任务规划”能力,你可以让AI连续完成多个独立表单:
- 指令示例:
"依次完成以下操作:1. 在美团APP中填写公司地址;2. 在饿了么APP中填写家庭地址;3. 在盒马APP中填写备用地址。所有地址均使用JSON文件中的数据。"
AI会自动在不同App间切换,复用同一份地址数据,极大提升批量注册、多平台入驻等场景的效率。
5.3 故障排查:当AI“卡住”时怎么办
问题:手机黑屏或无响应
→ 检查USB线是否为数据线(很多充电线不支持数据传输),更换接口或线缆。问题:adb devices 显示 offline
→ 在手机上撤销USB调试授权,重新连接,再次授权。问题:AI识别错字段,填到错误位置
→ 在指令中增加更精确的上下文,例如:“在‘收货人’标题下方的第一个输入框,输入姓名”。问题:输入中文乱码或无法输入
→ 确认手机已正确安装并启用了ADB Keyboard,且未被其他输入法覆盖。
6. 总结:从“手动填写”到“一句话交付”的范式转变
回顾整个流程,Open-AutoGLM带来的不是简单的效率提升,而是一种交互范式的重构。它消除了人与机器之间那层“操作语法”的隔阂——你不再需要学习“如何点击”“如何滑动”,只需要清晰地表达“我要什么”。填写一张表单,从过去需要3分钟的手动操作,缩短为10秒的语音指令;从需要记住每个App的路径,变为一句通用的自然语言。
更重要的是,它的能力是可组合、可扩展的。今天你用它填地址,明天就能让它“在10个电商App中同步更新我的发票抬头”,后天还能让它“监控物流页面,一旦签收就自动截图发微信给老板”。这种基于意图的自动化,正是AI Agent区别于传统脚本的本质。
现在,你已经拥有了这个能力。下一步,就是打开你的手机,连接电脑,输入那句“帮我填完这个表单”,然后,看着AI替你完成它。
获取更多AI镜像
想探索更多AI镜像和应用场景?访问 CSDN星图镜像广场,提供丰富的预置镜像,覆盖大模型推理、图像生成、视频生成、模型微调等多个领域,支持一键部署。