Skip to content

响应与错误格式

当你通过 OpenAI 兼容方式接入云桥AI时,最常见的是两类返回:

  • 正常响应
  • 错误响应

理解它们的结构,排查会快很多。

正常响应

chat/completions 为例,成功时通常会返回:

  • id
  • object
  • created
  • model
  • choices
  • usage

你最常读取的是:

text
choices[0].message.content

错误响应

当请求失败时,常见返回会包含错误对象,例如:

json
{
  "error": {
    "message": "Invalid API key provided",
    "type": "invalid_request_error",
    "code": "invalid_api_key"
  }
}

实际字段可能因错误类型略有变化,但排查时优先看三件事:

  • message:人类可读的报错说明
  • type:错误类别
  • code:更具体的错误码或平台标识

流式返回的区别

如果启用了 stream: true,返回不会是一次性完整 JSON,而是连续分片。你需要:

  • 让客户端支持读取流式数据
  • 按分片逐段处理内容
  • 不要用只支持一次性 JSON 的逻辑直接解析整段输出

排查顺序

遇到错误时,建议按这个顺序判断:

  1. HTTP 状态码是多少
  2. message 在说什么
  3. 是鉴权、额度、格式还是网络问题
  4. 这个问题在网页端、服务端、第三方客户端是否同时出现

如果你只看到“调用失败”,而没有记录原始响应体,排查会慢很多。建议在服务端保留失败响应日志,但不要泄露 Key。

云桥AI 官方文档