聊天生成/补全
POSThttps://openrouter.co/v1/chat/completions
向选定的模型发送聊天生成/补全请求。请求必须包含"messages"数组。基础请求的所有高级选项也被支持。
请求
此端点需要一个对象。
请求头
名称 | 类型 | 必填 | 描述 |
---|---|---|---|
Authorization | 字符串 | 是 | Bearer 认证形式为 Bearer <token>,其中 token 是您的认证令牌。 |
请求体
名称 | 类型 | 必填 | 描述 |
---|---|---|---|
model | 字符串 | 是 | 要使用的模型 ID。如未指定,将使用用户的默认设置。 |
messages | 对象列表 | 是 | 包含"role"和"content"属性的消息对象列表。 |
models | 字符串列表 | 否 | 路由覆盖的替代模型列表。 |
provider | 对象 | 否 | 提供商路由的偏好设置。 |
reasoning | 对象 | 否 | 模型推理/思考令牌的配置 |
usage | 对象 | 否 | 是否在响应中包含使用信息 |
transforms | 字符串列表 | 否 | 提示转换列表(仅 OpenRouter)。 |
stream | 布尔值 | 否 | 启用结果流式传输。默认为 false |
max_tokens | 整数 | 否 | 最大令牌数(范围:[1, context_length))。 |
temperature | 双精度浮点数 | 否 | 采样温度(范围:[0, 2])。 |
seed | 整数 | 否 | 确定性输出的种子。 |
top_p | 双精度浮点数 | 否 | Top-p 采样值(范围:(0, 1])。 |
top_k | 整数 | 否 | Top-k 采样值(范围:[1, Infinity))。 |
frequency_penalty | 双精度浮点数 | 否 | 频率惩罚(范围:[-2, 2])。 |
presence_penalty | 双精度浮点数 | 否 | 存在惩罚(范围:[-2, 2])。 |
repetition_penalty | 双精度浮点数 | 否 | 重复惩罚(范围:(0, 2])。 |
logit_bias | 从字符串到双精度浮点数的映射 | 否 | 令牌 ID 到偏置值的映射。 |
top_logprobs | 整数 | 否 | 返回的顶部对数概率数量。 |
min_p | 双精度浮点数 | 否 | 最小概率阈值(范围:[0, 1])。 |
top_a | 双精度浮点数 | 否 | 替代顶部采样参数(范围:[0, 1])。 |
cURL 示例
curl -X POST https://openrouter.co/v1/chat/completions \
-H "Authorization: Bearer <token>" \
-H "Content-Type: application/json" \
-d '{
"model": "openai/gpt-3.5-turbo",
"messages": [
{
"role": "user",
"content": "生命的意义是什么?"
}
]
}'
响应
成功响应 (200)
{
"id": "gen-12345",
"choices": [
{
"message": {
"role": "assistant",
"content": "生命的意义是一个复杂且主观的问题..."
}
}
]
}
响应架构
名称 | 类型 | 描述 |
---|---|---|
id | 字符串 | 补全的唯一标识符 |
choices | 数组 | 补全选项数组 |
choices[].message | 对象 | 生成的消息 |
choices[].message.role | 字符串 | 消息的角色(通常为"assistant") |
choices[].message.content | 字符串 | 生成消息的内容 |