Codex 默认使用 OpenAI 系列模型,同时支持通过兼容接口接入第三方大模型。DeepSeek是国内在代码领域表现突出的大模型,拥有 DeepSeek‑Coder、DeepSeek‑V3 等版本,具备成本低廉、中文理解优秀、国内网络访问友好等优势。本文讲解在 Codex CLI 环境下接入 DeepSeek 的完整流程、两种配置方式、模型对比、配置文件管理以及常见问题。
一、为什么在 Codex 中使用 DeepSeek
在 Codex 中接入 DeepSeek,可以降低调用成本,适配国内网络环境,兼顾日常代码开发需求。
| 优势 | 说明 |
|---|---|
| 成本更低 | DeepSeek API 计费价格显著低于 OpenAI 官方模型 |
| 国内网络友好 | 不需要特殊网络环境即可访问接口服务 |
| 代码能力优秀 | DeepSeek‑Coder 针对代码场景专项优化,适合编写脚本、业务模块、单元测试 |
| 中文支持好 | 对中文需求注释、中文业务逻辑理解效果更好 |
价格简单对比
| 模型 | 输入价格 | 输出价格 |
|---|---|---|
| GPT‑5 Codex | $2.50/1M tokens | $10.00/1M tokens |
| DeepSeek V3 | ¥1.00/1M tokens | ¥2.00/1M tokens |
| DeepSeek‑Coder | ¥1.00/1M tokens | ¥2.00/1M tokens |
注:价格会随官方政策调整,实际以 DeepSeek 开放平台最新标价为准。
二、前置准备
- 已经完成 Codex CLI 的安装,可以正常启动运行 Codex。
- 前往 DeepSeek 开放平台
platform.deepseek.com,注册账号,创建 API Key,密钥只展示一次,请妥善保存。 - 熟悉环境变量或配置文件的基础操作。
注意:新版 Codex 使用 Responses API 协议,DeepSeek原生接口为 Chat Completions,直接设置环境变量在部分版本会存在协议不兼容问题;可以使用 CCSwitch 工具做协议转换代理。
三、方式一:环境变量配置(基础方式)
通过修改系统环境变量,把 Codex 的API请求指向 DeepSeek 服务地址。
1. macOS / Linux
# 设置环境变量 export OPENAI_API_KEY="sk-你的DeepSeek密钥" export OPENAI_BASE_URL="https://api.deepseek.com"# 如果需要永久生效,写入shell配置文件
echo 'export OPENAI_API_KEY="sk-你的DeepSeek密钥"' >> ~/.zshrc
echo 'export OPENAI_BASE_URL="https://api.deepseek.com"' >> ~/.zshrc
source ~/.zshrc
2. Windows PowerShell
$env:OPENAI_API_KEY="sk-你的DeepSeek密钥"
$env:OPENAI_BASE_URL="https://api.deepseek.com"
3. 启动 Codex 并指定模型
# 使用DeepSeek‑Coder模型 codex --model deepseek-coder# 或者使用DeepSeek V3通用大模型
codex --model deepseek-chat
使用示例
export OPENAI_API_KEY="sk-deepseek-xxx"
export OPENAI_BASE_URL="https://api.deepseek.com"
cd my-project
codex --model deepseek-coder
> "为 auth 模块添加 OAuth2 登录支持"
重要提醒:切换回 OpenAI 官方模型时,务必清除
OPENAI_BASE_URL环境变量,否则会请求转发到 DeepSeek,造成调用报错。
四、方式二:CCSwitch工具实现多模型快速切换
CCSwitch 是社区开源的第三方工具,提供模型供应商配置管理,内置协议转换代理,解决 Codex Responses API 与第三方 Chat Completions 的协议差异,可以在 OpenAI 和 DeepSeek 之间一键切换,适合需要频繁切换不同大模型的开发者。
1. 安装 CCSwitch
npm install -g ccswitch
2. 添加模型提供商配置
# 添加DeepSeek配置 ccswitch add deepseek \ --api-key "sk-你的DeepSeek密钥" \ --base-url "https://api.deepseek.com" \ --model "deepseek-coder"# 添加OpenAI官方配置,用于来回切换
ccswitch add openai
--api-key "sk-你的OpenAI密钥"
--base-url "https://api.openai.com/v1"
--model "gpt-5-codex"
3. 切换模型供应商
# 切换至 DeepSeek ccswitch use deepseek# 切换回 OpenAI
ccswitch use openai# 查看当前生效配置
ccswitch current
工作流示例:
# 简单业务开发,使用DeepSeek节省成本 ccswitch use deepseek codex "修复登录页面CSS样式问题"# 复杂架构、多文件重构任务,切换回OpenAI模型
ccswitch use openai
codex "完成微服务拆分,输出架构文档"# 代码评审任务切回DeepSeek
ccswitch use deepseek
codex "对PR#15做代码质量审查"
提示:Codex切换模型之后,必须重启终端会话,同一个Thread任务内部不支持热切换模型。CCSwitch为社区开源工具,密钥存储在本地,使用前建议查阅项目源码评估安全性。
五、方式三:auth.json配置文件持久化
可以把密钥、接口地址写入Codex本地配置文件,避免每次打开终端重复设置环境变量。
- 创建
.codex配置目录,写入auth.json:
mkdir -p ~/.codex
cat > ~/.codex/auth.json << 'EOF'
{
"OPENAI_API_KEY": "sk-你的DeepSeek密钥",
"OPENAI_BASE_URL": "https://api.deepseek.com",
"model": "deepseek-coder"
}
EOF
Codex启动会自动读取该目录下的auth.json配置。
六、DeepSeek与OpenAI模型能力对比
| 维度 | DeepSeek‑Coder | GPT‑5 Codex |
|---|---|---|
| 代码生成 | 优秀 | 优秀 |
| 复杂多文件重构 | 良好 | 更强 |
| 复杂推理能力 | 良好 | 更强 |
| 中文理解 | 更好 | 良好 |
| 调用成本 | 低 | 高 |
| 响应速度 | 快 | 快 |
使用建议:普通业务代码、脚本编写、单文件调试优先使用DeepSeek;大型仓库重构、复杂架构推理,建议使用OpenAI官方Codex模型。
七、注意事项
- API协议兼容:DeepSeek提供OpenAI兼容接口,但新版Codex使用Responses API,直接环境变量配置会存在部分高级Agent特性不可用,复杂Agent任务建议搭配CCSwitch本地代理。
- 模型名称不能写错,应当使用
deepseek‑coder/deepseek‑chat,不能填写gpt系列模型名。 - 切回OpenAI官方服务时,务必清除
OPENAI_BASE_URL环境变量。 - 关注DeepSeek平台账户API余额,新用户一般会赠送免费测试额度。
- 同一条Thread会话不能中途切换模型;切换模型必须结束当前会话,重启Codex。
- DeepSeek V3上下文窗口支持128K,对于绝大多数中小型项目代码库足够使用。
八、常见问题
Q:DeepSeek可以完全替代OpenAI Codex吗?
A:日常的业务编码、单文件调试、写单元测试基本可以胜任。但是大型项目全局重构、复杂架构推理场景OpenAI模型能力更强。建议按任务复杂度灵活选择模型。
Q:配置完成但是Codex请求报错?
A:优先检查三点:①API Key是否复制完整;②Base‑URL是否填写正确;③如果是新版Codex,需要使用CCSwitch开启协议转换代理;切换模型后需要重启终端会话。
Q:可以在同一个任务会话里面来回切换模型吗?
A:不可以。模型切换需要新建Thread任务。
九、小结
Codex支持通过环境变量、配置文件、CCSwitch代理工具三种方式接入DeepSeek大模型。DeepSeek拥有更低的调用成本与优秀中文代码能力,适合日常开发;复杂工程任务建议继续使用OpenAI原生Codex模型。接入第三方模型时需要留意API协议差异,同时所有AI输出代码依然需要人工审核后再投入生产。
0 条笔记