API 参考
一个 Base URL、一个 Key,通过 OpenAI、Anthropic 和 Gemini 协议调用所有模型。
一个 OhMyGPT Key 就能通过 OpenAI、Anthropic 或 Gemini 协议调用模型列表里的所有模型。项目里现有的 SDK 不用换,只需改两项配置:Base URL 和 Key。在 API Key 页面创建 Key。
用 ohmygpt/mock 可以免费测试接入。所有对话端点都能调用它,流式和非流式均可:
curl https://api.ohmygpt.com/v1/chat/completions \
-H "Authorization: Bearer $OHMYGPT_API_KEY" \
-H "Content-Type: application/json" \
-d '{"model": "ohmygpt/mock", "messages": [{"role": "user", "content": "ping"}]}'{
"id": "chatcmpl-ohmygpt-mock",
"object": "chat.completion",
"model": "mock",
"choices": [
{
"index": 0,
"finish_reason": "stop",
"message": {
"role": "assistant",
"content": "This is a mock reply from OhMyGPT. Your integration works; switch to a real model when ready."
}
}
],
"usage": { "prompt_tokens": 15, "completion_tokens": 17, "total_tokens": 32 }
}跑通之后,把 model 换成真实的模型 ID 即可。
对话协议
每个对话模型都支持全部四种协议。你的 SDK 或工具用哪种,就选哪种:
| 协议 | 端点 | SDK Base URL | 鉴权请求头 |
|---|---|---|---|
| OpenAI Chat Completions | POST /v1/chat/completions | https://api.ohmygpt.com/v1 | Authorization: Bearer |
| OpenAI Responses | POST /v1/responses | https://api.ohmygpt.com/v1 | Authorization: Bearer |
| Anthropic Messages | POST /v1/messages | https://api.ohmygpt.com(不带 /v1) | x-api-key |
| Gemini | POST /v1/models/{model}:generateContent | https://api.ohmygpt.com,API 版本 v1 | x-goog-api-key |
Authorization: Bearer 和 x-api-key 在所有端点上都可用,所以各家 SDK 默认的请求头都能直接用。x-goog-api-key 可用于 Gemini 端点。Key 只放在其中一个请求头里发送。
协议一页说明了通过每种协议调用模型时,请求怎么发、响应长什么样。
其他端点
| 端点 | 用途 |
|---|---|
POST /v1/messages/count_tokens | 计算 Claude 请求的输入 token 数,免费 |
POST /v1/embeddings | 向量嵌入 |
POST /v1/rerank | 按查询对文档重新排序 |
POST /v1/images/generations、POST /v1/images/edits | 生成和编辑图片 |
POST /v1/audio/speech、POST /v1/audio/transcriptions | 文字转语音、语音转文字 |
POST /v1/moderations | 内容审核 |
POST /v1/ocr | 从文档中提取文字 |
POST /v1/decisions | 以结构化答案回答分类问题 |
POST /v1/systemone | TypeSafe System One 评估 |
GET /v1/models | 模型列表,无需 Key |
调用这些端点时,请选择在 GET /v1/models 中列出了该端点的模型,方法见下文。
查找支持某个端点的模型
模型列表经常变化,模型 ID 请查询获取,不要写死在代码里。GET /v1/models 的每个条目都在 protocols 中列出了该模型支持的端点:
curl -s https://api.ohmygpt.com/v1/models \
| jq -r '.data[] | select(.id | test("claude-haiku")) | [.id, ([.protocols[].path] | join(" "))] | @tsv'anthropic/claude-haiku-4-5 /v1/chat/completions /v1/responses /v1/messages /v1/models/{id}:generateContent
anthropic/claude-haiku-5-5 /v1/chat/completions /v1/responses /v1/messages /v1/models/{id}:generateContent用 ?service= 按产品类型筛选,例如 embedding、rerank、image、tts、stt、moderation 或 ocr:
curl -s "https://api.ohmygpt.com/v1/models?service=embedding" | jq -r '.data[].id'所有模型的价格见模型页面。
每个响应都带有费用
每个响应都会告诉你这次请求花了多少钱:
| 响应头 | 值 |
|---|---|
X-Cost-Credits | 本次费用,单位为 Credits(1 美元 = 250,000 Credits)。流式请求的费用在流里返回,见流式输出。 |
X-Request-ID | 请求 ID。之后可以用它查询这次请求,联系客服时也请附上它。 |
完整的调用记录见用量页面。