UniterRouter
API 参考OpenAI 兼容

Chat Completions

OpenAI Chat Completions API - 通过 UniterRouter 创建 GPT-4、GPT-3.5 聊天补全。兼容 OpenAI SDK,支持流式响应和函数调用。

Chat Completions

为聊天对话创建模型响应。这是与 LLM 交互的主要端点。

端点

POST https://api.uniterouter.ai/v1/chat/completions

请求体

参数类型必填描述
modelstring是要使用的模型 ID(例如 gpt-4o、claude-3-5-sonnet-20241022)
messagesarray是包含 role 和 content 的消息对象数组
streamboolean否启用流式响应(默认:false)
temperaturenumber否采样温度(0-2,默认:1)
max_tokensinteger否生成的最大 token 数
top_pnumber否核采样参数
toolsarray否模型可以调用的工具/函数列表
tool_choicestring/object否控制工具选择行为
response_formatobject否指定输出格式(例如 JSON)

消息格式

{
  "messages": [
    {"role": "system", "content": "你是一个有帮助的助手。"},
    {"role": "user", "content": "你好!"},
    {"role": "assistant", "content": "你好!有什么可以帮助你的?"},
    {"role": "user", "content": "天气怎么样?"}
  ]
}

消息角色

角色描述
system设置助手的行为和上下文
user来自用户的消息
assistant之前的助手响应
tool工具/函数调用的结果

请求示例

curl https://api.uniterouter.ai/v1/chat/completions \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer $UNITEROUTER_API_KEY" \
  -d '{
    "model": "gpt-4o",
    "messages": [
      {"role": "system", "content": "你是一个有帮助的助手。"},
      {"role": "user", "content": "你好!"}
    ]
  }'
from openai import OpenAI

client = OpenAI(
    base_url="https://api.uniterouter.ai/v1",
    api_key="your_api_key",
)

response = client.chat.completions.create(
    model="gpt-4o",
    messages=[
        {"role": "system", "content": "你是一个有帮助的助手。"},
        {"role": "user", "content": "你好!"}
    ]
)
print(response.choices[0].message.content)
import OpenAI from "openai";

const client = new OpenAI({
  baseURL: "https://api.uniterouter.ai/v1",
  apiKey: process.env.UNITEROUTER_API_KEY,
});

const response = await client.chat.completions.create({
  model: "gpt-4o",
  messages: [
    { role: "system", content: "你是一个有帮助的助手。" },
    { role: "user", content: "你好!" },
  ],
});
console.log(response.choices[0].message.content);

响应

{
  "id": "chatcmpl-abc123",
  "object": "chat.completion",
  "created": 1699000000,
  "model": "gpt-4o",
  "choices": [
    {
      "index": 0,
      "message": {
        "role": "assistant",
        "content": "你好!今天有什么可以帮助你的?"
      },
      "finish_reason": "stop"
    }
  ],
  "usage": {
    "prompt_tokens": 20,
    "completion_tokens": 10,
    "total_tokens": 30
  }
}

流式传输

启用流式传输以逐 token 接收响应:

stream = client.chat.completions.create(
    model="gpt-4o",
    messages=[{"role": "user", "content": "给我讲个故事"}],
    stream=True
)

for chunk in stream:
    if chunk.choices[0].delta.content:
        print(chunk.choices[0].delta.content, end="")

查看流式响应指南了解更多详情。

支持的模型

UniterRouter 支持来自所有主要提供商的 200+ 模型:

  • OpenAI:gpt-4o、gpt-4-turbo、gpt-3.5-turbo
  • Anthropic:claude-3-5-sonnet、claude-3-opus、claude-3-haiku
  • Google:gemini-2.0-flash、gemini-1.5-pro
  • DeepSeek:deepseek-chat、deepseek-reasoner
  • 还有更多...

在 www.uniterouter.ai/models 查看完整列表。

How is this guide?