从零搭建使用 Open-AutoGML 搜索附近的美食

1. 环境配置

下载项目库:github.com/zai-org/Ope... , 使用 Open-AutoGML 需要安装以下开发环境:

  • python 环境
  • ADB 调试工具
  • ADB Keyboard(用于文本输入)
  • 模型部署(可以使用 BigModel 三方模型)

1.1. Python 环境搭建

检查 python 环境。建议使用 Python 3.10 及以上版本。

复制代码
python3 -V

这里建议使用虚拟环境创建对应的环境。可以使用 Poetry 或 Python 自带的虚拟环境管理。这里使用 Python 自带的虚拟环境管理。

  • 创建虚拟环境:python3 -m venv 环境名
  • 激活虚拟环境:source 环境名/bin/activate
  • 删除旧环境:rm -rf venv
  • 用python3.9创建新环境:python3.9 -m venv venv
  • 退出环境:deactivate

安装示例如下:

sql 复制代码
➜  Open-AutoGLM git:(main) python3.10 -m venv venv3.10
➜  Open-AutoGLM git:(main) source venv3.10/bin/activate
(venv3.10) ➜  Open-AutoGLM git:(main) 

这样我们就进入了创建的3.14虚拟环境。

1.2. ADB 调试工具

这里可以参照 Android 官方 ADB 指令的下载与安装文档:developer.android.com/tools/relea...

adb 安装完毕后,可打开终端命令行来检查一下是否成功。

arduino 复制代码
➜  ~ adb devices
List of devices attached
2212d99e	device

1.3. ADB Keyboard(用于文本输入)

下载 安装包 并在对应的安卓设备中进行安装。 注意,安装完成后还需要到 设置-输入法 或者 设置-键盘列表 中启用 ADB Keyboard 才能生效(或使用命令adb shell ime enable com.android.adbkeyboard/.AdbIMEHow-to-use)。

1.4. 安装项目依赖

将 Open-AutoGML(github.com/zai-org/Ope...)项目下载到本地后,进入该项目对应的环境。执行以下指令:

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

1.5. 启动模型服务

你可以选择自行部署模型服务,或使用第三方模型服务商。如果机器资源比较大,可以选择自行部署模型服务。这里我选择使用智谱 BigModel。

  • 文档: docs.bigmodel.cn/cn/api/intr...
  • --base-url: https://open.bigmodel.cn/api/paas/v4
  • --model: autoglm-phone
  • --apikey: 在智谱平台申请你的 API Key

使用示例:

ruby 复制代码
# 使用智谱 BigModel
python main.py --base-url https://open.bigmodel.cn/api/paas/v4 --model "autoglm-phone" --apikey "your-bigmodel-api-key" "打开美团搜索附近的火锅店"

1.5.1. 验证 apiKey

我们在智谱AI开放平台申请 apikey 后可以参照 API 使用文档(docs.bigmodel.cn/cn/api/intr...)来验证是否可用。

使用 curl 指令输入:

vbnet 复制代码
curl -X POST "https://open.bigmodel.cn/api/paas/v4/chat/completions" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_API_KEY" \
-d '{
    "model": "glm-4.6",
    "messages": [
        {
            "role": "system",
            "content": "你是一个有用的AI助手。"
        },
        {
            "role": "user",
            "content": "你好,请介绍一下自己。"
        }
    ],
    "temperature": 1.0,
    "stream": true
}'

输出类似下面的内容时说明可用:

2. 实操用智谱 AI 帮我点外卖

在完成环境安装后,我们来进行一次火锅的搜索。在工程项目目录中执行:

css 复制代码
 python main.py --base-url https://open.bigmodel.cn/api/paas/v4 --model "autoglm-phone" --apikey "apikey" "打开美团搜索附近的火锅店"

3. 常见错误

3.1. ERROR: No matching distribution found for Pillow>=12.0.0

vbnet 复制代码
ERROR: No matching distribution found for Pillow>=12.0.0
WARNING: You are using pip version 21.1.2; however, version 25.3 is available.
You should consider upgrading via the '/Users/dengshiwei/Documents/AI/Open-AutoGLM/venv/bin/python -m pip install --upgrade pip' command.

使用的 python3.14 版本,在安装依赖时找不到 Pillow >= 12.0.0 的版本,解决方法时降低到 python 版本到 3.10。这里可以使用 pyenv 来管理本地多个 python 版本。

sql 复制代码
brew update
brew install pyenv
pyenv install 3.10.14
进入到项目,切换对应的 python 版本:pyenv local 3.10.14

3.2. 键盘没效果

我本地已经展示安装了键盘,但是运行 main.py 时还是提示找不到。

这里的原因是源码中的检测方法遇到手机权限的问题。

ini 复制代码
 result = subprocess.run(
          ["adb", "shell", "ime", "list", "-s"],
          capture_output=True,
          text=True,
          timeout=10,
      )

本质上是 adb shell ime list -s 指令,但是很多手机都没权限了。

yaml 复制代码
java.lang.SecurityException: uid 2000 does not have android.permission.WRITE_SECURE_SETTINGS.

这里可以改为:

ini 复制代码
result = subprocess.run(
    ["adb", "shell", "settings", "get", "secure", "enabled_input_methods"],
    capture_output=True,
    text=True,
    timeout=3,
)

后续我会提交一个 MR 来兼容一下这个问题。

4. 体验感受

使用 智谱 BigModel 的模型情况下, 环境的搭建还是比较方便的,能够很快把开发环境搭建完成。如果是本地部署模型会比较耗费时间。总体来看还是比较智能的,能够操作挺多 App 的,还需要继续体验,但是目前感觉要商业化这个耗时还得继续优化,我执行了一个搜索火锅的指令,大概整体耗时在35s左右,跟中兴的 AI 手机体验比,耗时还有点多。持续进步吧。

#AutoGLM #智谱AI #OpenAutoGLM

相关推荐
阿里云大数据AI技术2 小时前
在 DataWorks 中一键部署大模型,即刻用于数据集成和数据开发
人工智能
AI科技星2 小时前
质量定义方程常数k = 4π m_p的来源、推导与意义
服务器·数据结构·人工智能·科技·算法·机器学习·生活
机器之心2 小时前
OpenAI推出全新ChatGPT Images,奥特曼亮出腹肌搞宣传
人工智能·openai
机器之心2 小时前
SIGGRAPH Asia 2025:摩尔线程赢图形顶会3DGS挑战赛大奖,自研LiteGS全面开源
人工智能·openai
_Stellar2 小时前
从输入到输出:大语言模型一次完整推理简单解析
人工智能·语言模型·自然语言处理
【建模先锋】3 小时前
特征提取+概率神经网络 PNN 的轴承信号故障诊断模型
人工智能·深度学习·神经网络·信号处理·故障诊断·概率神经网络·特征提取
轲轲013 小时前
Week02 深度学习基本原理
人工智能·深度学习
ask_baidu3 小时前
Doris笔记
android·笔记