Codex
让 Codex 调用 GPU 跑训练:MCP 接入、超时与预算上限的实操配置
Codex 本身没有 GPU,但可以通过 MCP server 把任务发到外部算力平台。这篇以 Nodus 为例,讲清该用哪个 Codex 入口、config.toml 里两个关键设置,以及怎么按小时费率给每个任务算花费上限。
今天就能做
- 在本地 Codex 会话里用 codex mcp add 接入算力平台,别从 cloud 任务发起,云端默认断网且会清掉密钥。
- 把 tool_timeout_sec 从默认 60 调到 330,并对产生付费任务的工具单独开审批。
- 按「小时费率 × 预计小时 × 1.25」给每个 Job 设 maxCostUSD,并把这条规则写进 AGENTS.md。
先搞清楚 Codex 能不能碰 GPU
- Codex CLI、IDE 扩展、ChatGPT 桌面版都在你本机跑,Codex cloud 任务跑在容器里(默认 codex-universal 镜像),官方文档只讲语言、依赖和安装脚本,没有 GPU 访问。
- 可行路径是给 Codex 一个能调用的工具,MCP 是标准做法。同一台机器上 CLI、IDE 扩展、桌面版共用一份 MCP 配置,加一次三处都能用。
- 不建议从 Codex cloud 任务发起:云端默认关闭 agent 联网,且进入 agent 阶段前密钥会被移除,而调算力 API 恰恰需要凭证。更稳的分工是云端写和测训练代码,本地会话发起运行。
接入 Nodus:托管版还是本地版
- 托管版:codex mcp add nodus --url 指向托管地址,再用 codex mcp login nodus 走浏览器登录。
- 本地版:codex mcp add nodus -- nodus mcp,用本机的 nodus 登录态。
- 差别很实际:只有本地 server 带 upload_source、download_output、cp 这些碰本机文件的工具,托管版读不到你的笔记本。想让 Codex 把仓库传上去跑,选本地版。
- 无浏览器的远程机器上,加 --no-browser 会打印一个链接,在别处打开后把跳转地址粘回终端。
config.toml 里两个必须改的设置
- 工具超时:Codex 默认每次 MCP 调用只等 60 秒(tool_timeout_sec)。Nodus 的 exec 在运行中的 Job 里执行命令最长 300 秒,默认值下会被 Codex 提前掐断。
- 作者设成 330 秒,即 300 秒上限加 30 秒余量。
- 审批模式:default_tools_approval_mode 设为 writes,服务端没标只读的工具都会弹确认;再对 apply 单独设 approval_mode = prompt,因为它是真正产生付费任务的工具。
- Nodus 自己还有一层:首次 apply 只返回带预估费用和 etag 的 dry run,确认前费用变了就创建失败。但 delete、exec、set_state 不走这个握手,所以 Codex 侧的审批要一直开着。
按小时费率算花费上限
- 每个 Job 都设 maxCostUSD,按单次运行来算,不要一个总数管所有。到上限时 Job 会打 checkpoint 并挂起,原因记为 MaxCostReached,提高上限可从 checkpoint 续跑。
- 同样 25 美元在不同卡上时长差很多:L4 每小时 0.43 美元约 58 小时,A100 80GB 每小时 1.09 美元约 23 小时,单张 H100 每小时 2.60 美元约 9.6 小时,8 张 H100 每小时 20.80 美元只剩约 1.2 小时。
- 作者的经验公式:上限 = 小时费率 × 预计小时数 × 1.25。单张 H100 跑 3 小时即 2.60 × 3 × 1.25 ≈ 9.75 美元。
- 把这条规则写进项目的 AGENTS.md,让 Codex 建 Job 时自动套用,并要求 apply 前先展示预估、未经询问不得提高上限。
第一次跑:小到出错也只花几分钱
- 用一张 L4、1 美元上限、10 分钟超时起步。提示词里明确要求:先展示要上传的源码和费用预估,等我批准再创建,成功后跟踪 Job 并下载输出。
- Codex 会依次调 whoami、用 explain 读 Job schema、上传源码、返回 dry run;批准后用 wait 和 logs 跟踪。L4 每小时 0.43 美元,10 分钟约 7 美分。
- 日志返回时被标记为不可信内容,程序打印的文字不会被当成对 Codex 的新指令。
- 收回权限:在控制台 Settings 的 Connected agents 里删授权,或用命令行删 oauthgrant,30 秒内生效。想限制可见工具,可在授权页选 scope,也可在 config.toml 里用 enabled_tools / disabled_tools 做白名单和黑名单。
原文:Can OpenAI Codex run GPU jobs, and how do you set it up?
来源:DEV Community · 2026-11-05
查看原文本文由 AI 阅读原文后整理,未经人工逐字核对,内容以原文为准。
登录后可以点赞、查看和发表评论