OpenClaw小白多模型设置教程及避坑指南
我用OpenClaw几个月了,开始就一个模型凑合用,到现在配了10几个模型轮着转。每次跟别人聊起来,第一反应都是:这玩意是不是要写一大堆JSON?
坦白说,一开始我也觉得复杂。打开配置文件,满屏的provider、baseUrl、apiKey、fallbacks……
后来花了一整个周末,把官方文档翻了个底朝天,又拆了几个现成的配置,发现这东西其实就几块积木拼来拼去。今天把我踩过的坑和总结出来的经验,全掏出来。
看完这篇,你也能配出属于自己的模型阵容。
一、先搞懂几个基本概念
聊配置之前,有几个词你得先搞清楚。不然看着配置文件就跟看天书一样。
Provider(提供商),谁给你提供模型服务。内置提供商,大约有几十家,比如OpenCode、OpenRouter、Ollama;自定义提供商,比如商汤、英伟达这些。每个provider有自己的API地址和鉴权方式。
Model(模型),具体的模型,比如deepseek-v4-flash、kimi-k2.6。OpenClaw里用「provider/model」这种格式来引用,比如 sensenova/deepseek-v4-flash。
Primary(主力模型),你主要用的那个模型,排第一的。
Fallback(备用模型),主力模型挂了(被限流了、API超时了),自动切换到下一个。按顺序一个一个试,直到有模型成功响应。
Allowlist(白名单),你允许OpenClaw使用的模型列表。不在这个列表里的模型,OpenClaw不会用。加了allowlist之后,切模型时必须走白名单,不在里面的会被拒绝。
这几个概念捋清楚了,后面的就好懂了。
二、再搞清楚几个相关文件
模型配置主要涉及以下五个文件。
第一个 是openclaw.json文件
这个文件也是的OpenClaw的总配置文件,所有的设置都在这个文件里。
#文件路径C:\Users\你的用户名\.openclaw\openclaw.json
模型相关的配置如下:
{"env": {}, #环境变量"auth": {}, #认证配置,内置模型提供商的认证信息"models": {}, #模型配置,自定义模型提供商"agents": {}, #代理配置,设置默认使用的模型和工作参数}
内置模型提供商认证信息,主要用于OpenClaw内置的那几十个模型。
{//认证配置,内置模型提供商的认证信息"auth": {"profiles": {"openrouter:default": {"provider": "openrouter","mode": "api_key"},"opencode:default": {"provider": "opencode","mode": "api_key"}}}}
{//自定义模型提供商配置,定义了可用的模型及其参数"models": {"mode": "merge",//多模型配置,这个必须要有"providers": {//商汤"sensenova": {"baseUrl": "https://token.sensenova.cn/v1","apiKey": {"source": "env","provider": "default","id": "SENSENOVA_API_KEY"},"api": "openai-completions","models": [{"id": "deepseek-v4-flash","name": "商汤Deepseek v4 flash","reasoning": false,"input": ["text"],"contextWindow": 1048576,"maxTokens": 65535}]},//Agnes"agnes": {"baseUrl": "https://apihub.agnes-ai.com/v1","apiKey": {"source": "env","provider": "default","id": "AGNES_API_KEY"},"api": "openai-completions","models": [{"id": "agnes-2.0-flash","name": "Agnes2.0","reasoning": false,"input": ["text","image"],"contextWindow": 128000,"maxTokens": 4096}]}}},}
代理配置。
{"agents": {"defaults": {"model": {//主力模型"primary": "sensenova/deepseek-v4-flash",//备用模型"fallbacks": ["opencode/deepseek-v4-flash-free","agnes/agnes-2.0-flash","opencode/qwen3.6-plus-free","opencode/mimo-v2.5-free","opencode/minimax-m3-free"]},//白名单"models": {"opencode/deepseek-v4-flash-free": {},"opencode/qwen3.6-plus-free": {},"opencode/mimo-v2.5-free": {},"opencode/minimax-m3-free": {},"sensenova/deepseek-v4-flash": {},"agnes/agnes-2.0-flash": {}},}}}
插件模型目录侧文件(Plugin Model Catalog Sidecar),由 OpenClaw 在生成 models.json 时自动写入,一个内置提供商一个文件夹。
#文件路径C:\Users\你的用户名\.openclaw\agents\main\agent\plugins


第三个 是openclaw-agent.sqlite文件
这个是一个数据库文件,保存记忆索引、各provider的API Key配置等信息,自动生成。
#文件路径C:\Users\你的用户名\.openclaw\agents\main\agent\openclaw-agent.sqlite
第四个 是models.json文件
自定义提供商的模型的详细配置文件,在openclaw.json文件配置模型后,自动生成。
#文件路径C:\Users\你的用户名\.openclaw\agents\main\agent\models.json
第五个 是.evn文件
环境变量的文件。安全期间,将所有api key配置在这里。
#文件路径C:\Users\你的用户名\.openclaw\.evn# OpenCodeOPENCODE_API_KEY=你的api key# 商汤$SENSENOVA_API_KEY=你的api key# AGNESAGNES_API_KEY=你的api key# OpenRouterOPENROUTER_API_KEY=你的api key
"env": {"shellEnv": {"enabled": true}},
模型配置主要有两种方式。
第一种 使用openclaw config命令配置,适合所有模型提供商。
我们先配置内置的模型提供商OpenCode。
注意,如果没有注册,先去https://【使用时删除】opencode.ai/zen注册一个账号,并获取API Key,目前提供的免费模型比较多。
OpenClaw 🦞 商汤日日新原生多模态智能体模型,Token Plan 限免中,5小时1500次调用。
在Windows (PowerShell)(管理员)命令行工具中输入openclaw config,如下,直接回车。

选Model,然后回车。





↑/↓键 上下导航,空格 / Tab键选择,回车键确认,如下图。

完成模型选择,选Done,然后回车。

完成配置。

我们再配置自定义的模型提供商Agnes。
今天起,无限期免费!全球首个全模态API开放,我已经替你测试过了,OpenClaw可用!
前几步同前面内置模型提供商,选Custom Provider。

填入API Base URL,https://apihub.agnes-ai.com/v1

选择提供此 API 密钥的方式,我们选Use external secret provider,即使用外部密钥提供程序。

选择环境变量方式,Environment variable

输入环境变量中设置好的变量名称AGNES_API_KEY。
注意这里提前要在.evn文件中设置好AGNES_API_KEY=你的Key。

引用校验通过,环境变量 AGNES_API_KEY 校验完成。OpenClaw 仅会保存该变量的引用,不会存储密钥明文。选择OpenAI-compatible。

输入模型名称agnes-2.0-flash。

输入提供商名称,如agnes。


输入模型别名,如Agnes2.0,注意别名仅可使用字母、数字、点、下划线、冒号或短横线。

选择yes,因为这个模型是同时支持文本和图像的,若仅支持文本则选No。

配置成功。

注意通过这种方式配置的模型都会被设置为主模型,我们可以通过第手动编辑修改或命令修改。
自定义provider有几个要点:
-
• baseUrl 是你的API地址,可以是本地(LM Studio、Ollama)、局域网、或者某个中转服务 -
• api 告诉OpenClaw用什么协议。大部分用 openai-completions,如果后端支持也可以用 openai-responses -
• models 列表里,id 不要带 provider 前缀,比如 qwen3.6-plus 就行,完整引用是 qwen-free/qwen3.6-plus -
• 如果模型支持看图,记得设 input: [“text”, “image”]
第二种 直接编辑openclaw.json,适合熟悉配置文件的玩家。示例已在上面的配置文件中,参照使用。
通过以上配置,我们现在已经有了内置的OpenRoute和OpenCode Zen,自定义的商汤和Agnes。四家限免的模型基本够用了,练手养虾完全够用了。
其它模型的配置按上面的方法就可以配置成功。
四、第一块积木:设置主力模型
这是最基础的配置。告诉OpenClaw:以后干活就用这个模型。
推荐用命令行:
openclaw models set sensenova/deepseek-v4-flash
想切就再跑一次。
如果你喜欢改配置文件,在 openclaw.json 里找到 agents.defaults.model 这块:
{ agents: { defaults: { model: { primary: "sensenova/deepseek-v4-flash" } } }}
我一开始就配了一个模型,用了好一阵子。当时觉得够用了。后来翻车了才发现,一个模型靠不住。
这是OpenClaw最骚的设计之一。
主力模型崩了,它不会傻等着,自动切到下一个,再不行再切,直到有人能干活。
配置fallback也很简单:
openclaw models fallbacks add openrouter/z-ai/glm-4.5-air:free
或者直接在配置文件里写:
{ agents: { defaults: { model: { primary: "sensenova/deepseek-v4-flash", fallbacks: [ "opencode/deepseek-v4-flash-free", "agnes/agnes-2.0-flash", "opencode/qwen3.6-plus-free", "
我现在挂了好几个fallback,从免费的deepseek flash一路排到各种付费模型。排的顺序有讲究:免费够用的放前面,响应慢或者要钱的放后面。大部分时候免费的顶上了,特殊情况才用后面的。
fallback 不是无脑切。OpenClaw的 failover 分两层:
第一层是auth profile轮换。同一个provider你有多个API Key的话,它会先换Key试。商汤你有两个Key,第一个被限流了,换第二个再试一次。
第二层才是切到下一个模型。所有Key都试过还不行,才走fallback列表。
好处是不会因为一个provider的临时波动就大跳转。
更骚的是,OpenClaw会记住自己fallback到了哪个模型,然后每隔5分钟偷偷去探测一下主力模型恢复了没有。恢复了就悄悄切回来,还会通知你一声:
↪️ Model Fallback cleared: sensenova/deepseek-v4-flash (was nvidia/moonshotai/kimi-k2.6)
看到这个提示的时候,我心想这设计真牛逼。
allowlist 这个东西,我一开始完全没搞懂干嘛用的。直到有一次我手滑切到了一个没配API Key的模型,OpenClaw直接甩了一句:
Model “openai/gpt-5.5” is not allowed.
然后就沉默不语了。我以为它挂了,检查了半天才发现是allowlist挡住了。
allowlist 就是白名单。不在名单里的模型,你切不过去,它也不会用。配置也很简单:
openclaw config set agents.defaults.models '{"sensenova/deepseek-v4-flash":{}}' --strict-json --merge
或者直接写JSON:
{ agents: { defaults: { models: { "sensenova/deepseek-v4-flash": { alias: "主力" }, "nvidia/moonshotai/kimi-k2.6": { alias: "Kimi备用" }, "nvidia/deepseek-ai/deepseek-v4-pro": { alias: "DeepSeek Pro" } } } }}
这里我配了 alias(别名),在聊天窗口用 /model 切换的时候,看到的是中文名字,不用记那一长串provider/model。
有个技巧特别实用。如果你不想一个一个加模型,可以用通配符:
{ agents: { defaults: { models: { "nvidia/*": {} } } }}
这一句就把所有英伟达渠道的模型都放行了,以后加新模型也不用改配置。我刚开始不知道这个,一个个加了五个英伟达的模型。后来知道了,直接改成 nvidia/* 完事。
这个功能我太喜欢了。
OpenClaw可以在聊着天的过程中随时换模型,不用重启,不用断会话。在聊天框里输入:
/model
弹出一个列表,给你编号选:
0: sensenova/deepseek-v4-flash1: nvidia/moonshotai/kimi-k2.62: nvidia/deepseek-ai/deepseek-v4-pro
输入 /model 2 就切过去了。或者直接输模型引用:
/model nvidia/moonshotai/kimi-k2.6
想回到默认模型就:
/model default
通过 /model 切换是「严格模式」。如果你手切到了某个模型,而这个模型恰好挂了,OpenClaw会直接报错告诉你它连不上,不会偷偷帮你fallback到其他模型。这是故意的——你既然手动指定了,它就尊重你的选择。
但配置里设的 primary 和 fallback 不是严格模式。primary 挂了,它会按fallback列表依次尝试。
还有一个经常踩的坑:如果你用 /model 切过模型,然后改配置文件里的 primary,切过的会话不会自动跟着变。你得先 /model default 让它继承新配置才行。
写到这里,你可能觉得这就是配几个模型的事。但用下来,OpenClaw的模型配置背后有一个很清晰的设计思路:
不是让你选一个模型用到死,而是让你拥有一个模型军团。
primary 是将军,fallback 是预备队,allowlist 是兵工厂,/model 实时切换是你随时可以换将的令牌。
遇到某个模型崩了,不会影响你整个智能助手的使用体验。你甚至察觉不到——它已经悄悄切到下一个继续干活了。
这个思路跟传统的「选好就用」完全不同。OpenClaw是「搭好体系,让它自己跑」。这可能才是AI助手该有的样子。
写配置的路上,踩了不少坑。挑几个重要的说:
1. fallback排太前了会变成主力。你把免费模型排在fallback第一位,它响应比主力快,就会被经常选中。建议把跟主力同等级的模型排在前面。
2. 别忘了配置 models.mode。
{ models: { mode: "merge" }}
默认就是 merge,但你如果改了 replace,自定义的 provider 会把内置的全部覆盖掉,后果就是一堆模型找不到了。
3. /model 切换是会话级的,不是永久的。用 /model 切到别的模型,只影响当前会话。新会话还是会用配置文件里的 primary。想要一直用,得改配置文件。
其实吧,模型配置这件事,说复杂也复杂,说简单也简单。
第一,设好主力模型。
第二,配好fallback梯队。
第三,用好allowlist。
搞定这三样,你的OpenClaw模型配置就基本毕业了。剩下的都是锦上添花。
我现在每天用OpenClaw,根本不用操心模型的事。主力不行了自动切,切完了自动探恢复,恢复了自己切回来。我就安安心心写我的文章、查我的资料。
以上,如果觉得不错,随手点个赞、在看、转发三连吧,如果想第一时间收到推送,也可以给我个星标⭐~谢谢你看我的文章,我们,下次再见。
本文基于 OpenClaw 2026.6.11 版本
我的Openclaw教程
夜雨聆风