NexoToken 技术指南中心
Codex config.toml 与自定义模型
理清 model、model_provider、base_url 与环境变量之间的关系,避免配置被其他层覆盖。
Codex 的 config.toml 应把模型选择与 provider 定义分开:顶层指定模型和 provider,provider 再声明 Base URL 与读取凭证的环境变量名。不要把真实 Key 写进 TOML,也不要覆盖客户端保留的内置 provider 名称;修改后用配置来源和最小任务双重验证。
适用范围
适用于使用 config.toml 长期保存 Codex 自定义 provider、模型选择和项目级覆盖规则的本地开发环境。
最后核验
操作步骤
定位用户级与项目级配置文件,记录加载优先级。
使用独立 provider ID,并把模型名与 provider 名明确分开。
需要指定思考等级时,在 config.toml 顶层、所有 [表名] 之前添加 model_reasoning_effort = "high"。单次覆盖可用 codex -c 'model_reasoning_effort="high"';CI 用 codex exec -c 'model_reasoning_effort="high"' "解释项目结构,不修改文件"。
只写环境变量名称,不把真实凭证写入 TOML。
检查项目配置是否覆盖用户配置。
重启客户端后运行最小任务并核对实际模型。
安全示例
model = "YOUR_MODEL_ID"
model_provider = "custom_api"
model_reasoning_effort = "high"
[model_providers.custom_api]
name = "Custom API"
wire_api = "responses"
base_url = "https://your-api.example.com/v1"
env_key = "OPENAI_API_KEY"常见错误与排查顺序
- 配置不生效:检查项目级文件是否覆盖用户级文件。
- provider 冲突:改用独立 ID,不覆盖内置名称。
- 读取不到 Key:确认 env_key 写的是变量名而不是变量值。
- 模型错误:从当前模型页复制完整 ID 后重新验证。
完成检查清单
- TOML 可以被解析且没有重复表。
- 真实凭证不在配置文件中。
- 加载优先级已经记录。
- 实际请求模型与配置一致。
限制与边界
- 示例字段需按当前 Codex 版本核对,旧版本文章不能替代客户端文档。
- 项目级配置只应在可信仓库中启用,不能依赖它保存个人凭证。
- 常用思考等级为 low(较快)、medium(均衡)、high(更深入);xhigh 及其他等级须由具体模型与客户端支持。不要给 GPT-4o 或图片模型套用推理参数。不传时平台不设置统一等级,客户端也可能自行发送默认值。原生请求保留该参数,但部分兼容路径会将 minimal 转为 none;特定 GPT-5.6 上下文压缩请求会将 max 转为 xhigh。跨协议转换不保证等价保留思考设置。参数被接收不代表所有模型都支持或实际采用该等级。