← 返回文章列表
统一调用API

OpenAI 兼容格式统一调用

⚠️ 待更新·2026-08-29核验 · 更新时间待核验 · 本文信息可能已过期,请以官方文档为准 更新时间:2026-08-29 · 核验状态:待更新 · 官方溯源待补

背景

2023 年以后,几乎每家新模型厂商都在自家 API 里复刻 POST /v1/chat/completions 这条 OpenAI 路径:请求体相同、响应体相同、流式 chunk 相同、错误码也尽量对齐。原因不是 OpenAI 设计最优,而是生态效应——SDK、教程、Prompt 库、Agent 框架都围绕这个协议生长。事实标准的力量大于设计标准,统一网关顺势把它作为出口协议。

核心概念

  • 请求归一:不论上游是 Claude、Gemini 还是 Llama,网关统一接受 messages / model / temperature / stream / tools 字段。
  • 响应归一:把不同家的 usage、finish_reason、tool_calls 字段名映射到 OpenAI 形状,客户端解析逻辑只写一遍。
  • 错误归一:Anthropic 的 overloaded_error、Google 的 RESOURCE_EXHAUSTED 都翻译成 HTTP 429 + OpenAI 错误体。
  • 能力探测:用 /v1/models 暴露统一别名,客户端可以列出"哪些模型支持 vision / tool_calls / json_mode"。

代码示例

# 网关里把 Anthropic 响应翻译成 OpenAI 形状
def anthropic_to_openai(resp: dict) -> dict:
    return {
        "id": resp["id"],
        "object": "chat.completion",
        "model": resp["model"],
        "choices": [{
            "index": 0,
            "message": {"role": "assistant",
                        "content": resp["content"][0]["text"]},
            "finish_reason": "stop",
        }],
        "usage": {
            "prompt_tokens": resp["usage"]["input_tokens"],
            "completion_tokens": resp["usage"]["output_tokens"],
            "total_tokens": resp["usage"]["input_tokens"]
                         + resp["usage"]["output_tokens"],
        },
    }

版本演进与兼容性梯度

OpenAI 自己也在快速演进协议,response_format 从 json_object 到 json_schema,reasoning_effort 是 o1/o3 系列独有。网关需要设计兼容性梯度:对客户端暴露最高版本协议(如支持 json_schema),但对上游不支持该字段的老模型,网关自动降级为 prompt 注入(在 system message 里说明"请输出符合以下 JSON Schema 的内容")。这种"协议适配器"模式让客户端永远只看一套最高接口,代价是网关需要维护一份"能力矩阵"映射表。

权衡与最佳实践

  • 不是所有字段都能映射:Claude 的 thinking、Gemini 的 safety_settings 没有对应 OpenAI 字段,要么放进 extra_body,要么单独留扩展头。
  • 版本锁定:OpenAI 自己也在演进协议(response_format、reasoning_effort),网关要跟住版本,否则会逐渐漂移。
  • 永远保留 escape hatch:网关应允许客户端透传 provider_params 直接打上游原生字段,不要硬封死。
  • 能力探测后路由:在 /v1/models 里暴露 supports_tools、supports_vision、supports_json_schema 等旗标,客户端按旗标选模型。

兼容 OpenAI 不是终点,而是为了让客户端"今天写的代码明天还能跑"。

🚀 立即开始:免费 API 一键调用

想要无需逐一注册、统一鉴权调用以上全部免费模型?Apishare.cc 提供统一 API Key,一个 Key 调用 100+ 模型,免费模型零成本直连。

👉 立即注册 Apishare.cc → 获取你的统一 API Key

📊 想看更多免费模型排行?查看 2026年9月 免费 LLM API 综合实力榜单 →


立即上手:APIShare 免费 API 目录


免费 API 聚合平台说明

本文涉及的模型均由 APIShare 免费 API 聚合平台 统一接入,一份 Key 调用全站模型。

相关文章

Cherry Studio 完全指南:桌面端 300+ 模型统一调用,本地知识库 + MCP 工具链零成本跑通Lobe Chat 完全指南:Web 端插件化统一调用,团队知识库与可视化工作流零代码跑通Open WebUI 完全指南:本地 Ollama + 云端免费 API 同池,隐私优先的统一调用Portkey AI Gateway 完全指南:250+ 模型企业级统一调用,缓存 + Guardrails + 可观测一站式LiteLLM Proxy 完全指南:Python 100+ 模型统一网关,OpenAI 兼容 + 智能路由零改动接入

想立即用上免费 LLM API?

APIShare 聚合全球免费 AI 接口,注册即送额度。