对话与消息
通过同一个网关调用 chat completions、responses 与 Anthropic messages。
OneHop 说你的 SDK 本来就用的协议。把 base URL 指向对应家族、传一个 OneHop 模型 slug, 你现有的客户端无需改动即可工作。
| 家族 | Base URL | 端点 |
|---|---|---|
| 兼容 OpenAI | https://api.onehop.ai/v1 | chat/completions、responses |
| 兼容 Anthropic | https://api.onehop.ai/anthropic | v1/messages |
| Google GenAI / Vertex | https://api.onehop.ai/vertex-ai | models/{model}:generateContent |
请求和响应体会原样透传给上游供应商。OneHop 只读取 model、stream 和少量用量元数据 ——
不改写你的 payload,所以工具调用、system 提示和消息结构的行为完全与供应商文档一致。
Chat completions(OpenAI)
curl https://api.onehop.ai/v1/chat/completions \
-H "Authorization: Bearer $ONEHOP_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "openai/gpt-5.5",
"messages": [{ "role": "user", "content": "用一句话解释预付费计费。" }]
}'import OpenAI from "openai";
const client = new OpenAI({
apiKey: process.env.ONEHOP_API_KEY,
baseURL: "https://api.onehop.ai/v1",
});
const completion = await client.chat.completions.create({
model: "openai/gpt-5.5",
messages: [{ role: "user", content: "用 OneHop 打个招呼" }],
});流式
设 stream: true,像往常一样读取 SSE。OneHop 直接把 chunk 转发,不缓冲整个响应,
并在上游结束后按真实用量结算。
curl https://api.onehop.ai/v1/chat/completions \
-H "Authorization: Bearer $ONEHOP_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "openai/gpt-5.5",
"stream": true,
"messages": [{ "role": "user", "content": "流式写一首俳句" }]
}'断开会中止上游
如果你的客户端在流中途断开,OneHop 会中止上游请求。你只为供应商实际报告的用量付费; 否则该记录会被对账或标记为失败。
Anthropic messages
推荐的 Anthropic 入口是 /anthropic/v1/messages。用 x-api-key 头,就和原生
Anthropic SDK 一样。
curl https://api.onehop.ai/anthropic/v1/messages \
-H "x-api-key: $ONEHOP_API_KEY" \
-H "anthropic-version: 2023-06-01" \
-H "Content-Type: application/json" \
-d '{
"model": "anthropic/claude-opus-4.8",
"max_tokens": 256,
"messages": [{ "role": "user", "content": "用 OneHop 打个招呼" }]
}'Responses 与 Vertex
- Responses:
POST /v1/responses(或短路径别名POST /responses),适用于基于 OpenAI Responses 协议构建的客户端。 - **Vertex / Gemini:**指向
https://api.onehop.ai/vertex-ai,以 path 里的模型调用:generateContent/:streamGenerateContent。
要查看某个模型支持哪些协议,筛选目录即可 —— /v1/models?protocol=anthropic_messages。
完整筛选项见 模型与发现。