> ## Documentation Index
> Fetch the complete documentation index at: https://docs.mixroute.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# o3

> o3：面向複雜問題求解的推理模型。包含 MixRoute 呼叫範例與參數。

o3 是 OpenAI 推出的面向複雜問題求解的推理模型。

`o3` 同時支援 OpenAI 相容的 Chat Completions API 與 Responses API。

## 核心能力

* OpenAI 相容 - 修改 base\_url 即可使用 OpenAI SDK
* 串流輸出 - 透過 SSE 即時返回 token
* 多輪對話 - 使用帶 role 的 messages
* Responses API - 使用 input 傳入文字或結構化內容
* 推理控制 - 可為支援的模型設定 reasoning effort
* 工具呼叫 - 支援函式與託管工具定義

## 快速範例

### Responses API

<Tabs>
  <Tab title="cURL">
    ```bash theme={null}
    curl "https://api.mixroute.ai/v1/responses" \
      -H "Authorization: Bearer YOUR_API_KEY" \
      -H "Content-Type: application/json" \
      -d '{
      "model": "o3",
      "input": [
        {
          "role": "user",
          "content": "Explain quantum entanglement in simple terms."
        }
      ],
      "max_output_tokens": 256,
      "reasoning": {
        "effort": "low"
      }
    }'
    ```
  </Tab>

  <Tab title="Python">
    ```python theme={null}
    from openai import OpenAI

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

    response = client.responses.create(
        model="o3",
        input="Explain quantum entanglement in simple terms.",
        reasoning={"effort": "low"},
        max_output_tokens=256,
    )

    print(response.output_text)
    ```
  </Tab>

  <Tab title="Streaming">
    ```python theme={null}
    from openai import OpenAI

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

    with client.responses.stream(
        model="o3",
        input="Write a short poem about the sea.",
        reasoning={"effort": "low"},
        max_output_tokens=256,
    ) as stream:
        for event in stream:
            if event.type == "response.output_text.delta":
                print(event.delta, end="")
    ```
  </Tab>
</Tabs>

### Chat Completions

<Tabs>
  <Tab title="cURL">
    ```bash theme={null}
    curl "https://api.mixroute.ai/v1/chat/completions" \
      -H "Authorization: Bearer YOUR_API_KEY" \
      -H "Content-Type: application/json" \
      -d '{
      "model": "o3",
      "messages": [
        {
          "role": "user",
          "content": "Explain quantum entanglement in simple terms."
        }
      ],
      "max_completion_tokens": 256
    }'
    ```
  </Tab>

  <Tab title="Python">
    ```python theme={null}
    from openai import OpenAI

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

    response = client.chat.completions.create(
        model="o3",
        messages=[{"role": "user", "content": "Explain quantum entanglement in simple terms."}],
        max_completion_tokens=256,
    )

    print(response.choices[0].message.content)
    ```
  </Tab>

  <Tab title="Streaming">
    ```python theme={null}
    from openai import OpenAI

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

    stream = client.chat.completions.create(
        model="o3",
        messages=[{"role": "user", "content": "Write a short poem about the sea."}],
        max_completion_tokens=256,
        stream=True,
    )

    for chunk in stream:
        print(chunk.choices[0].delta.content or "", end="")
    ```
  </Tab>
</Tabs>

## 參數

### Responses API

| 參數                  | 類型              | 必填 | 說明                    |
| ------------------- | --------------- | -- | --------------------- |
| `model`             | string          | 是  | 固定為 `o3`。             |
| `input`             | string \| array | 是  | 文字或結構化輸入。             |
| `max_output_tokens` | integer         | 否  | 最大輸出 token 數。         |
| `stream`            | boolean         | 否  | 啟用 SSE 串流輸出，預設 false。 |
| `reasoning`         | object          | 否  | 推理設定，包括 effort。       |
| `tools`             | array           | 否  | 模型可以呼叫的工具。            |
| `store`             | boolean         | 否  | 是否儲存回應。               |

### Chat Completions

| 參數                      | 類型              | 必填 | 說明                       |
| ----------------------- | --------------- | -- | ------------------------ |
| `model`                 | string          | 是  | 固定為 `o3`。                |
| `messages`              | array           | 是  | 包含 role 與 content 的對話訊息。 |
| `max_completion_tokens` | integer         | 否  | 最大生成 token 數。            |
| `stream`                | boolean         | 否  | 啟用 SSE 串流輸出，預設 false。    |
| `temperature`           | number          | 否  | 模型支援時用於控制取樣隨機性。          |
| `top_p`                 | number          | 否  | 模型支援時使用的核取樣閾值。           |
| `stop`                  | string \| array | 否  | 觸發停止生成的序列。               |
| `tools`                 | array           | 否  | OpenAI 相容工具定義。           |
