上周 OpenAI 给 Codex CLI 推了个更新,正式支持接入第三方模型。这事在开发者群里聊得挺多——之前的 Codex 只能调自家的 GPT,现在 DeepSeek、Claude、GLM 全都能上了。

我拿到更新当晚就试了,这篇把配置步骤、踩的坑、实测结果都记下来。


这个更新到底改了啥

简单说就是 Codex CLI 现在允许你在配置文件里指定自定义的 API 地址和模型。不再是"只能用 GPT"。

改动在配置层,CLI 本身的自动编程、终端交互、文件操作这些能力都没变,只是底层的模型调用换成可插拔了。

官方文档给了两种做法:

方式一:改 base_url(最简单)
只改 OpenAI 兼容 API 的地址,其他不动。

方式二:自定义 Provider(更灵活)
给不同模型配不同的 Provider,可以独立控制 API Key 和请求头。

建议先用方式一跑通,再按需切方式二。


配置流程,一步步来

第一步:找到配置文件

Codex CLI 的配置文件在 ~/.codex/config.toml。没有的话直接新建一个。

mkdir -p ~/.codex
touch ~/.codex/config.toml

第二步:方式一,改 base_url

如果你的 API 中转站用的是 OpenAI 兼容格式,这个最省事:

# ~/.codex/config.toml
openai_base_url = "https://www.aifast.club/v1"

# 指定模型
model = "deepseek-v4"

如果配置后启动报错,最常见的原因是模型名不对。换一个支持的模型名试试就行。

第三步:方式二,自定义 Provider

需要在多个模型之间切换,或者不同模型用不同的 API Key,用这个:

# ~/.codex/config.toml
model = "claude-sonnet-4"
model_provider = "myrelay"

[model_providers.myrelay]
name = "API Relay"
base_url = "https://www.aifast.club/v1"
env_key = "OPENAI_API_KEY"

env_key 指向环境变量 OPENAI_API_KEY,Key 放那里就行。Provider 名字自己取,但不能用 openaiollamalmstudio 这三个。

第四步:验证

启动 Codex CLI,随便问个问题试试:

codex "用 Python 写一个斐波那契数列生成器"

返回正常就说明配置成了。报 HTTP 错误或超时的,多半是 base_url 或模型名的问题。


实测对比

我试了四个模型在 Codex CLI 上跑同样的编程任务:

模型 代码生成速度 首次正确率 复杂逻辑能力
GPT-5.4(官方原版)
Claude Sonnet 4 很强
DeepSeek V4
GLM-5.2

几个观察:

Claude Sonnet 4 在 Codex 上跑代码生成,正确率居然不输 GPT。 特别在复杂逻辑推理的场景,Sonnet 4 的表现让人意外。之前总觉得 Claude 的强项是长文写作,测下来代码推理被低估了。

DeepSeek V4 最大的优势是便宜,但超长上下文会吃力。 日常 CRUD 和简单算法完全够用,响应也快。项目代码量大的话偶尔会出现上下文理解偏差。

GLM-5.2 最近开源后热度挺高,CodeArena 上拿了不错的分数。实际用下来中规中矩,中文理解比英文好。


踩坑实录

折腾一晚上,最大的几个坑:

模型名不对,启动就崩

Codex 内部有个模型名白名单。配的模型名不在白名单里,启动直接报错。

解决方法:先跑 codex --list-models 看看支持哪些,或者直接用方式一(openai_base_url)绕过模型名校验。

超时设置太短

中转 API 的首包延迟普遍比官方直连高一点(300ms-800ms)。Codex 默认的超时对直连优化过,接中转后频繁触发重试。

在配置里显式加一行就行:

request_timeout = 60

实测 60 秒够用。太长没必要,真超时了说明连不上。

Key 的读取顺序

Codex 读 API Key 的顺序是:环境变量 > 配置文件。如果你配置文件里配了 Key 但系统环境变量里也有一个,系统会覆盖配置文件里的。排查的时候注意这个。

上下文窗口缩水

这不是配置问题,是模型本身的限制。Codex 的 GPT 版本有 128K 上下文,切成 DeepSeek V4 后可能只有 32K。跑大项目时频繁遇到"上下文已满"的提示。我的做法是按任务切:小需求用第三方模型省成本,大项目切回 GPT。


什么时候该用第三方模型

我自己是这么分的:

  • 日常开发、CRUD、简单脚本 → 开第三方模型(DeepSeek 或 GLM),省钱
  • 复杂重构、架构设计、代码审查 → 切回 GPT 或 Claude Sonnet
  • 长项目、大量上下文 → 只能 GPT,别的模型上下文窗口不够

Codex 支持在会话中用命令动态切换模型,不用重启。我一般跑一个任务就切一次。


总结

Codex CLI 开放第三方模型接入,对开发者来说是个实在的更新。不挑模型了。

配置不复杂,改两行 config.toml 的事。就三件事注意一下:模型名别写错、超时设长一点、Key 读取顺序搞清楚。

之前因为只能用 GPT 没试 Codex CLI 的话,现在可以重新看看了。换个 base_url 就能跑 DeepSeek、Claude、GLM,选择空间大了很多。

Logo

汇聚全球AI编程工具,助力开发者即刻编程。

更多推荐