OpenClaw接入多个模型实现自动手动切换配置
OpenClaw小龙虾是需要接入大模型API的,这是小龙虾的大脑,而不同的AI大模型服务商,提供的API服务套餐额度又不一样。
有些是按token收费的,有些是送token的,还有些是按照次数调用计算,不按token计算的。
特别是送token的服务商,老马觉得这就是一种宣传获客手段,送个几百万一千万token给你试用一下,后期还是希望你继续充值。
而送的千把万的token,说句实在话,还不够你跟小龙虾聊几轮的,属实是有点鸡肋,所以这种羊毛可薅可不薅,意义不大。
其次是按token计算收费的服务商,还会设置一些收费的档位,不同档位的调用速率限制是不一样的。
如果你的小龙虾老是提示Api limit,那基本上就是请求速率被限制了,你调用得太频繁了,超过次数限制了。
要么过一段时间再重试,要么继续花钱升级更高级的档位。还有很多免费白嫖的服务商,基本都会限制速率。
说到底,当前使用国产模型的话,最具性价比的还是买各大云厂商的Coding Plan套餐,哪怕是最低版本的Lite套餐,也基本够普通人的日常使用。
Coding Plan的套餐都是按次数计算的,每5个小时限制调用多少次,每天限制调用多少次,每个月限制调用多少次等。
这个每家厂商给的次数额度都不一样,具体可以参照它们的介绍说明。按次调用的好处是,哪怕你一次用了100万token,它也只算一次。
如果换算成按token,你想想一次就消耗了100万token,你充值或者送的1000万token,跟小龙虾聊10次不就没了么。
因此,老马下面给大家列一下御三家的Coding Plan套餐开通介绍入口页面链接,可以根据自己需要去选择:
阿里云:
https://www.aliyun.com/benefit/scene/codingplan
腾讯云:
https://cloud.tencent.com/act/pro/codingplan
百度云:
https://cloud.baidu.com/product/codingplan.html
阿里云的Coding Plan是限量的,需要去抢,每天名额有限,抢到应该是9.9元/月,抢不到就是40元/月。
其它两家也差不多的价格,但是毕竟都是活动,所以Coding Plan可能会存在价格变动,以及活动结束,限量供应等情况,都是正常的。
所以大家以活动页面上的内容为准,不要以本文为准,搞不好哪天这三家云厂商又调整政策了。其它云厂商也有差不多的活动套餐,可以搜搜看。
介绍完比较有性价比的OpenClaw接入大模型API的方式,接下来进入今天的主题,就是如何让OpenClaw实现以下三种场景:
1.接入多家大模型API提供商,其中一家到期了,或者额度没了,自动切换到下一家。
2.在创建了多智能体多Agent的情况,如何让每个Agent,根据自身的角色定位,使用不一样的模型。
比如老马创建了两个Agent,小猪是CEO,那老马希望它用glm-5模型。小猫是设计师,需要会看图片,那就可以用带视觉理解能力的kimi-k2.5模型。
3.当发现模型不合适,不够聪明,或者缺少视觉理解能力等情况,可以手动随时切换已经接入的同一家服务商的不同模型。
假设老马之前给小猪接入的glm-5模型,使用的是阿里云的coding plan套餐,结果发现这个模型没有视觉理解能力,只能处理文本内容。
那就可以切换到阿里云Coding Plan支持的其它模型,比如kimi-2.5模型,或者qwen3.5-plus模型。
以上三个场景,老马是认为大家在日常养虾的过程中可能会遇到的,而且老马介绍的方法,是不需要我们自己手动去修改OpenClaw的配置文件。
直接按照老马介绍的思路和提示词,发送给你的小龙虾,它会引导你去设置完成,当然也会去修改你的OpenClaw配置文件。
千万记住,先给你的小龙虾发送一条保命设定,那就是告诉它:在修改OpenClaw.json文件之前,先备份一份,然后向我汇报,我允许之后,才能去修改,把这个要求记录到长期记忆文件中。
以上这句话就是为了避免小龙虾每次不经过你允许,胡乱去改动OpenClaw.json配置文件,导致文件格式损坏,或者添加了不支持的字段。
因为OpenClaw.json这个配置文件每次修改后,都需要重启网关才能生效的。但因为配置文件被小龙虾改到存在错误,就会导致网关无法成功重启。
很多小伙伴都懵逼了,我的小龙虾是不是死了,完蛋了。其实就配置文件被改坏了。不过你让小龙虾记住每次修改都要经过你允许,以及备份一下。
哪怕后面经过你允许了,还是改到出现错误了,你也可以在备份的OpenClaw.json.bak文件中恢复一下,把原来错误的OpenClaw.json删除掉,把备份文件的后缀名.bak去掉,这就恢复了,如图:
以Windows为例,你的OpenClaw用户设置目录一般位于:C:\Users\你的用户名\.openclaw,里面就能看到OpenClaw.json这个配置文件了。
基本该交代的都交代完了,再次重申一遍,OpenClaw.json这个配置文件很重要,大多数网关启动不了报错,都是配置文件有错误导致的。
然后看文章的时候请仔细一点,老马在每个会考虑到细节点,都有详细的说明,别漏过了之后,自己去操作导致出问题。
特别声明,老马下面是以阿里云、腾讯云、百度云三家的Coding plan举例,并不代表你一样要接入这三家的。你有其它服务商的API,或者购买了token的,都可以按照这个思路去操作。
思路是一样的,只需要改一下下面老马提供的对话提示词里面的内容即可。不要误解,以为只能接入这三家的。
接入多家大模型提供商自动切换
1.1 场景描述
问题:假设阿里云Coding Plan每月额度用完,服务中断。
目标:额度不足时自动切换到腾讯云或百度云的Coding Plan,实现无缝衔接。
适用:单智能体、高可用性要求的生产环境。
1.2 架构设计
┌─────────────────────────────────────────┐
│ 阿里云 Coding Plan │
│ Kimi K2.5(额度充足时使用) │
│ ↓ 额度耗尽 │
├─────────────────────────────────────────┤
│ 腾讯云 Coding Plan │
│ Kimi K2.5(自动切换) │
│ ↓ 额度耗尽 │
├─────────────────────────────────────────┤
│ 百度云 Coding Plan │
│ Kimi K2.5(最后备选) │
└─────────────────────────────────────────┘
1.3 发给小龙虾的对话提示词(需要改成自己的去使用)
我现在有三家云厂商的大模型Coding Plan套餐API信息,分别如下。
阿里云Coding plan:
API Base URL:(这里填你的API地址)
API Key:(这里填你的API密钥)
模型ID:(这里填你想调用的模型名称,但必须是阿里云Coding plan支持的)
腾讯云Coding plan:
API Base URL:(这里填你的API地址)
API Key:(这里填你的API密钥)
模型ID:(这里填你想调用的模型名称,但必须是腾讯云Coding plan支持的)
百度云Coding plan:
API Base URL:(这里填你的API地址)
API Key:(这里填你的API密钥)
模型ID:(这里填你想调用的模型名称,但必须是百度云Coding plan支持的)
帮我设置一下多模型自动切换,当阿里云coding plan因为到期,或者额度被限制等原因,导致API调用失败时,自动切换到腾讯云。当腾讯云调用失败时,自动切换到百度云,以此类推。当所有的API都调用失败时,请向我汇报。
不要把api key直接写入Openclaw.json文件,应该先创建.env环境变量配置文件来保存api key,并在OpenClaw.json中的api key使用对应的环境变量。由于此操作需要修改OpenClaw.json配置文件,在修改之前必须先备份。然后输出你的修改方案,再询问我的允许,允许通过之后再进行修改,引导我重启网关使配置文件生效。
以上对话提示词,你可以直接发给你的小龙虾。然后小龙虾就会引导你去设置了,同时还会给你输出具体的修改方案。在得到你的允许之后,才去修改OpenClaw.json这个配置文件。
与此同时还会创建一个.env的文件,来保存你的API Key密钥信息。比起直接把API Key保存在OpenClaw.json文件中,这种方式会更安全。
然后重点来了,下面老马会贴出OpenClaw.json的配置方案内容,仅供参考,仅供参考,仅供参考,重要事情说三遍。
别直接复制了之后,拿去替换或者加到你的OpenClaw.json里面。这里面是有错误的,比如API Base url就是错误的,只是格式上给大家做个参考而已。
你只需要把上面的提示词给到小龙虾,它会引导并帮你设置好的。大概率它都不会设置修改错误,这也取决于你接入的是什么模型。
如果模型比较辣鸡,把配置文件改错了,导致小龙虾掉线,无法重启网关,无法回复消息等问题。
那你就去用户目录下,把原来的OpenClaw.json文件删除掉。找到备份的OpenClaw.json.bak文件,修改后缀名去掉.bak,恢复过来就行了。
最后再用命令行终端,比如CMD或者Powershell,输入命令“openclaw config”进入设置引导,选择Local,再选择Model,重新改一下你接入的模型,改成其它主流的模型。
这就等于给小龙虾换了个大脑,然后重新发送以上对话提示词,让小龙虾继续去帮你配置接入多家大模型自动切换的设置。
1.4 配置方案(仅供参考,勿复制使用)
// ~/.openclaw/openclaw.json
{
agents: {
defaults: {
// 定义三家云厂商的同一模型
models: {
"aliyun/kimi-k2.5": {
alias: "kimi",
params: { temperature: 0.6, maxTokens: 8192 }
},
"tencent/kimi-k2.5": {
alias: "kimi-tencent",
params: { temperature: 0.6, maxTokens: 8192 }
},
"baidu/kimi-k2.5": {
alias: "kimi-baidu",
params: { temperature: 0.6, maxTokens: 8192 }
}
},
// 故障转移链:额度不足时自动切换
model: {
primary: "aliyun/kimi-k2.5", // 阿里云(主)
fallbacks: [
"tencent/kimi-k2.5", // 腾讯云(备1)
"baidu/kimi-k2.5" // 百度云(备2)
]
}
}
},
auth: {
profiles: {
"aliyun:main": { provider: "aliyun", mode: "api_key" },
"tencent:main": { provider: "tencent", mode: "api_key" },
"baidu:main": { provider: "baidu", mode: "api_key" }
}
},
models: {
providers: {
"aliyun": {
baseUrl: "https://dashscope.aliyuncs.com/api/v1",
apiKey: "${ALIYUN_DASHSCOPE_KEY}"
},
"tencent": {
baseUrl: "https://hunyuan.tencentcloudapi.com",
apiKey: "${TENCENT_HUNYUAN_KEY}"
},
"baidu": {
baseUrl: "https://qianfan.baidubce.com/v2",
apiKey: "${BAIDU_QIANFAN_KEY}"
}
}
}
}
同理,下面的.env文件的配置也是仅供参考,除非你看得懂,那可以直接去创建.env文件,直接使用的。否则,请按小龙虾帮你创建的为准。
1.5 环境变量配置(仅供参考,勿复制使用)
# ~/.openclaw/.env
ALIYUN_DASHSCOPE_KEY=sk-your-aliyun-key
TENCENT_HUNYUAN_KEY=your-tencent-key
BAIDU_QIANFAN_KEY=your-baidu-key
1.6 触发条件
OpenClaw小龙虾会在以下情况自动切换:
另外说明一点,后期你想单独修复任意一家接入的服务商,或者接入服务商的任意一个模型,这都是可以的,配置文件不是写死的。
只要你提出需求,把提示词写明白一点,小龙虾就可以帮你进行配置修改。比如,你要把阿里云的Coding plan换成讯飞星辰的。
只需要提示词中写明更换阿里云Coding plan的模型接入配置信息,把模型接入商改成讯飞星辰,API Base url地址是多少,API Key是多少,模型ID是什么,告诉小龙虾即可。
多智能体分配不同模型
2.1 场景描述
问题:不同智能体需要不同能力的模型(比如代码、对话、速记)
目标:多个智能体分别配置不同模型,专业化分工
适用:多智能体架构、任务类型多样化的场景
2.2 架构设计
┌─────────────────────────────────────────┐
│ 阿里云 Coding Plan │
│ ┌─────────┐ ┌─────────┐ ┌─────────┐ │
│ │ Agent 1 │ │ Agent 2 │ │ Agent 3 │ │
│ │ 代码助手 │ │ 对话助手 │ │ 速记助手 │ │
│ │ Kimik2.5 │ GLM-5 │ │MiniMax m2.5│
│ └─────────┘ └─────────┘ └─────────┘ │
└─────────────────────────────────────────┘
以上图接入的阿里云的Coding plan为例,它支持主流的kimi k2.5,glm-5、minimax m2.5。当你的OpenClaw已经开启了多Agent多智能体的架构后,就可以给不同的Agent设置使用不同的模型。
至于如何开启多Agent多智能体的架构,可以参考老马之前发的文章:OpenClaw小龙虾搭建多Agent智能体,一个人拥有一个团队。
要强调的一点是,这种场景方式仅支持一家服务商,且仅使用该服务商所支持的模型。如果是多家服务商的需求,请参考第一种场景。
因为多家服务商接入的同时,又要给多个Agent配置不同的模型,这个逻辑上就很复杂,老马个人建议是不需要这么去弄,除非你真的懂折腾。
还有就是,现在OpenClaw接入的大模型,基本都是文本语言模型,以处理文字内容为准。虽然有些具有视觉理解能力,能看得懂图片或者视频。
但这不代表,文本语音模型能生成图片,或者生成视频,生成音乐。生图生视频生音乐得单独接入模型。
拿最近很火的字节Seedance 2.0举例,它是目前最顶尖,效果最好的生成视频模型。你如果要接入,就得去火山引擎上购买开通API(现在还没开放),再让小龙虾去接入。
2.3 智能体分工举例
2.4 发给小龙虾的对话提示词(需要改成自己的去使用)
我现在需要接入阿里云的Coding plan作为openclaw唯一的模型提供商。
阿里云Coding plan支持qwen3.5-plus、glm-5、kimi-k2.5、MiniMax-M2.5等模型。
目前我的Openclaw已经设置了多Agent的架构,我希望是每个Agent都能使用指定的模型。
不要把api key直接写入Openclaw.json文件,应该先创建.env环境变量配置文件来保存api key,并在OpenClaw.json中的api key使用对应的环境变量。
请按照以下格式帮我进行设置,设置之前请先给我汇报清楚方案。在我允许之后,才执行配置文件的修改。
在修改OpenClaw.json配置文件之前,一定先备份一份,然后再去修改,修改后引导我重启网关。
格式如下:
统一的API Base url:(这里填你的API地址)
统一的API key:(这里填你的API密钥)
Agent 1:(这里填你的Agent名称)
Agent id:(如果是主Agent,就写main)
使用模型id:(这里填模型名称,比如glm-5)
Agent 2:(这里填你的Agent名称)
Agent id:(这里一般写子Agent,比如你之前设置的叫coder)
使用模型id:(这里填模型名称,比如glm-5)
Agent 3:(这里填你的Agent名称)
Agent id:(这里一般写子Agent,比如你之前设置的叫chat)
使用模型id:(这里填模型名称,比如glm-5)
...... (后面有多少个Agent,你就复制多少)
2.5 配置方案(仅供参考,勿复制使用)
// ~/.openclaw/openclaw.json
{
agents: {
defaults: {
// 所有模型定义(阿里云)
models: {
"aliyun/kimi-k2.5": { alias: "kimi" },
"aliyun/glm-5": { alias: "glm" },
"aliyun/minimax-m2.5": { alias: "minimax" }
}
},
// 多智能体列表
list: [
{
id: "coder",
name: "代码助手",
workspace: "~/.openclaw/workspace-coder",
default: true,
model: {
primary: "aliyun/kimi-k2.5" // 代码任务用 Kimi
},
identity: {
name: "Coder",
emoji: "",
theme: "expert programmer"
}
},
{
id: "chat",
name: "对话助手",
workspace: "~/.openclaw/workspace-chat",
model: {
primary: "aliyun/glm-5" // 对话任务用 GLM-5
},
identity: {
name: "Chatty",
emoji: "",
theme: "friendly assistant"
}
},
{
id: "fast",
name: "速记助手",
workspace: "~/.openclaw/workspace-fast",
model: {
primary: "aliyun/minimax-m2.5" // 快速任务用 MiniMax
},
identity: {
name: "Flash",
emoji: "⚡",
theme: "quick responder"
}
}
]
},
// 路由绑定:不同渠道/用户路由到不同智能体
bindings: [
// 编程群 → coder 智能体
{
agentId: "coder",
match: {
channel: "feishu",
peer: { kind: "group", id: "programming-group-id" }
}
},
// 日常群 → chat 智能体
{
agentId: "chat",
match: {
channel: "feishu",
peer: { kind: "group", id: "chat-group-id" }
}
},
// 快速查询 → fast 智能体
{
agentId: "fast",
match: {
channel: "feishu",
peer: { kind: "group", id: "quick-group-id" }
}
}
],
// 默认智能体(私信)
agents: {
defaults: {
model: {
primary: "aliyun/kimi-k2.5"
}
}
}
}
2.6 使用方式举例
- 单独跟智能体对接的机器人私聊或者群里@该机器人 → coder智能体 → 自动使用kimi k2.5模型
- 单独跟智能体对接的机器人私聊或者群里@该机器人 → chat智能体 → 自动使用glm-5模型
- 单独跟智能体对接的机器人私聊或者群里@该机器人→ fast智能体 → 自动使用minimax m2.5模型
以上使用方式是自动路由的,也就是说你让小龙虾设置了之后。不需要你去管了,每个Agent智能体都有对应的模型,都会自动去使用。
手动切换同一家服务商的不同模型
3.1 场景描述
问题:想根据任务类型灵活选择模型(不自动切换)
目标:用户主动选择模型,精细控制
适用:开发者、高级用户、需要精细控制的场景
3.2 模型能力对比举例
我们都知道,每个模型都有自己的长板和短板,当然现在模型的长短板之间的差距,现在来看并不是太明显太巨大。
所以这个场景下的需求,更多的是看你要完成什么任务。不同的任务,可以随意切换不同的模型去完成,充分利用每个的模型的长板。
除了长板,还有价格,比如通过上面的表格,我们已经知道kimi 2.5这个模型好,但价格贵。一般普通的任务,写写文章,改改文件啥的,犯不着用kimi k2.5模型。
可以选择比较便宜的国产模型,比如用minimax m2.5来做普通的任务。遇到比较高要求的编程任务,则可以选择kimi k2.5模型。
以上举例就是告诉大家,即便是接入的是同一家服务商,假设就是阿里云的Coding plan,它支持的不同模型的能力与价格之间还是有区别的。
所以,我们可以让小龙虾把需求写入到配置文件。当我们手动输入任务要求的时候,小龙虾就可以随意地去切换不同模型。
3.3 发给小龙虾的对话提示词(需要改成自己的去使用)
我现在需要接入阿里云的Coding plan作为openclaw唯一的模型提供商。
阿里云Coding plan支持qwen3.5-plus、glm-5、kimi-k2.5、MiniMax-M2.5等模型。
我希望在执行不同任务的时候,可以手动输入关键词进行触发对应的模式,从而让你帮我自动切换到对应的模型。
比如输入:切换到编程模式,你会从配置文件中,找到编程模式对应使用的模型,自动为我进行切换。
再比如输入:切换到对话模式,你会从配置文件中,找到对话模式对应使用的模型,自动为我进行切换。
以此类推,遇到不存在的模式关键词,则提醒我没有设置该模式对应使用的模型。
不要把api key直接写入Openclaw.json文件,应该先创建.env环境变量配置文件来保存api key,并在OpenClaw.json中的api key使用对应的环境变量。
请按照以下格式帮我进行设置,设置之前请先给我汇报清楚方案。在我允许之后,才执行配置文件的修改。
在修改OpenClaw.json配置文件之前,一定先备份一份,然后再去修改,修改后引导我重启网关。
格式如下:
统一的API Base url:(这里填你的API地址)
统一的API Key:(这里填你的API密钥)
//编程模式
使用的模型id:(这里填你需要的模型名称)
//对话模式
使用的模型id:(这里填你需要的模型名称)
//快速模式
使用的模型id:(这里填你需要的模型名称)
...... (后面有多少种模式,你就复制多少)
3.4 配置方案(仅供参考,勿复制使用)
// ~/.openclaw/openclaw.json
{
agents: {
defaults: {
// 定义同一家云厂商的多个模型
models: {
// 编程专用
"aliyun/kimi-k2.5": {
alias: "code",
params: { temperature: 0.6, maxTokens: 8192 }
},
// 对话专用
"aliyun/glm-5": {
alias: "chat",
params: { temperature: 0.7, maxTokens: 4096 }
},
// 快速响应
"aliyun/minimax-m2.5": {
alias: "fast",
params: { temperature: 0.5, maxTokens: 2048 }
}
},
// 默认模型
model: {
primary: "aliyun/kimi-k2.5"
}
}
}
}
手动切换的方式也比较简单,你只需要跟小龙虾说,帮我切换到编程模式,或者切换到对话模式,只要你设置的模式关键词是对的就行了。
假设你输入的是帮我切换到编程模式,那么小龙虾就会帮你切换到kimi k2.5模型,因为你提示词里面就是要求这么设置的,以此类推。
以上三种场景就给大家介绍完了,当然老马知道,还不是很全面。因为总有个小伙伴有各种奇葩的需求,混合搭配搞得很复杂。
但万变不离其宗,你只要设置过一次,搞懂了这三种基本的场景。后面你想怎么混着搭配混着来都行。这是自由的,不是限制死的。
大不了改乱了OpenClaw.json配置文件后,你再重新恢复备份的文件。因此得养成一个好习惯,改动之前都先让小龙虾去备份。
好了,以上就是今天的分享,欢迎关注、点赞、转发一键三连。有任何问题和需求,请在评论区留言,回见!
对了,老马最近刚创建了一个AI学习交流群,有兴趣进群的小伙伴可以添加老马微信号:immajiabin,添加好友时备注:进群(不备注不通过)。


