服务对象与地域限制
PuppyIP 仅面向海外合规企业及其授权人员提供服务,不面向中国大陆地区开放或提供代理服务。本服务仅限用于中国大陆境外的合法业务活动,严禁在中国大陆境内使用本服务。
代理 IP 或服务器位于境外,不改变上述限制。不得通过中转、转接、共享或转售向中国大陆境内的最终使用者提供本服务。使用前请阅读用户服务协议。
本文要点
- Cloudflare 对 REST POST /ai/run 的提供商凭据拒绝公布了新的响应映射:401 错误码 2009;Google Vertex 不再因这类拒绝重试提供商。
- Unified Billing 中提供商拒绝凭据会返回 503,但单独看到 503 不能证明密钥有误,仍需核对路径和错误正文。
- provider-native BYOK 只在请求未带提供商认证头时补入已存密钥;带有占位值的认证头会原样转发。
- Unified Billing 优先使用可识别的请求凭据,其次查默认 BYOK,最后才可能使用 Cloudflare 管理的计费凭据;非默认别名不会阻止这条路径回退。
先把状态码放回请求路径
Cloudflare 公布的明确范围是 REST POST /ai/run 上的提供商凭据拒绝:ElevenLabs 从原来的 HTTP 403 和 UserCredentialsError 改为 HTTP 401、错误码 2009;Google Vertex 从会触发上游重试的 HTTP 500 改为 HTTP 401、错误码 2009,且不再重试提供商;其他提供商从 HTTP 402 或提供商特定状态改为 HTTP 401、错误码 2009。
这张映射来自页面标注为 2026 年 10 月 6 日的 Cloudflare 公告;本文于 2026 年 11 月 11 日核对 BYOK 与 Unified Billing 当前文档。公告没有给出每个账号的切换时间,不能据此保证任意账号此刻返回相同响应。
不要把这张映射表套到所有 AI Gateway 端点或所有 401。先确认请求是否确实发往 REST POST /ai/run,并同时保存响应中的错误码和请求 ID。
Cloudflare 还说明,Unified Billing 中提供商拒绝凭据时会返回 HTTP 503。这个映射不代表每个 503 都是密钥错误;若没有对应的凭据拒绝证据,应继续核对请求路径、响应正文和请求日志。
分开检查网关认证与提供商凭据
在已启用认证的网关上,provider-native 请求使用 cf-aig-authorization 认证 Cloudflare AI Gateway;它不是 OpenAI、Anthropic 等上游模型的密钥。若入口认证失败,先按入口要求核对 Cloudflare 凭据,再单独检查上游提供商凭据。
provider-native BYOK 只会在请求没有提供商认证头时使用网关保存的密钥。只要请求带了提供商认证头,网关就会把该值转发给提供商;占位文本同样会被转发并导致认证失败。要使用已存 BYOK,请移除提供商认证头,但保留 cf-aig-authorization。
确认 BYOK 密钥保存和查找位置
BYOK 密钥由 Secrets Store 保存。配置前,确认网关已经认证,并且操作者具备创建和部署 Secrets Store 密钥的权限;控制台路径为 AI、AI Gateway、目标网关、Provider Keys、Add API Key,选择提供商并填写密钥后保存。
删除已存密钥会立即使依赖它的请求停止工作。删除前先准备替代密钥或其他凭据路径;文档没有承诺删除或替换过程一定不会中断请求。
检查 Unified Billing 的凭据优先级和别名
在 Unified Billing 路径上,AI Gateway 先使用该提供商和端点能识别的请求凭据;没有时再查网关中该提供商的 default BYOK 密钥;两者都没有且允许回退时,才使用 Cloudflare 管理的凭据并从 Unified Billing 余额扣费。
提供商原生端点对凭据头的识别也有差异。例如 Anthropic Messages 识别 x-api-key,不把 Authorization: Bearer 当作该端点的提供商凭据;单独发送 Bearer 头不会阻止已存密钥查找或 Unified Billing 回退。
cf-aig-byok-alias 只为直接 provider-passthrough 请求选择非默认别名。env.AI.run() 和 /ai/v1/chat/completions 等 Unified Billing 路径只查 default;如果缺少 default,即使存在 production 或 testing 别名,请求仍可能回退到 Unified Billing。
按需要关闭第三方提供商回退
要阻止第三方提供商请求回退到 Unified Billing,可在网关开启 Require provider credentials;API 配置字段为 byok_only: true。只限制单个第三方请求时,可发送请求头 cf-aig-no-wholesale: true;该请求头不能放宽已启用的网关设置,设为 false 也不会解除网关要求。
启用该要求后,如果请求和网关都没有适用的提供商凭据,请求会以 HTTP 400、错误码 2044 结束,而不是使用 Cloudflare 管理的凭据。这与提供商拒绝已有凭据后的 401 错误码 2009 是两种不同情况;Workers AI 请求不使用提供商凭据,此设置也不会阻止它们或改变其计费模式。
重试前只核对一个路径:确认入口类型、提供商认证头是否缺失、Unified Billing 是否有默认 BYOK,以及响应是否带有 2009 或其他错误码。修正已确认的问题后发送一次最小请求;排查日志时记录请求 ID 和使用的凭据路径,不要记录或分享密钥。 更换代理出口不能修正被提供商拒绝的密钥,也不改变平台资格、费用或使用规则。
资料来源
常见问题
回退到 Unified Billing 后,会产生哪些费用?
Cloudflare 管理的第三方提供商请求会使用 Unified Billing 余额。按本次核对的文档,购买额度收取 5% 手续费,例如购买 100 美元额度会被收取 105 美元;提供商推理价格原价传递,不额外加价。不要把这与自带提供商密钥的独立账单混为一谈,也不要假设错误响应代表已扣费;具体费用需核对实际计费记录。
用 API 创建 BYOK 后,运行时会按 secret_id 找密钥吗?
不会。Secrets Store 密钥名应为 {gateway_id}_{provider_slug}_{alias},并与提供商配置中的 provider_slug 和 alias 相同;AI Gateway 运行时查找依赖这套命名,而不是 Secrets Store 返回的 secret_id。