选择以下模型之一,获取 API 密钥,完成配置,即可开始使用 Midscene.js。如果你是初学者,请选择最容易获得的模型。
Midscene.js 支持两种类型的模型:视觉语言模型和 LLM 模型。
Midscene 调用了一些视觉语言模型(VL 模型),无需依赖 DOM 信息就能精确定位页面上目标元素的坐标。
在我们的实践中,这些模型已经能覆盖大部分需求场景,相比 LLM 模型成本也显著更低,因此我们推荐在 UI 自动化中优先使用 VL 模型。此外,借助这些模型,Midscene 不仅可以驱动 Web 自动化,也可以操作 Android、iOS 以及其他任何界面,这种方式更加直观、高效。
以下是已适配的 VL 模型:
能够理解文本和图像输入的多模态 LLM 模型。GPT-4o 就是这种类型的模型。
多模态 LLM 目前仅可用于 Web 自动化,其中较典型的模型是 GPT-4o。如有需要,你也可以使用其他 LLM 模型。
火山引擎提供了多个视觉语言模型,包括:
Doubao-seed-1.6-vision(更新且更优秀)Doubao-1.5-thinking-vision-pro它们在复杂场景的视觉定位和断言方面表现相当出色。在指令清晰的情况下,能满足绝大多数业务场景需求。
配置
从 火山引擎 获取 API 密钥后,可以使用以下配置:
链接
Qwen-VL(千问 VL)是阿里巴巴发布的开源模型系列。它提供视觉定位能力,可以准确返回页面上目标元素的坐标。在用于交互、断言和查询时的综合表现相当出色。你可以在 阿里云 或 OpenRouter 上找到 Qwen 系列的已部署版本。
Midscene.js 支持使用以下版本的模型:
qwen3-vl-plus (商业版) 和 qwen3-vl-235b-a22b-instruct (开源版)我们推荐使用 Qwen3-VL 系列,因为它的表现明显优于 Qwen2.5-VL。使用 Qwen3-VL 系列的模型要求搭配 Midscene v0.29.3 及以上的版本。
使用 Qwen3-VL 模型的配置
以阿里云 qwen3-vl-plus 模型为例:
使用 Qwen2.5-VL 模型的配置
以阿里云 qwen-vl-max-latest 模型为例:
链接
Gemini-2.5-Pro从 0.15.1 版本开始,Midscene.js 支持 Gemini-2.5-Pro 模型。Gemini 2.5 Pro 是 Google Cloud 提供的闭源模型。
使用 Gemini-2.5-Pro 时,你应该使用 MIDSCENE_USE_GEMINI=1 配置来开启 Gemini-2.5-Pro 模式。
配置
在 Google Gemini 上申请 API 密钥后,可以使用以下配置:
链接
UI-TARSUI-TARS 是基于 VLM 架构的端到端 GUI 代理模型。它仅感知截图作为输入,并执行类似人类的交互(例如键盘和鼠标操作),在 10 多个 GUI 基准测试中实现了最先进的性能。UI-TARS 是一个开源模型,并提供不同大小的版本。
使用 UI-TARS 时,你可以使用目标驱动风格的提示,如"使用用户名 foo 和密码 bar 登录",它会规划步骤来实现目标。
配置
你可以在 火山引擎 上使用已部署的 doubao-1.5-ui-tars。
限制
关于 MIDSCENE_USE_VLM_UI_TARS 配置
MIDSCENE_USE_VLM_UI_TARS 配置用于指定 UI-TARS 版本,使用以下值之一:
1.0 - 用于模型版本 1.01.5 - 用于模型版本 1.5DOUBAO - 用于在火山引擎上部署的模型链接
GPT-4oGPT-4o 是 OpenAI 的多模态 LLM,支持图像输入。这是 Midscene.js 的默认模型。使用 GPT-4o 时,建议使用逐步提示。
由于 Midscene 需要向模型发送一些 DOM 信息和截图,使用 GPT-4o 的 token 成本较高,并且在复杂场景中不够稳定。
配置
Midscene.js 也支持其他模型。对于这些模型,Midscene 将使用与 GPT-4o 相同的提示和策略。如果你想使用其他模型,请按照以下步骤操作:
OPENAI_BASE_URL、OPENAI_API_KEY 和 MIDSCENE_MODEL_NAME。配置说明请参见配置模型和服务商。MIDSCENE_USE_VLM_UI_TARS 和 MIDSCENE_USE_QWEN_VL 配置。配置
更多详细信息和示例配置,请参见配置模型和服务商。
通过在环境变量中设置 DEBUG=midscene:ai:profile:stats,你可以打印模型的使用信息和响应时间。
你也可以在报告文件中查看模型的使用信息。
请确保你正确配置了 VL 模型,特别是 MIDSCENE_USE_... 配置是否正确。
如果你想排查模型服务的连通性问题,可以使用我们示例项目中的 'connectivity-test' 文件夹:https://github.com/web-infra-dev/midscene-example/tree/main/connectivity-test
将你的 .env 文件放在 connectivity-test 文件夹中,然后运行 npm i && npm run test 来进行测试。