GPT-6 Luna による OpenAI 互換のチャット補完です。GPT-6 系でもっとも効率が高く、集中した大量のタスク向けのモデルで、1,050,000 トークンのコンテキスト、最大 128,000 トークンの出力、none から max までの reasoning_effort、画像入力、ツール呼び出しに対応します。model に gpt-6-luna を指定してください。同じモデルは /v1/responses でも提供しています。キャッシュ済みの入力は入力単価の 10 分の 1 で精算されます。 このモデルは推論の要約も返します。非ストリーミングでは choices[].message.reasoning_content、ストリーミングでは choices[].delta.reasoning_content に入ります。答え自体は常に content にあり、推論と混ざることはないので、content だけを読むクライアントは変更不要です。reasoning_effort を省略した場合、ゲートウェイはモデル既定の medium 等級で要求し、それでも要約は返ります。課金について:思考トークンは出力単価で課金され、usage.completion_tokens に含まれます。そのうち何トークンが推論だったかは usage.completion_tokens_details.reasoning_tokens で分かります。このフィールドを読むかどうかに関わらず課金されます。なお OpenAI が公開するのは推論の要約だけで、生の思考過程は出さないため、この項目は通常短くなります。 注意:このモデルは ChatGPT サブスクリプション経由の上流で提供されており、temperature / top_p / max_tokens / max_completion_tokens / frequency_penalty / presence_penalty は受け付けません。送ってもエラーにはならず、黙って無視されます。思考の深さは reasoning_effort で、出力の長さはプロンプトの書き方で調整してください。画像入力には base64 の data: URI を使ってください(公開画像の URL は上流で取得がタイムアウトすることがあります)。
📥 コンテキスト長(最大入力):1,050,000 トークン(OpenAI 公表値)。1 回の呼び出しで最大 128,000 トークンを出力できます。システムプロンプト分もこの枠に含まれます。
Playground で試す →認証
Authorization: Bearer YOUR_API_KEY Content-Type: application/json
コンソールで API Key を作成すると利用を開始できます。
リクエストボディ
| パラメータ | 種別 | 必須 | 説明 |
|---|---|---|---|
| model | string | はい | モデル ID。ここでは gpt-6-luna です。 |
| messages | array | はい | メッセージの配列。各要素は role(system/user/assistant)と content を持ちます。content は文字列のほか、画像を理解させる場合は {type:text} と {type:image_url} を並べた配列にできます(マルチモーダル / ビジョン)。 |
| stream | boolean | いいえ | SSE でストリーミング出力します。既定は false です。 |
| web_search | boolean | いいえ | true にするとウェブ検索を有効にします。モデルが答える前に、ゲートウェイがリアルタイムの検索結果でプロンプトを補強し、出典も添えます。tools に {"type":"web_search"} を入れても同じように動きます。 |
| reasoning_effort | string | いいえ | 推論の強さ:none / low / medium / high / xhigh / max。none は思考を行わず最速ですが、複数段階の問題では誤答することがあります。省略した場合、ゲートウェイはモデル自身の既定である medium で要求し、思考の要約を message.reasoning_content に返します。minimal は low として扱います。 |
| tools | array | いいえ | 関数呼び出し。OpenAI 標準の tools 配列をそのまま渡します。モデルが呼び出すと判断した場合、finish_reason=tool_calls とともに tool_calls が返ります。特定のツールを強制したいときは tool_choice と組み合わせてください。 |
| response_format | object | いいえ | 構造化出力。{"type":"json_object"} を渡すと、モデルは妥当な JSON だけを返します。 |
リクエスト例
curl https://nezhagate.com/v1/chat/completions -H "Authorization: Bearer YOUR_API_KEY" -H "Content-Type: application/json" -d '{"model": "gpt-6-luna", "messages": [{"role": "user", "content": "Hello"}], "stream": false}'レスポンス
{
"id": "chatcmpl_xxx",
"object": "chat.completion",
"model": "gpt-6-luna",
"choices": [
{
"index": 0,
"message": {
"role": "assistant",
"reasoning_content": "**Weighing the options** ... (a summary of how the model reasoned)",
"content": "Hello!"
},
"finish_reason": "stop"
}
],
"usage": {
"prompt_tokens": 11,
"completion_tokens": 105,
"total_tokens": 116,
"completion_tokens_details": {"reasoning_tokens": 43}
}
}画像入力(ビジョン)
メッセージの content 配列に画像を入れると、モデルがそれを解析します(画像についての質問、文字の読み取り / OCR など)。image_url には公開画像のリンクか、インラインの base64 データ URL(data:image/png;base64,...)を指定できます。マルチモーダル対応モデル(gpt-5.5、gemini シリーズなど)で利用できます。
curl https://nezhagate.com/v1/chat/completions -H "Authorization: Bearer YOUR_API_KEY" -H "Content-Type: application/json" -d '{"model": "gpt-6-luna", "messages": [{"role": "user", "content": [{"type": "text", "text": "この画像には何が写っていますか?"}, {"type": "image_url", "image_url": {"url": "https://example.com/photo.jpg"}}]}]}'エラーコード
エラー本文には常に error.message / error.type / error.code / error.param が含まれます。分岐は code で行ってください。一覧は接続ガイドにあります。
| HTTP | code | 説明 |
|---|---|---|
| 401 | invalid_api_key | API Key が欠落または無効 |
| 402 | insufficient_quota | 残高不足または Key が上限超過 |
| 400 | invalid_request | モデルまたはパラメータが非対応 |
| 429 | rate_limit_exceeded | 上流のレート制限 |
| 502 | upstream_error | すべての上流回線が失敗 |