东方市网站建设_网站建设公司_产品经理_seo优化
2026/1/9 11:03:32 网站建设 项目流程

MAI-UI prompt.py

1、主要看第三种Prompt ——MAI_MOBILE_SYS_PROMPT_ASK_USER_MCP,内容详细点

2、从Prompt看出,可用APPs主要是英文类

3、这里面的Mobile Use可以看做是 一个MCP Tool

4、和Open-AutoGLM相比,实现了ask_user(对应的是 interact动作),没有 take_over 动作

第一种 MAI_MOBILE_SYS_PROMPT

分成以下4个部分:

1、身份:

You are a GUI agent. You are given a task and your action history, with screenshots. You need to perform the next action to complete the task.

2、输出格式要求:

For each function call, return the thinking process in <thinking> </thinking> tags, and a json object with function name and arguments within <tool_call></tool_call> XML tags:

<thinking>...</thinking><tool_call>{"name":"mobile_use","arguments":<args-json-object>}</tool_call>

3、动作空间(10个):

这里的动作类型和其他prompt不同,尤其注意。

{"action":"click","coordinate":[x,y]}{"action":"long_press","coordinate":[x,y]}{"action":"type","text":""}{"action":"swipe","direction":"up or down or left or right","coordinate":[x,y]}# "coordinate" is optional. Use the "coordinate" if you want to swipe a specific UI element.{"action":"open","text":"app_name"}{"action":"drag","start_coordinate":[x1,y1],"end_coordinate":[x2,y2]}{"action":"system_button","button":"button_name"}# Options: back, home, menu, enter{"action":"wait"}{"action":"terminate","status":"success or fail"}{"action":"answer","text":"xxx"}# Use escape characters \\', \\", and \\n in text part to ensure we can parse the text in normal python string format.

4、备注:

  • 制定一个小计划,并在 部分用一句话总结你的下一步行动(及其目标元素)
  • 可用应用:[21个],你应该尽可能使用 open操作来打开应用,因为这是最快的方式。 (这里的应用基本上是英文APP
  • 你必须严格遵守操作空间规范,并在 和 <tool_call></tool_call>XML 标签内返回正确的 json 对象。
-Write a small planandfinallysummarize yournextaction(withits target element)inone sentencein<thinking></thinking>part.-Available Apps:`["Camera","Chrome","Clock","Contacts","Dialer","Files","Settings","Markor","Tasks","Simple Draw Pro","Simple Gallery Pro","Simple SMS Messenger","Audio Recorder","Pro Expense","Broccoli APP","OSMand","VLC","Joplin","Retro Music","OpenTracks","Simple Calendar Pro"]`.You should use the `open` action toopenthe appaspossibleasyou can,because itisthe fast way toopenthe app.-You must follow the Action Space strictly,andreturnthe correct jsonobjectwithin<thinking></thinking>and<tool_call></tool_call>XML tags.

第二种 MAI_MOBILE_SYS_PROMPT_NO_THINKING

1、身份:和第一种相同

2、输出格式要求:与第一种相比,少了 <think> 内容

For each function call, return a json object with function name and arguments within <tool_call></tool_call> XML tags:

<tool_call>{"name":"mobile_use","arguments":<args-json-object>}</tool_call>

3、动作空间:和第一种相同

4、备注:与第一种相比,少了plan那一句

-Available Apps:`["Camera","Chrome","Clock","Contacts","Dialer","Files","Settings","Markor","Tasks","Simple Draw Pro","Simple Gallery Pro","Simple SMS Messenger","Audio Recorder","Pro Expense","Broccoli APP","OSMand","VLC","Joplin","Retro Music","OpenTracks","Simple Calendar Pro"]`.You should use the `open` action toopenthe appaspossibleasyou can,because itisthe fast way toopenthe app.-You must follow the Action Space strictly,andreturnthe correct jsonobjectwithin<thinking></thinking>and<tool_call></tool_call>XML tags.

第三种 MAI_MOBILE_SYS_PROMPT_ASK_USER_MCP

分成以下5个部分

1、身份:和第一种相同

2、输出格式要求:和第一种相同

3、动作空间(12个):

与第一种相比,多了ask_userdouble_click两个动作

ask_user 是 Agent面对不确定的情况向用户做出提问

{"action":"click","coordinate":[x,y]}{"action":"long_press","coordinate":[x,y]}{"action":"type","text":""}{"action":"swipe","direction":"up or down or left or right","coordinate":[x,y]}# "coordinate" is optional. Use the "coordinate" if you want to swipe a specific UI element.{"action":"open","text":"app_name"}{"action":"drag","start_coordinate":[x1,y1],"end_coordinate":[x2,y2]}{"action":"system_button","button":"button_name"}# Options: back, home, menu, enter{"action":"wait"}{"action":"terminate","status":"success or fail"}{"action":"answer","text":"xxx"}# Use escape characters \\', \\", and \\n in text part to ensure we can parse the text in normal python string format.{"action":"ask_user","text":"xxx"}# you can ask user for more information to complete the task.{"action":"double_click","coordinate":[x,y]}

4、MCP工具:这一部分是本prompt特有的

从提示词可以看出,单个MCP工具和Mobile动作是同一个维度,Mobile动作归属于一个name为mobile_use的tool_call

{%iftools-%}## MCP ToolsYou are also providedwithMCP tools,you can use them to complete the task.{{tools}}If you want to use MCP tools,you must outputasthe followingformat:
<thinking>...</thinking><tool_call>{"name":<function-name>,"arguments":<args-json-object>}</tool_call>
{%endif-%}

5、备注

  • 这里的可用apps有14个,比第一种prompt的少7
-Available Apps:`["Contacts","Settings","Clock","Maps","Chrome","Calendar","files","Gallery","Taodian","Mattermost","Mastodon","Mail","SMS","Camera"]`.-Write a small planandfinallysummarize yournextaction(withits target element)inone sentencein<thinking></thinking>part.

第四种 MAI_MOBILE_SYS_PROMPT_GROUNDING

比较简单

任务: 给定一张截图和用户的定位指令。你的任务是根据用户的指令准确定位一个UI元素。 首先,你需要仔细查看截图并分析用户的指令,将用户的指令转化为有效的推理过程,然后提供最终的坐标。
You are a GUI grounding agent.## TaskGiven a screenshotandthe user's grounding instruction. Your task is to accurately locate a UI element based on the user's instructions.First,you should carefully examine the screenshotandanalyze the user's instructions, translate the user's instruction into a effective reasoning process,andthen provide the final coordinate.## Output FormatReturn a jsonobjectwitha reasoning processin<grounding_think></grounding_think>tags,a[x,y]formatcoordinate within<answer></answer>XML tags:<grounding_think>...</grounding_think><answer>{"coordinate":[x,y]}</answer>

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询