给 Dify 的 LLM 节点填 Base URL 时,最容易出现的不是模型不会推理,而是模型供应商保存后拉不到模型列表;Codex 更直接,config.toml 里模型名写错就提示 model_not_found。按接入配置这条线,先把这一步统一成 TaoToken:打开官网 https://taotoken.net/?utm_source=taotoken_aicg_blog_end&utm_medium=csdn&utm_campaign=rewrite&utm_content= 注册并创建 Key,再把 Base URL 填 https://taotoken.net/api。这样 Dify、Codex、后续 Cline 或 CC Switch 都走同一个兼容通道,AI Agent + LLM + MCP 实战里后面的 MCP 技能池、工作流编排、可观测接入可以继续照做,不用为多家模型平台的地址和密钥来回切换。
1. 小白也能学会的 AI Agent + LLM + MCP 实战:接入配置为什么总卡在 Base URL 和 Key
构建 AI Agent 时,无论你是用 Dify 这类低代码方式拖工作流,还是用 Codex 这类编码 Agent 写配置,都绕不开同一个动作:给 LLM 节点或 Agent 节点填模型服务的 Base URL 与 API Key。
这一步在教程里通常只有一句话,但实际会卡住很多人:
- Dify 里选了 OpenAI-API-compatible,Key 填了,Base URL 也填了,保存后模型列表拉不出来;
- 工作流里的 LLM 节点能跑,但 Agent 节点还是走旧模型供应商;
- Codex 启动后一直报找不到模型,或者把请求发到了默认 OpenAI 地址;
- 多个工具各填一套地址和 Key,换模型时要在 Dify、Codex、Cline 之间反复改;
- Key 被写进前端、截图或 Git 仓库,后面只能重新生成。
本篇的接入配置视角很明确:把“模型服务地址 + Key”收敛到 TaoToken。你先在官网注册并创建 Key,然后在 Dify、Codex 等工具的模型配置里填同一个 Base URL:https://taotoken.net/api,Key 填刚创建的 TaoToken Key。AI Agent 调 LLM 的请求统一走 TaoToken 兼容通道,后续 MCP 工具、Agent 工作流、观测接入都沿用这套配置。
适用场景包括:
- 第一次在 Dify 里配置 LLM 节点和 Agent 节点;
- 在 Codex 的 config.toml 里接入非默认模型服务;
- 准备继续跟做 MCP 技能池、低代码工作流、Agent 可观测;
- 希望多个 AI 工具共用一份模型接入习惯,而不是每个工具记一套地址。
下面按“拿 Key、Dify 配置、Codex 配置、验证、排错”的顺序走。技术配置部分会写细一点,因为初学者真正卡住的就是这些字段。
2. 在 TaoToken 官网拿到 Key,并到模型广场确认模型 ID
先打开 TaoToken 官网:
https://taotoken.net/?utm_source=taotoken_aicg_blog_end&utm_medium=csdn&utm_campaign=rewrite&utm_content=
注册并进入控制台后,创建 API Key。创建完成后先复制出来,本文后续统一用占位符YOUR_API_KEY表示。不要把真实 Key 直接写进公开文章、截图或提交到 Git。
接着进入模型广场,确认你要用的模型 ID。这里有两个概念容易混:
- 展示名称:给人看的名称;
- 模型 ID:填进 Dify 或 Codex 的
model字段,必须从模型广场复制。
本文不写死某个模型 ID,因为模型广场会更新。你在配置时把YOUR_MODEL_ID替换成模型广场里实际复制的 ID 即可。
拿到两个值后,后面所有工具都围绕它们展开:
- Base URL:
https://taotoken.net/api - API Key:
YOUR_API_KEY - 模型 ID:
YOUR_MODEL_ID
3. Dify 的 LLM 节点和 Agent 节点:Base URL、Key、模型 ID 三件套
Dify 里最稳的接法是用 OpenAI-API-compatible 模型供应商。
进入 Dify 后:
- 打开右上角头像,进入设置;
- 找到模型供应商;
- 选择 OpenAI-API-compatible;
- 按下面表格填写。
| 配置项 | 填写值 | 说明 |
|---|---|---|
| 模型类型 | LLM | 如果后面要用 Agent,也先确保 LLM 可用 |
| 模型名称 | YOUR_MODEL_ID | 从 TaoToken 模型广场复制,不要填展示名 |
| API Key | YOUR_API_KEY | 在 TaoToken 控制台创建 |
| Base URL | https://taotoken.net/api | 末尾不要加/v1,也不要加斜杠 |
| 上下文长度 | 按模型广场说明填 | 不确定时先用默认或模型标注值 |
保存后,Dify 可能会尝试拉取模型列表。如果它没有自动列出模型,不代表 Key 不可用,手动把YOUR_MODEL_ID填进模型名称即可。
接下来配置工作流:
- 在 LLM 节点里,模型选择刚添加的 TaoToken 供应商和对应模型;
- 在 Agent 节点里,同样选择这个模型供应商和模型;
- 如果 Agent 节点要调用工具,模型是否支持 function calling、工具调用或多模态,以模型广场标注能力为准;
- 不要一个节点用 TaoToken,另一个节点还指向旧平台,否则调试时很难判断是 Agent 逻辑问题还是模型接入问题。
这一步完成后,Dify 里所有 LLM 请求都会走https://taotoken.net/api,Key 也统一用 TaoToken 的 Key。
4. Codex 的 config.toml:把 TaoToken 写成 model_provider
Codex 使用config.toml管理模型供应商。文件位置通常是:
- macOS / Linux:
~/.codex/config.toml - Windows:
%USERPROFILE%\.codex\config.toml
如果目录不存在,先创建.codex目录,再新建config.toml。
示例配置如下:
model = "YOUR_MODEL_ID" model_provider = "taotoken" [model_providers.taotoken] name = "TaoToken" base_url = "https://taotoken.net/api" env_key = "TAOTOKEN_API_KEY" wire_api = "chat"这里的关键点:
model填 TaoToken 模型广场里的模型 ID;model_provider填taotoken,与下面的[model_providers.taotoken]对应;base_url填https://taotoken.net/api;env_key填环境变量名,不是 Key 本身;wire_api按 Codex 当前版本支持填写,示例用chat。
然后设置环境变量。
macOS / Linux:
export TAOTOKEN_API_KEY="YOUR_API_KEY"Windows PowerShell:
$env:TAOTOKEN_API_KEY="YOUR_API_KEY"如果你希望每次打开终端都生效,把 export 或$env:写入对应的 shell 配置文件或系统环境变量。注意:Codex 配置里不要用ANTHROPIC_*变量套 Codex,Codex 读取的是你env_key指定的变量名。
配置完成后,在终端进入一个项目目录,运行:
codex然后输入一句简单请求,例如“只回复 OK”。如果 Codex 能返回内容,说明config.toml里的base_url、env_key和模型 ID 已经连通。
5. 验证请求:一次 Dify 测试和一次 Codex 对话
配置不要只看保存成功,要各做一次最小验证。
Dify 侧:
- 回到模型供应商页面,点测试;
- 如果测试按钮不可用,创建一个聊天助手应用;
- 模型选择 TaoToken 下刚配置的模型;
- 发送“请只回复 OK”。
成功结果:模型返回OK或类似短回复,Dify 日志里能看到本轮模型调用。若返回模型不存在,回到模型广场重新复制模型 ID。
Codex 侧:
- 确认终端已经设置
TAOTOKEN_API_KEY; - 运行
codex; - 输入“只回复 OK”。
成功结果:Codex 不再提示model_not_found,也没有把请求发到默认 OpenAI 地址。如果能看到回复,说明 Codex 已经通过 TaoToken 调用 LLM。
Dify 和 Codex 两个入口都通了,后面的 Agent 工作流、MCP 工具接入、可观测配置就有稳定的模型底座。
6. 接入配置常见错误与排查:Dify 拉不到模型、Codex model_not_found、环境变量未生效
这一节只列本篇相关的接入错误。
6.1 Dify 保存成功但拉不到模型列表
先检查 Base URL 是否写成了:
https://taotoken.net/api/v1或者末尾多了/。按本文约定,Dify 的 Base URL 填:
https://taotoken.net/api末尾不要带/v1。如果 Dify 插件内部还会拼一次路径,重复的/v1会导致模型列表请求失败。
6.2 Dify 模型名称填成了展示名
模型名称必须填模型 ID。展示名里可能有空格、大小写差异或中文描述,这些都不适合作为model字段。回到模型广场复制模型 ID,替换YOUR_MODEL_ID。
6.3 Dify 工作流里 Agent 节点仍走旧供应商
LLM 节点配置好了,不代表 Agent 节点自动切换。打开 Agent 节点,确认模型供应商选择的是 TaoToken 那一项,模型也选择 TaoToken 下的模型。否则会出现“聊天助手能用,工作流一跑就失败”的情况。
6.4 Codex 报 model_not_found
按顺序检查:
config.toml里的model是否等于模型广场的模型 ID;model_provider是否与[model_providers.taotoken]一致;base_url是否为https://taotoken.net/api;- 修改配置后是否重新打开 Codex。
模型 ID 里多一个空格、少一个字符,都会导致找不到模型。
6.5 环境变量没有生效
env_key = "TAOTOKEN_API_KEY"只告诉 Codex 去读哪个环境变量,它不会自动帮你设置值。你需要在当前终端执行:
export TAOTOKEN_API_KEY="YOUR_API_KEY"然后确认当前终端能读到:
echo $TAOTOKEN_API_KEY如果是 Windows PowerShell,用$env:TAOTOKEN_API_KEY。设置后新开终端再运行 Codex,避免旧终端没有继承变量。
6.6 Key 被写进公开位置
不要把YOUR_API_KEY换成真实 Key 后提交到 Git,也不要写进前端代码、截图或公开文档。Dify 和 Codex 需要 Key,但 Key 应保存在控制台可管理的位置和本地环境变量中。一旦泄露,去 TaoToken 控制台重新生成。
7. 下一步:把同一把 TaoToken Key 继续用到 Claude Code / CC Switch
你现在已经完成 Dify 的 LLM 节点、Agent 节点,以及 Codexconfig.toml的模型接入:Base URL 都是https://taotoken.net/api,Key 都来自 TaoToken,模型 ID 都从模型广场复制。接下来最顺手的动作,是把同一套接入习惯迁移到 Claude Code 或 CC Switch。
先去 TaoToken 控制台创建或复制 API Key:
https://taotoken.net/console/api-keys?utm_source=taotoken_aicg_blog_end&utm_content=api_keys&utm_campaign=rewrite
然后对照 Claude Code 接入文档,把settings.json或相关环境变量改成 TaoToken 的 Key 与 API 基址:
https://taotoken.net/doc/ClaudeCodeAnthropic?utm_source=taotoken_aicg_blog_end&utm_content=claude_code_doc&utm_campaign=rewrite
如果你准备长期用 Agent 跑编码任务、MCP 工具链或自动化工作流,再看 Coding Plan 的配置方式:
https://taotoken.net/coding-plan?utm_source=taotoken_aicg_blog_end&utm_content=coding_plan&utm_campaign=rewrite
先把接入配置固定下来,再继续 AI Agent + LLM + MCP 实战里的技能池、工作流和可观测部分,后面每加一个工具,只需要沿用同一把 TaoToken Key 和同一个 Base URL。