For the complete documentation index, see llms.txt. Markdown versions of documentation pages are available by appending .md to the page URL.
主导航

错误代码

了解 API 错误代码及解决方法。

本指南概述了您在使用 API 和我们的官方 Python 库时可能遇到的错误代码。概览中提到的每个错误代码都有专门的章节,提供进一步指导。

API 错误

代码概览
400 - service_tier 参数无效原因: 项目不允许使用请求指定或最终确定的服务层级。
解决方法:service_tier 设为项目允许的层级,或在项目设置中更新允许使用的服务层级。
401 - 身份验证无效原因: 身份验证无效。
解决方法: 确保使用了正确的 API 密钥,并指定了正确的请求所属组织。
401 - 提供的 API 密钥不正确原因: 请求使用的 API 密钥不正确。
解决方法: 确保使用的 API 密钥正确,清除浏览器缓存,或生成新密钥
401 - 您必须是某个组织的成员才能使用 API原因: 您的账户不属于任何组织。
解决方法: 联系我们,让我们将您加入新组织,或请您的组织管理员邀请您加入组织
401 - IP 未获授权原因: 您的请求 IP 不在项目或组织配置的 IP 允许列表中。
解决方法: 从正确的 IP 发送请求,或更新您的 IP 允许列表设置
403 - 不支持的国家、地区或属地原因: 您正在从不受支持的国家、地区或属地访问 API。
解决方法: 请参阅此页面了解更多信息。
429 - 额度余额已用尽代码: credit_balance_exhausted
原因: 您的组织已无剩余预付额度。
解决方法: 充值额度以继续使用 API。
429 - 已达到请求速率限制原因: 您发送请求的速度过快。
解决方法: 控制请求频率,并在响应包含 Retry-After 标头时按其指示操作。请阅读速率限制指南
429 - 请降低请求速率类型: rate_limit_error
代码: slow_down
原因: 您的请求速率增长过快。
解决方法: 如果响应包含 Retry-After 标头,请按其指示操作。降低请求速率,然后逐步提高。
429 - 已达到组织支出限额代码: organization_spend_limit_exceeded
原因: 您的组织已达到强制执行的支出限额。
解决方法: 提高或取消您的组织支出限额
429 - 已达到项目支出限额代码: project_spend_limit_exceeded
原因: 您的项目已达到强制执行的支出限额。
解决方法:项目设置中提高或取消支出限额。
429 - 已达到组织用量上限代码: organization_usage_limit_exceeded
原因: 您的组织已达到 OpenAI 分配的用量上限。
解决方法: 申请提高获批的用量上限,或联系支持团队
500 - 服务器在处理您的请求时发生错误原因: 我们的服务器出现问题。
解决方法: 稍等片刻后重试请求,如果问题仍然存在,请联系我们。请查看状态页面
503 - 模型暂时过载类型: service_unavailable_error
代码: server_is_overloaded
原因: 请求的模型暂时过载。
解决方法: 如果响应包含 Retry-After 标头,请先按其指示操作,再重试请求。

对于账单相关错误,请检查 error.code 以确定具体原因。表示较宽泛错误类别的 error.type 仍可能为 insufficient_quota

遇到账单、支出或配额错误时,重试并不能恢复 API 访问。请先更新相关额度或限额,再发送请求。

WebSocket 模式错误

如果您使用的是 Responses API WebSocket 模式,还可能遇到以下错误:

  • previous_response_not_found:无法根据可用状态解析 previous_response_id。请提供完整的输入上下文,将 previous_response_id 设为 null,然后重试。
  • websocket_connection_limit_reached:连接已达到 60 分钟的时长限制。请建立新的 WebSocket 连接后继续。

Python 库错误类型

Python 会针对 429 响应抛出 RateLimitError,针对 503 响应抛出 InternalServerError。如果您的错误处理程序此前仅捕获其中一种异常类来处理限流和过载情况,请改为处理这两种异常,并检查 error.code。例如,视频服务过载时,现在返回 503,而此前返回 429。有关各端点的具体变更,请参阅迁移指南

类型概览
APIConnectionError原因: 连接我们的服务时出现问题。
解决方法: 检查您的网络设置、代理配置、SSL 证书或防火墙规则。
APITimeoutError原因: 请求超时。
解决方法: 稍等片刻后重试请求;如果问题仍然存在,请联系我们。
AuthenticationError原因: 您的 API 密钥或 Token 无效、已过期或已被撤销。
解决方法: 检查您的 API 密钥或 Token,确保其正确且处于有效状态。您可能需要在账户控制面板中生成新的密钥或 Token。
BadRequestError原因: 您的请求格式不正确,或缺少某些必需参数,例如 Token 或输入。
解决方法: 错误消息应会指出具体错误。请查阅您所调用的 API 方法的文档,确保发送的参数有效且完整。您可能还需要检查请求数据的编码、格式或大小。
ConflictError原因: 该资源已被另一个请求更新。
解决方法: 尝试再次更新该资源,并确保没有其他请求正在尝试更新它。
InternalServerError原因: 我们这边出现了问题。
解决方法: 稍等片刻后重试请求;如果问题仍然存在,请联系我们。
NotFoundError原因: 请求的资源不存在。
解决方法: 确保您使用的资源标识符正确。
PermissionDeniedError原因: 您无权访问请求的资源。
解决方法: 确保您使用的 API 密钥、组织 ID 和资源 ID 正确。
RateLimitError原因: 您已达到为您分配的速率限制,或流量增长过快。
解决方法: 控制请求发送速率,并在响应包含 Retry-After 时遵循其指示,同时遵守您的重试限制。更多信息,请参阅我们的速率限制指南
UnprocessableEntityError原因: 请求格式正确,但无法处理。
解决方法: 请重试请求。

持续出现的错误

如果问题仍然存在,请通过聊天联系我们的支持团队,并提供以下信息:

  • 您使用的模型
  • 您收到的错误消息和错误代码
  • 您发送的请求数据和请求标头
  • 请求的时间戳和时区
  • 其他可能有助于我们诊断问题的相关详情

我们的支持团队将调查此问题,并尽快回复您。请注意,由于咨询量较大,排队等待支持的时间可能较长。您也可以在我们的社区论坛发帖,但务必不要包含任何敏感信息。

处理错误

我们建议您通过程序处理 API 返回的错误。您可以参考以下代码片段来实现:

import OpenAI from "openai";

const client = new OpenAI();

try {
  const response = await client.responses.create({
    model: "gpt-6-astra",
    input: "Hello world",
  });
  console.log(response.output_text);
} catch (error) {
  if (error instanceof OpenAI.APIConnectionError) {
    console.error("Failed to connect to the OpenAI API:", error.message);
  } else if (error instanceof OpenAI.RateLimitError) {
    console.error("OpenAI API request exceeded its rate limit:", error.message);
  } else if (error instanceof OpenAI.APIError) {
    console.error("OpenAI API returned an error:", error.status, error.message);
  } else {
    throw error;
  }
}