Chat Completions
OpenAI互換のchat completions、ストリーミング・画像・ツール呼び出し・推論制御に対応。
POST /v1/chat/completions
curl https://api.unquant.io/v1/chat/completions \
-H "Authorization: Bearer $UNQUANT_API_KEY" \
-H "Content-Type: application/json" \
-d '{"model":"glm-5.3-flash",
"messages":[{"role":"user","content":"Hello!"}]}'リクエストフィールド
modelstring必須glm-5.3-flash または qwen-3.8-flash-next。
messagesarray必須ロールは system、user、assistant、tool。コンテンツは文字列または text と image_url パーツの配列。
streamboolean返答をサーバー送信イベントとしてストリームします。
stream_optionsobject{"include_usage": true} でトークン数を含む最終チャンクを追加します。
max_tokensinteger返答の長さの上限。
max_completion_tokensintegermax_tokens と同じ。
temperaturenumberサンプリングのランダム性。
top_pnumber核サンプリング。
top_kinteger上位k個の確率トークンからサンプリング。
min_pnumberトークンの最小相対確率。
seedinteger再現可能なサンプリング用シード。
stopstring or array停止シーケンス。
frequency_penaltynumber出現頻度に基づくトークンペナルティ。
presence_penaltynumber1回でも出現したトークンへのペナルティ。
repetition_penaltynumber乗算型の繰り返しペナルティ。
toolsarrayモデルが呼び出せる関数(OpenAI形式)。
tool_choicestring or objectauto、none、required または指定した関数名。
parallel_tool_callsboolean1ターンで複数のツール呼び出しを許可します。
response_formatobjectJSON出力。
logprobsbooleanトークンの対数確率を返します。
top_logprobsintegerトークンごとに返す候補数。
ninteger1のみ: リクエストごとに1つの補完。
reasoning_effortstring両モデル: none、low または high。GLM-5.3-Flashはさらに max も指定可能。
chat_template_kwargsobject{"enable_thinking": false} などのテンプレートスイッチ。
その他のフィールドは無視されます。
レスポンス
response.choices[0].message.content使用量カウントは自分のモニタリング用に返されます。課金には使用されません。
ストリーミング
"stream": true を指定すると、返答はOpenAIのチャンク形式のサーバー送信イベントとして届き、data: [DONE] で終了します。テキストは choices[0].delta.content から読み取ってください。
画像
両モデルとも、base64データURL(data:image/png;base64,...、JPEGまたはWebP)を持つ image_url パーツとして画像を受け付けます。URLによる画像リンクはフェッチされず、400を返します。
{"role": "user", "content": [
{"type": "text", "text": "この画像を説明してください。"},
{"type": "image_url", "image_url": {"url": "data:image/jpeg;base64,/9j/4AAQ..."}}
]}ツール呼び出し
OpenAI APIと同様に tools を渡します。モデルがツールを呼び出すと、返答には finish_reason: "tool_calls" と message.tool_calls が含まれます。ツールを実行し、結果と対応する tool_call_id を持つ tool メッセージを追加して再度呼び出してください。
推論
両モデルとも回答前に推論を行い、reasoning_effort を受け付けます: 直接回答には none、軽い推論には low、難しい問題には high。GLM-5.3-Flashはさらに max もあり、デフォルトは high です。思考は reasoning_content として別途返され、content には混入しません。"thinking": {"type": "disabled"} と "chat_template_kwargs": {"enable_thinking": false} でもオフにできます。
同時実行数
プランにより、すべてのキーにまたがって同時に実行できるリクエスト数が決まります。上限を超えたリクエストは即座に429を返し、キューには入りません。実行中のリクエストには影響しません。