API リファレンス

POST /v1/chat/completions

LLMs Text

POST /v1/chat/completions

OpenAI 互換プロトコルで、フィールドは公式 API と一致します。想定用途:

  • 公式 OpenAI SDK(openai-python / openai npm)
  • base_url 設定に対応する OpenAI 互換クライアント
  • Cursor、Cline、Continue などの IDE プラグイン
  • LangChain、LlamaIndex などのフレームワーク

エンドポイント

POST https://relay.4aicode.com/v1/chat/completions

リクエスト

POST /v1/chat/completions HTTP/1.1
Host: relay.4aicode.com
Authorization: Bearer sk-4ai-xxxxxxxxxxxxxxxx
content-type: application/json

{
  "model": "gpt-5.6-terra",
  "stream": true,
  "messages": [
    { "role": "system", "content": "You are helpful." },
    { "role": "user",   "content": "Write fizzbuzz in Go." }
  ]
}

サポートモデル

GPT-6:

モデル向いている用途
gpt-6-astra新世代フラッグシップ;短コンテキスト入力 $1.50/M、出力 $7.50/M(公式価格の 15%)
gpt-6.1-sol複雑なコーディングと長時間タスク向け GPT-6.1 フラッグシップ;$0.30/M 入力、$1.50/M 出力(定価の 15%)
gpt-6.1-terra日常コーディングと中程度の複雑さ向け GPT-6.1 バランス型;$0.15/M 入力、$0.75/M 出力(定価の 15%)
gpt-6-sol複雑なコーディングと長時間タスク向け GPT-6 フラッグシップ;$0.30/M 入力、$1.50/M 出力(定価の 15%)
gpt-6-luna高速な日常タスク向け軽量 GPT-6;$0.015/M 入力、$0.075/M 出力(定価の 15%)

GPT-5 シリーズ:

モデル向いている用途
gpt-5.6-solフラッグシップ;複雑なコーディングと長時間タスクを優先;max 推論 effort をサポート
gpt-5.6-terraコスパに優れたバランス型
gpt-5.6-luna高速・低価格;日常使用に十分
gpt-5.5前世代汎用モデル
gpt-5.4汎用
gpt-5.4-mini高速・低価格
gpt-5.3-codexコード最適化

Google Gemini:

モデル向いている用途
google/gemini-3.1-pro-previewGoogle Gemini Pro プレビュー
google/gemini-3-flash-previewGoogle Gemini Flash プレビュー
google/gemini-2.5-flash安定版 Google Gemini Flash
google/gemini-2.5-pro安定版 Google Gemini Pro

GPT-5.2 以前のモデルは上流で非推奨です。gpt-4o や gpt-4 など他モデルは、利用可能モデル一覧を含む 400 応答で拒否されます。

モデル可用性は上流サポートとサービス状態に依存します。上流がモデル非サポートを報告した場合、中継は明示的な 400 を直接返します。

無視されるパラメータ

以下は受理されますが効果はなく、SDK 互換性のためエラーになりません。

  • logit_bias
  • user
  • functions(新しい tools を使用)

応答

公式 OpenAI 応答形式に一致:

  • choices[].message.content
  • choices[].finish_reason
  • usage(prompt_tokens / completion_tokens / total_tokens)

ストリーミング形式:

data: {"choices":[{"delta":{"content":"Hello"}}]}
data: {"choices":[{"delta":{"content":", world"}}]}
data: [DONE]

完全な例

Python

from openai import OpenAI

client = OpenAI(
    base_url="https://relay.4aicode.com/v1",
    api_key="sk-4ai-xxxxxxxxxxxxxxxx",
)

resp = client.chat.completions.create(
    model="gpt-5.4",
    messages=[
        {"role": "system", "content": "You are a helpful assistant."},
        {"role": "user", "content": "Introduce yourself in one sentence"},
    ],
)
print(resp.choices[0].message.content)

TypeScript

import OpenAI from "openai";

const client = new OpenAI({
  baseURL: "https://relay.4aicode.com/v1",
  apiKey: process.env.OPENAI_API_KEY,
});

const resp = await client.chat.completions.create({
  model: "gpt-5.4-mini",
  messages: [{ role: "user", content: "hi" }],
});
console.log(resp.choices[0].message.content);

エラー

HTTP意味
400無効なフィールド / 許可リスト外のモデル
401無効なトークン
403チーム停止
429レート制限またはクォータ超過
502上流 OpenAI サービスの不安定
503上流サービスが一時的に利用不可;サービスのクールダウンとリトライ を参照

/v1/messages との違い

観点/v1/messages/v1/chat/completions
プロトコルAnthropicOpenAI
利用可能モデルすべての Claude モデルgpt-5* / google/gemini-*
必須フィールドmax_tokens—
利用量フィールドinput_tokens / output_tokensprompt_tokens / completion_tokens