本文要点
- API Key 是服务端凭据,应放在环境变量或受控密钥系统中,不能出现在前端代码、公开仓库和截图里。
- Base URL 决定请求实际发往哪个服务;官方入口与中转入口的模型、计费、日志和错误语义可能不同。
- Model 必须使用当前项目和入口真实支持的模型 ID,不能根据营销名称或旧教程猜测。
- 401、404、429、5xx、DNS、超时和 TLS 属于不同层级,应保留原始状态码与请求 ID 分层排查。
- 每轮测试只改一个变量,并使用不含敏感数据的最小请求复验。
先把 API Key、Base URL 和 Model 分开
API Key 用于证明调用方身份和项目权限;Base URL 是客户端发送请求的接口根地址;Model 是请求中指定的模型 ID。三个字段互相关联,但任何一个都不能代替另外两个。密钥有效,不代表当前入口支持你填写的模型;模型名称正确,也不代表请求发到了预期服务。
开始排查前先记录四项非敏感信息:服务提供方、接口地址的域名与路径结构、模型 ID、发生时间。真实密钥只记录所属项目和最近轮换时间,不要粘贴到工单、聊天、截图或公开日志中。
配置前只认当前服务的官方文档
OpenAI、Claude 和 Gemini 都有各自的认证方式、项目权限、模型目录和接口约定。先从当前服务的官方 API 文档创建或确认密钥,再从同一服务的模型目录复制模型 ID。不要把 A 服务的密钥、B 服务的 Base URL 和 C 服务的模型名拼成一组配置。
第三方客户端里的字段名称可能写成 API Host、Endpoint、Provider URL 或 Model Name,本质仍应映射回服务方文档。旧教程里的入口、SDK 参数或模型名可能已经变化;无法在当前官方文档或控制台核对的值,应标记为待确认,而不是继续高频重试。
Base URL 最容易错在域名、路径和重复拼接
有些客户端要求填写接口根地址,并在内部自动追加版本和资源路径;另一些客户端要求填写完整端点。如果把已经包含版本路径的地址交给会再次追加路径的客户端,可能得到重复路径并返回 404。反过来,少写必要路径也可能进入错误页面或网关。
先查看客户端文档给出的字段示例,再对照服务方当前 API 参考。只记录脱敏后的域名和路径结构,用一次最小请求确认响应来自预期服务。使用中转入口时,还要单独核对它支持的路径、模型映射、计费、日志和限速,不能默认与官方入口完全兼容。
Model 要用可调用的模型 ID,不用展示名称猜
产品页面上的展示名称不一定等于 API 请求需要的模型 ID,同一模型家族也可能有快照、区域、项目权限或逐步开放差异。优先通过官方模型目录、控制台或受支持的模型列表接口确认当前项目能调用的 ID。
出现 model not found、model unavailable 或权限不足时,先确认模型 ID 的大小写和拼写,再确认它是否属于当前 Base URL、项目和密钥。不要通过反复更换代理来处理模型未开放、项目无权限或服务端下线。
按 401、404、429、5xx 和网络错误分层
401 通常先查密钥是否完整、是否已撤销、认证头是否正确以及密钥是否属于当前项目;403 更偏向权限、组织策略或服务范围;404 要同时检查路径与模型 ID;429 要查看请求频率、Token 限额、并发、项目额度和响应中的重试提示。5xx 通常先保留请求 ID,并核对官方状态页后再决定是否重试。
DNS 解析失败、连接超时、TLS 证书错误和请求中途断开属于网络层,不能直接归因于 API Key。通用 DNS、TCP、代理认证和 TLS 检查可对照 <a href="/resources/proxy-connection-troubleshooting-checklist">代理连接失败排查清单</a>;代理地址结构不确定时先看 <a href="/resources/proxy-uri-format-explained">代理 URI 格式说明</a>。
用五分钟最小请求建立可复验证据
固定同一台机器、同一个 SDK 或命令行客户端、同一个项目和同一个网络环境,只发送不含客户资料的最小文本请求。第一次只验证认证,第二次确认模型,第三次才加入真实业务参数。每一步记录时间、HTTP 状态码、错误类型、模型 ID 和脱敏后的接口域名。
如果响应提供 request ID、速率限制剩余量或重试时间,把这些字段和原始错误一起保存。测试失败时只改一个变量;同时更换密钥、入口、模型和代理,即使偶然成功也无法知道真正原因。更完整的 AI 错误分类可继续查看 <a href="/resources/ai-relay-error-troubleshooting-guide">AI API 与中转报错排查教程</a>。
代理只解决连接路径,不解决账号和模型权限
稳定代理出口可以减少跨境开发环境中的 DNS、连接和会话波动,但不能修复无效密钥、错误模型名、余额不足、项目权限或服务方限制。代理层出现 407 时检查代理凭据;API 返回 401 时检查 API 凭据,两者不要混在一起。
需要为 AI API 文档访问和开发环境准备固定出口时,可以 <a href="/" target="_blank" rel="noopener noreferrer">访问 PuppyIP 官网</a>,购买后按 <a href="/tutorials" target="_blank" rel="noopener noreferrer">PuppyIP 使用教程</a> 配置。任何网络方案都应遵守服务方的地区、账号、速率和使用规则。
资料来源
常见问题
AI API 返回 401 应该先检查什么?
先检查密钥是否复制完整、是否已撤销、认证头是否符合官方文档、密钥是否属于当前项目和 Base URL。不要先更换模型或代理。
Base URL 要不要包含版本路径?
取决于客户端。先看客户端是否会自动追加版本和资源路径,再与服务方当前 API 文档对照;重复路径和缺少路径都可能返回 404。
Model not found 是网络问题吗?
通常先查模型 ID、Base URL、项目权限和模型是否仍可用。只有同时出现 DNS、超时或连接中断证据时,才继续排查网络层。
AI API 返回 429 是不是余额不足?
不一定。429 还可能表示请求频率、Token、并发或项目额度受限,应查看响应正文、限速响应头和服务方控制台。
API Key 可以放在网页前端或公开仓库吗?
不可以。官方文档普遍要求把密钥当作秘密,在服务端通过环境变量或受控密钥系统加载;发现泄露后应立即轮换并审计用量。
更换代理能解决所有 AI API 报错吗?
不能。代理只能影响连接路径;401、403、模型不存在、项目无权限、余额和限速必须在对应服务层处理。