省流
在Codex供应商配置中添加supports_standalone_web_search = true,在New API中把CPA的渠道类型设为New API。
背景
和几个朋友合砍了一个 GPT Pro 20x 账号,放在美国的VPS上来分发,给 Codex 用。之前使用的是sub2api ,不过自从GPT升级到5.6后 web search 网络搜索工具就再也没法使用了,而且最近sub2api被Tibo点名,导致我们想换一个中转站的软件,但又想同时保留codex认证和用量记录两个功能,参考站内的一些方案选择了New API 套 Tibo推荐的CPA 这个方案,让CPA发送最终的请求。
然而搭建好后发现仍然不能使用网页搜索,网上也没有可行的解决方案,正好最近有时间了就让GPT把三者(Codex、CPA、New API)的代码全梳理了一遍,也是把 web search 修好了。问题主要出在Codex和New API配置上,CPA没有任何问题。
Codex 配置
GPT 5.5和 5.6 使用web search功能的最大不同是5.6需要使用新增的/alpha/search搜索接口(独立搜索,alpha search),而5.5使用的是responses api里面的搜索工具。而根据 OpenAI的官方文档,使用自定义provider时,需要显式配置supports_standalone_web_search = true,例如这样
model_provider = "custom"
[model_providers.custom]
name = "Custom Responses provider"
base_url = "https://example.com/v1"
env_key = "CUSTOM_RESPONSES_API_KEY"
supports_standalone_web_search = true
如果你使用 CC-Switch,就需要手动在供应商设置最底下的config.toml中手动加上这一行并保存,就像这样:

完成上述的Codex配置后,如果直连CPA,应该就可以进行网页搜索了。
之前看到网上有说必须把provider设为OpenAI才能支持联网搜索,目前实测下来不存在这个问题,加上supports_standalone_web_search就能用,可能是OpenAI最近才加上的新功能?(Wayback Machine上的记录显示是在7/20到8/9之间的某天增加的)
New API 配置
但如果连接的是New API,模型会说有web search工具,但是一进行搜索就会失败。其原因就是,尽管CPA支持,但New API的OpenAI渠道类型不支持独立搜索接口,导致搜索请求到New API就被拦截了。如果你抓包的话,会提示
channel does not support /v1/alpha/search
让GPT分析了New API的代码后,目前只有4种渠道类型支持独立搜索接口:
类型值 |
渠道类型 |
额外条件 |
|---|
57 |
ChatGPT Subscription (Codex) |
使用 Codex OAuth JSON 凭证 |
58 |
Advanced Custom (高级自定义) |
必须配置匹配 /v1/alpha/search 的路由 |
59 |
Sub2API |
上游必须实现同名接口 |
60 |
New API |
上游必须实现同名接口 |
白名单判断位于 alpha_search_handler.go,类型常量位于 channel.go。
也就是说,要想使用独立搜索接口,就必须要将渠道类型配置为以上四种。我们是要套CPA,所以Codex类型肯定不行,高级自定义配起来又太麻烦,于是我的选择就是把渠道类型设为New API,就像这样:

现在再去Codex里进行网络搜索就能成功了。
副作用
可能有佬友担心这样将CPA的渠道类型设为New API可能会有副作用,让GPT分析了一下,New API渠道类型和原来的OpenAI的主要不同如下:
- 不支持部分端点,例如
/v1/realtime,/v1/audio/*,/v1/rerank,图像编辑
- Claude/Gemini 请求会原样发送
- 不解析模型名称中的 reasoning-effort 后缀
我们很难用到上面这些端点(GPT本身好像也不支持?),而 Claude/Gemini 请求会交由CPA直接处理。所以这么一看其实对我们的使用场景几乎没有影响,如果你要用到这些功能的话可能需要谨慎切换。
经过上面一通操作之后,web search工具应该时可以使用了,可以试试问让GPT不使用浏览器进行搜索,如果能搜到东西,且思考里显示“已搜索网页”就说明web search可以使用了:
