> ## 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.

# GPT 6.1 Sol

> 複雑なコーディング、computer use、専門業務向けのOpenAI推論モデル。テキストと画像の入力に対応。

複雑なコーディング、computer use、専門業務向けのOpenAI推論モデル。テキストと画像の入力に対応。

正確なモデルIDである`gpt-6.1-sol`を使用してください。これは`gpt-6-sol`とは別のモデルです。IDを変更する際は、推論とツール呼び出しの設定も確認する必要があります。

## モデル情報

| フィールド | 説明 |
| - | - |
| `model` | gpt-6.1-sol |
| `context` | 1,050,000トークン |
| `max output` | 128,000トークン |
| `input` | テキストと画像。ネイティブの音声入力や動画入力には対応していません。 |
| `output` | テキスト。対応エンドポイントを通じて、構造化出力と関数呼び出しに対応します。 |

コンテキストと出力のサイズはモデル仕様です。実際に適用される上限、モデルの利用可否、および料金は、MixRouteアカウントとルートによって異なります。ホスト型ツールがすべてのルートで自動的に利用可能になるわけではありません。

## エンドポイントと推論

| エンドポイント | 推論フィールド | 指定可能な値 | 関数呼び出し |
| - | - | - | - |
| [Responses API](/ja/api-reference/endpoint/responses-openai) | `reasoning.effort` | `low`, `medium`, `high`, `xhigh`, `max` | 対応 |
| [Chat Completions API](/ja/api-reference/endpoint/chat-openai) | `reasoning_effort` | `low`, `medium`, `high`, `xhigh` | このモデルでは未対応 |

モデルの推論の強度のデフォルトは`medium`です。対応する最小レベルは`low`で、`none`と`minimal`は無効です。`max`では、Chat CompletionsルートではなくResponsesを使用してください。

<Warning>
  Chat Completionsのツールエラーの回避策としてreasoning\_effort="none"を使用しないでください。GPT 6.1 Solはnoneを受け付けません。ツールを使用するリクエストは/v1/responsesに移し、reasoning.effort="low"またはそれ以上の対応レベルを使用してください。
</Warning>

`temperature`、`top_p`、`top_logprobs`は省略してください。また、Chat Completionsでは`logprobs`を、Responsesの`include`では`message.output_text.logprobs`を省略してください。これらのサンプリングおよび対数確率の制御は、このモデルの推論モードと互換性がありません。

## Responsesリクエスト

呼び出す前に`MIXROUTE_API_KEY`を設定してください。

```bash theme={null}
curl --request POST "https://api.mixroute.ai/v1/responses" \
  --header "Authorization: Bearer $MIXROUTE_API_KEY" \
  --header "Content-Type: application/json" \
  --data '{
  "model": "gpt-6.1-sol",
  "input": "Explain the role of database indexes.",
  "reasoning": {
    "effort": "low"
  },
  "max_output_tokens": 1024,
  "store": false
}'
```

### Python

```python theme={null}
import os
from openai import OpenAI

client = OpenAI(
    api_key=os.environ["MIXROUTE_API_KEY"],
    base_url="https://api.mixroute.ai/v1",
)
response = client.responses.create(
    model="gpt-6.1-sol",
    input="Explain the role of database indexes.",
    reasoning={"effort": "low"},
    max_output_tokens=1024,
    store=False,
)
print(response.output_text)
```

| フィールド | 説明 |
| - | - |
| `model` | 必須。gpt-6.1-solを使用してください。 |
| `input` | 必須の入力テキスト、またはResponsesの入力項目の配列。 |
| `reasoning.effort` | low / medium / high / xhigh / max。デフォルトはmedium。 |
| `max_output_tokens` | 可視の出力と推論トークンを合わせた、任意のトークン予算。 |
| `stream` | 任意のboolean。trueでResponsesのSSEイベントを有効にします。 |
| `store` | 任意のブール値。この例では、falseでレスポンスの保存を無効にします。 |
| `tools` | 任意のResponsesツール定義。関数のフィールドはfunctionの下にネストしません。 |
| `tool_choice` | 任意のツール選択ポリシー、または名前を指定した関数オブジェクト。 |

## ツールなしのChat Completions

```bash theme={null}
curl --request POST "https://api.mixroute.ai/v1/chat/completions" \
  --header "Authorization: Bearer $MIXROUTE_API_KEY" \
  --header "Content-Type: application/json" \
  --data '{
  "model": "gpt-6.1-sol",
  "messages": [
    {
      "role": "user",
      "content": "Explain the role of database indexes."
    }
  ],
  "reasoning_effort": "low",
  "max_completion_tokens": 1024
}'
```

`input`ではなく`messages`を、ネストされた`reasoning`オブジェクトではなく`reasoning_effort`を、`max_output_tokens`ではなく`max_completion_tokens`を使用してください。テキストは`choices[0].message.content`から読み取ってください。このエンドポイントでは、このモデルに`tools`を付加しないでください。

## 関数呼び出し

```bash theme={null}
curl --request POST "https://api.mixroute.ai/v1/responses" \
  --header "Authorization: Bearer $MIXROUTE_API_KEY" \
  --header "Content-Type: application/json" \
  --data '{
  "model": "gpt-6.1-sol",
  "input": "Call lookup_status for service demo.",
  "reasoning": {
    "effort": "low"
  },
  "tools": [
    {
      "type": "function",
      "name": "lookup_status",
      "description": "Return the status of a named service.",
      "parameters": {
        "type": "object",
        "properties": {
          "service": {
            "type": "string"
          }
        },
        "required": [
          "service"
        ],
        "additionalProperties": false
      },
      "strict": true
    }
  ],
  "tool_choice": {
    "type": "function",
    "name": "lookup_status"
  },
  "include": [
    "reasoning.encrypted_content"
  ],
  "max_output_tokens": 1024,
  "store": false
}'
```

関数呼び出しは、`output`内の`function_call`項目として現れ、`name`、JSONでエンコードされた`arguments`、`call_id`を含みます。アプリケーションが引数を検証し、独自の関数を実行します。ツールを宣言するだけでは、サーバー上で実行されません。

ステートレスな後続リクエストでは、返された`output`配列全体を会話の入力に追加し、その後に、一致する`call_id`と文字列の`output`を含む`function_call_output`項目を追加します。推論項目と暗号化されたコンテンツは、すべて変更せずに保持してください。後続リクエストでは`tool_choice`を`"auto"`に戻し、モデルが関数の再呼び出しを強制されずに回答できるようにします。`output[0]`がテキストメッセージであるとは限りません。Python SDKには、テキストレスポンス用に`response.output_text`が用意されています。

```json theme={null}
{
  "type": "function_call_output",
  "call_id": "CALL_ID_FROM_RESPONSE",
  "output": "{\"service\":\"demo\",\"status\":\"ok\"}"
}
```

## GPT 6 Solからの移行

1. `model`を`gpt-6.1-sol`に変更してください。GPT 6 Solを使用する意図がある場合にのみ、古いIDを維持してください。
2. `none`または`minimal`を`low`に置き換えるか、対応するより高い推論レベルを選択してください。
3. 関数ツールを使うワークフローをChat CompletionsからResponsesに移行し、Responsesの入力／ツール形式を使用してください。
4. 未対応のサンプリングパラメータを削除してください。推論強度を最大にするには、Responsesを使用します。


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.