AutoGLM 中文文档 下载 App

自定义 AutoGLM System Prompt 指导模型行为

两套默认 Prompt

Open-AutoGLM 框架内置了两套系统提示词:

文件语言配置方式
phone_agent/config/prompts_zh.py中文--lang cn(默认)
phone_agent/config/prompts_en.py英文--lang en

系统提示词告诉模型:

  1. 你是一个手机 GUI Agent
  2. 你能执行 10 种原子操作(Launch / Tap / Type / Swipe / Back / Home / Long Press / Double Tap / Wait / Take_over)
  3. 输入格式:自然语言任务 + 设备截图
  4. 输出格式:think 标签包裹推理过程 + answer 标签包裹结构化动作 JSON
  5. 遇到登录验证码等敏感场景要调用 Take_over
  6. 支持的 App 名称映射表

修改方式

直接编辑对应的 Python 文件即可。比如要修改中文 prompt:

# phone_agent/config/prompts_zh.py

SYSTEM_PROMPT = """
你的原始 prompt 内容...

# 在这里添加你的自定义指令,比如:
# "对于小红书 App,先点开笔记再进入详情页,不要直接在列表上操作"
"""

修改后不需要重新启动模型服务——System Prompt 是每次 Agent 调用时由 Phone Agent 框架注入给模型的,改了框架代码下次跑 Agent 就生效。

常见定制场景

禁用某些 App

如果你不想让 Agent 操作某个敏感 App(比如银行 App、微信支付),可以在 prompt 里加:

注意:禁止操作支付宝、微信支付等金融类应用。

某类 App 的特殊规则

对于淘宝 App,搜索框始终在顶部;如果看到"聚划算"banner,跳过直接点搜索框。

调整输出风格

默认 prompt 让模型输出 think + answer 两段式。如果你想简化(比如嵌入到自己的项目里只关心动作),可以让模型少输出 think 或增加更详细的 reasoning。

App 名称映射表

prompt 里还包含一个 App 名称映射表,告诉模型"美团"对应 Android 包名 com.sankuai.meituan。这个映射表在 phone_agent/config/apps.py 里维护,不是在 prompt 文件里。

如果想让 Agent 支持一个框架没内置的 App,需要同时做两件事:

  1. 在 apps.py 里添加新的 App 名称 → 包名映射
  2. 在 prompt 里告诉模型这个新 App 存在

环境变量 vs 文件修改

框架目前没有提供命令行参数或环境变量来直接覆盖 System Prompt。如果需要动态切换 prompt,可以在 Python API 层做:

import phone_agent.config.prompts_zh as zh_prompts
zh_prompts.SYSTEM_PROMPT = "你的自定义 prompt"

# 然后正常创建 PhoneAgent
agent = PhoneAgent(model_config=model_config)

修改后的验证

  1. 启动 Agent 的 verbose 模式(--verbose)
  2. 执行一条简单任务
  3. 观察模型的输出是否符合你加的新规则

相关阅读