> For AI agents: the complete documentation index is available at https://docs.reelway.ai/llms.txt, the full documentation bundle is available at https://docs.reelway.ai/llms-full.txt.

# 对话补全


POSThttps://api.reelway.ai/v1/chat/completions鉴权:Authorization: Bearer

OpenAI 兼容;支持流式(SSE)与 OpenAI 函数工具


Reelway 的对话补全端点与 OpenAI Chat Completions API 同形:任何 OpenAI SDK 只需修改 `baseURL` 即可接入,计费走 Reelway 余额(受理时扣费,失败不计费)。

## 请求体

| 字段                                     | 类型             | 必填        | 说明                                                                                                        |
| -------------------------------------- | -------------- | --------- | --------------------------------------------------------------------------------------------------------- |
| `messages`                             | array          | 是         | 非空 OpenAI 消息数组;`developer` 角色归一为 `system`                                                                 |
| `model`                                | string         | 否         | LLM 模型 id(见[LLM 模型](https://docs.reelway.ai/api-reference/llm-models.md));缺省 `qwen3.6-35b-a3b-gguf-iq4xs` |
| `stream`                               | boolean        | 否         | `true` 时返回 OpenAI 风格 SSE 分片,以 `data: [DONE]` 结束                                                           |
| `max_tokens` / `max_completion_tokens` | integer        | 否         | 最大输出 token;后者为 OpenAI SDK 别名                                                                              |
| `temperature` / `top_p`                | number         | 采样参数,透传后端 |                                                                                                           |
| `tools` / `tool_choice`                | array / string | 否         | OpenAI 函数工具数组与选择策略                                                                                        |
| `app_source`                           | string         | 否         | 调用方标签(≤128 字,超长截断);亦可用 `X-App-Source` 头                                                                   |
| `token_type` / `billing_mode`          | string         | 否         | Sogni 兼容形状字段;统一余额计费下不改变计费路径                                                                               |

未知字段返回 `400`(`1010`,严格解码)。

:::info Sogni 兼容字段
`token_type`、`billing_mode` 在 Sogni 用于双代币与订阅计费分流;Reelway 为统一余额计费,这些字段仅作形状兼容被接受,不改变计费路径。`sogni_tools` 创意工具族为 Sogni 特有能力,Reelway 未提供。
:::

## 请求示例


**curl**

```bash
curl --fail-with-body https://api.reelway.ai/v1/chat/completions \
  -H "Authorization: Bearer $REELWAY_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "qwen3.6-35b-a3b-gguf-iq4xs",
    "messages": [
      { "role": "user", "content": "用一句话介绍 Reelway。" }
    ]
  }'
```


**OpenAI SDK**

```js
import OpenAI from 'openai';

const client = new OpenAI({
  baseURL: 'https://api.reelway.ai/v1',
  apiKey: process.env.REELWAY_API_KEY,
});

const completion = await client.chat.completions.create({
  model: 'qwen3.6-35b-a3b-gguf-iq4xs',
  messages: [{ role: 'user', content: '用一句话介绍 Reelway。' }],
});
console.log(completion.choices[0].message.content);
```


## 响应

- 非流式:OpenAI `chat.completion` 对象(`choices[0].message.content` 等)。
- 流式:OpenAI `chat.completion.chunk` SSE 分片,`data: [DONE]` 结束;网关已配置不缓冲流式响应。
- 错误:OpenAI 形状 `{ "error": { "message", "type", "code" } }`;鉴权失败 `401`,限流 `429`(附 `Retry-After`),余额/限额类拒绝 `402`(`1005` / `1013` 信封语义)。

## 与持久对话运行的关系

本端点为**无状态**调用:每次请求独立计费,对话历史由调用方维护。需要可恢复、带事件流的长时间对话(含幂等重放)请用 `POST /v1/chat/runs`,见[持久对话运行](https://docs.reelway.ai/api-reference/chat-runs.md)。
