# 什么是 OpenAI 兼容 API？

> OpenAI 兼容 API 实现 OpenAI 客户端使用的一个或多个 HTTP 路由与响应格式，因此应用通常只需修改 Base URL、API Key 和模型 ID，而不必替换 SDK。兼容性取决于具体操作：支持 Chat Completions 不代表自动支持 Responses、向量、图像、工具或所有参数。

_最后复核 2026-08-15 · [编辑复核](https://keeprouter.com/editorial-policy#editorial-team)_

## 三项配置变化

多数兼容 SDK 迁移从这里开始：

```python
client = OpenAI(
    base_url="https://keeprouter.com/v1",
    api_key="sk-kr-your-key",
)
```

请求仍使用 `chat.completions.create` 等 SDK 方法，但模型必须是该路由可用的 canonical ID。[模型目录](/models)是路由与 ID 的当前权威，[OpenAPI 文档](/api/openapi.json)描述网关契约。

## 兼容性检查清单

确认准确端点、认证头、请求字段、流事件顺序、终止用量、工具续轮、错误体、超时行为和输出 token 上限。应运行真实生产 payload：供应商可能接受简单消息，却拒绝工具、图像、推理或结构化输出字段。

## Chat Completions 与 Responses 是两套接口

Chat Completions 使用消息数组和 choice 形态响应；Responses API 使用不同顶层对象、输入输出 item、推理选项和语义流事件。网关可以同时支持两者，但模型必须在客户端调用的路由上有合格线路。

## 改 Base URL 不能承诺什么

它不能保证 tokenization、安全行为、工具质量、上下文处理、延迟或输出一致。供应商专用参数可能被忽略、转换或拒绝。应把语法兼容当作接入加速器，并用评测决定模型是否可接受。

## 迁移顺序

先测确定性非流式，再测流式，再测工具或结构化输出，最后测代表性工作负载。把 Base URL 与模型放进配置，限制 Key，并保留旧路径直到证明回滚。

## 常见问题

### 可以保留官方 OpenAI SDK 吗？

通常可以，但只限兼容服务实现的路由；修改 Base URL、Key 和模型即可。

### 兼容是否意味着完全一致？

不是。请求格式可以兼容，但能力与模型行为仍不同。

### 会包含所有 OpenAI 路由吗？

不会。每个服务和模型只支持特定路由与操作。

### 应该先测什么？

先测非流式，再测流式、工具、用量、错误和准确生产 payload。

## 参考的一手资料

1. [OpenAI API reference](https://platform.openai.com/docs/api-reference)

## 继续阅读

- [OpenAI 兼容 API](https://keeprouter.com/zh/features/openai-compatible-api.md)
- [openai sdk](https://keeprouter.com/use-cases/openai-sdk.md)
- [OpenAI 兼容 API 迁移清单](https://keeprouter.com/zh/blog/openai-compatible-api-migration-checklist.md)
- [Responses API 与 Chat Completions：按契约选择，而不是追新](https://keeprouter.com/zh/blog/responses-api-vs-chat-completions.md)

## 用线上产品验证答案

查看实时模型目录，创建限定 free 模型的 Key，并检查生成的请求证据。

[创建免费 Key](https://keeprouter.com/login?returnTo=%2Fconsole%2Fkeys%3Fmodel%3Dfree) · [实时模型与价格](https://keeprouter.com/models.md)
