原因
Codex 默认是使用 websocket 协议,在 websocket 重连等待五次(并且每次的超时时间足足有20s)之后才会切换到可以正常通信的 HTTP 协议,至于 websocket 协议为什么不通,可能是代理不支持 websocket 协议。
解决方案
方案一
在 codex 的配置文件, ~/.codex/config.toml(windows对应目录C:\Users\Administrator\.codex)的开头(保证层级在最外层)增加以下内容:
javascript
model_provider = "openai_https"
[model_providers.openai_https]
name = "OpenAI"
requires_openai_auth = true
supports_websockets = false
方案二
使用 TUN 模式代理。