OpenClaw onboard 选完 qwen 想换模型?TaoToken 这样改 openclaw.json
2026/9/22 12:16:21 网站建设 项目流程

1. 为什么 onboard 选完 qwen 之后,换模型这么别扭

OpenClaw 的 onboard 向导设计得很省事:装完 Node22,跑一条openclaw onboard --install-daemon,quickstart 里选个 qwen 模型,剩下的它全帮你写进~/.openclaw/openclaw.json。问题也出在这——向导只负责把 qwen 这条通道铺好,它不会问你「以后想不想换别的模型」。等你哪天想切到别的模型通道,打开那个 json 一看,models.providers.qwen-portal里躺着baseUrl=https://portal.qwen.ai/v1apiKey=qwen-oauthagents.defaults.model.primary指向qwen-portal/vision-model,整条链路都绑死在 qwen 上。

这篇就是解决这个具体动作:把 OpenClaw 的模型通道从 qwen-portal 换到 TaoToken。适合已经在 Windows 或 Linux 上装好 OpenClaw、跑通过 onboard、现在想改模型来源的人。你不需要重装,也不需要重新跑向导,改的是openclaw.jsonmodels.providers这一段,外加agents.defaults里的模型引用。改完必须重启网关,再用openclaw statusopenclaw dashboard确认请求真的走通了。

有个容易混淆的点先讲清楚:飞书那几条openclaw config set channels.feishu.*只决定消息从哪个渠道进来,跟模型 Token 走哪条通道完全是两码事。换模型通道时,飞书配置一个字都不用动。

2. 换通道前,先把 TaoToken 的 Base URL 和 Key 拿到

TaoToken 在这个流程里扮演的角色很单纯:它提供模型通道需要的 Base URL 和 API Key。你打开 https://taotoken.net/?utm_source=taotoken_aicg_blog_end 注册账号,进控制台创建一把 Key,这两样东西就齐了。

这里有个细节必须记牢,很多人第一次配就栽在这:TaoToken 的 Base URL 填https://taotoken.net/api不带/v1。qwen-portal 那套是https://portal.qwen.ai/v1,带/v1,你照着它的格式顺手加个/v1就错了。OpenClaw 的 provider 配置里,api字段声明协议类型(比如openai-completions),路径拼接由它自己处理,所以 baseUrl 给到/api这一层就够。

Key 的获取路径是控制台里的 API Keys 页面,创建后复制出来。这把 Key 就是待会儿要填进apiKey字段的值,替换掉原来的qwen-oauth。如果你还想顺便确认 TaoToken 通道里有哪些模型名可用,可以到模型对话页面看一眼当前支持的模型列表,把要用的模型 id 记下来,后面改models数组和primary时要用。

注意:Key 只在创建时完整显示一次,复制后先存到安全的地方。填进 json 之前别丢。

3. 动手改 openclaw.json:providers、models、primary 三处

先备份,这是改任何配置文件前的肌肉记忆:

cp ~/.openclaw/openclaw.json ~/.openclaw/openclaw.json.bak

Windows 上用 PowerShell:

Copy-Item $env:USERPROFILE\.openclaw\openclaw.json $env:USERPROFILE\.openclaw\openclaw.json.bak

然后打开~/.openclaw/openclaw.json。你要改的是models.providers这一段。原来的 qwen-portal 长这样:

"models": { "providers": { "qwen-portal": { "baseUrl": "https://portal.qwen.ai/v1", "apiKey": "qwen-oauth", "api": "openai-completions", "models": [ { "id": "coder-model", "name": "Qwen Coder", "reasoning": false, "input": ["text"], "contextWindow": 128000, "maxTokens": 8192 }, { "id": "vision-model", "name": "Qwen Vision", "reasoning": false, "input": ["text", "image"], "contextWindow": 128000, "maxTokens": 8192 } ] } } }

换成 TaoToken 通道,provider 的键名你可以保留qwen-portal也可以改成taotoken,但改了键名,后面所有引用这个 provider 的地方都得跟着改,容易漏。稳妥做法是保留键名,只换里面的值:

"models": { "providers": { "qwen-portal": { "baseUrl": "https://taotoken.net/api", "apiKey": "你从TaoToken控制台复制的那把Key", "api": "openai-completions", "models": [ { "id": "替换成TaoToken通道里可用的模型id", "name": "显示名称", "reasoning": false, "input": ["text"], "contextWindow": 128000, "maxTokens": 8192 } ] } } }

models数组里的id必须和 TaoToken 通道里实际可用的模型名对上,name只是显示用的,随便写。contextWindowmaxTokens按你选的模型实际能力填,不确定就先沿用原来的值,跑通后再调。

接着改agents.defaults里的模型引用。原来是:

"agents": { "defaults": { "models": { "qwen-portal/coder-model": { "alias": "qwen" }, "qwen-portal/vision-model": {} }, "model": { "primary": "qwen-portal/vision-model" } } }

这里的qwen-portal/xxx是「provider 键名/模型 id」的格式。provider 键名没改,所以前缀还是qwen-portal,但斜杠后面的模型 id 要换成你在上面models数组里写的那个 id。alias 的写法照旧保留,"alias": "qwen"这种不影响通道,只是给你自己看的短名:

"agents": { "defaults": { "models": { "qwen-portal/你的模型id": { "alias": "qwen" } }, "model": { "primary": "qwen-portal/你的模型id" } } }

primary指向哪个,agent 默认就用哪个。如果你在models数组里放了多个模型,这里选一个当默认。

还有一处别忘:文件底部auth.profiles里原来有"qwen-portal:default": { "provider": "qwen-portal", "mode": "oauth" }。qwen 走的是 oauth,TaoToken 走的是 API Key,这个 profile 对 TaoToken 通道没意义,可以删掉,也可以留着不管——它不会覆盖你在 provider 里填的 apiKey。实测下来留着不影响请求,但删掉更干净。

4. 重启网关并验证请求真的走通了

改完 json,必须重启网关,否则 OpenClaw 还在用内存里的旧配置:

openclaw gateway restart

然后看状态:

openclaw status

正常的话你会看到 gateway 在跑、agent 已加载。如果这里就报错,多半是 json 语法问题——少个逗号、多个括号,OpenClaw 解析失败会直接起不来。用openclaw doctor --fix让它帮你检查一遍配置结构。

接着打开仪表盘:

openclaw dashboard

它会输出一个带 token 的 Dashboard URL,复制到浏览器打开。注意别直接访问127.0.0.1:18789,那样会看到disconnected (1008): device identity required,因为缺了 token 认证。用 dashboard 命令给出的完整 URL 才对。

在仪表盘里发一条测试消息,看 agent 的回复是否正常返回。如果返回了内容,说明模型通道已经切到 TaoToken 并跑通了。如果报鉴权错误,回去检查apiKey是不是复制完整、有没有多余空格;如果报 404 或路径错误,检查baseUrl是不是误加了/v1

Linux 服务器上如果要从外网访问仪表盘,还得改gateway段:把bindloopback改成lan,加上controlUi.allowInsecureAuth,然后开防火墙端口:

sudo ufw allow 18789/tcp

改完同样openclaw gateway restart,再用服务器IP:18789/?token=XXXX访问,token 从openclaw dashboard的输出里拿。这套端口映射跟模型通道是独立的,换不换模型都要这么配。

5. 换模型通道时最容易踩的几个坑

baseUrl 多写了/v1。这是最高频的错误。qwen-portal 的地址带/v1,TaoToken 的填https://taotoken.net/api就到头了。多写一层,请求路径就拼错,表现为 404 或模型不存在。

改了 provider 键名却漏改引用。有人把qwen-portal改成taotoken,结果agents.defaults.modelsprimary里还写着qwen-portal/xxx,两边对不上,agent 找不到模型。要么全改,要么键名不动只换值。

忘了重启网关。改完 json 直接发消息,发现还是老模型在回。openclaw.json是启动时读的,不重启不生效。openclaw gateway restart这条命令记住。

把飞书配置和模型通道搞混channels.feishu.*那几条只管消息渠道,跟模型 Token 走哪无关。换模型时不用碰它们,改完模型通道飞书照样能用。

auth.profiles 里的 oauth 残留。qwen 的 oauth profile 留着一般不影响,但如果你发现请求还是往 qwen 走,检查一下是不是有别的地方引用了这个 profile。删掉它最省心。

Windows 路径写法。Windows 上配置文件在%USERPROFILE%\.openclaw\openclaw.json,用 PowerShell 编辑时注意 json 里的反斜杠要转义,或者干脆用正斜杠,OpenClaw 两种都认。

6. 配通之后,模型通道就归你管了

走到这一步,OpenClaw 的模型通道已经从 qwen-portal 换到 TaoToken,openclaw status和仪表盘都验证过了。以后想再换模型,改的还是models.providers里那个models数组和agents.defaults.model.primary这两处,流程一模一样:改 json、openclaw gateway restartopenclaw status确认。

如果你打算长期用 OpenClaw 跑编码或 Agent 任务,模型调用量会上来,可以到 Coding Plan 页面看看有没有适合长期用的方案;只是想先验证某个模型对话效果,模型对话页面直接试就行。Key 的管理和新建都在 API Keys 页面,接入细节拿不准时翻接入文档。落地页在 https://taotoken.net/?utm_source=taotoken_aicg_blog_end ,从那里进控制台创建 Key,回到openclaw.jsonbaseUrlapiKey,这条链路就算彻底打通了。

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

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

立即咨询