本文へスキップ

Kimi K3 は Moonshot AI の長文コンテキスト向けエージェントモデルで、OpenAI 互換のチャット呼び出しで使えます。1,000,000 トークンを読み、最大 1,048,576 を返し、推論強度は low・high・max、ツール 128 個まで、画像入力に対応します。

入力 $2.70出力 $13.50100 万トークンあたりキャッシュ入力 $0.30

プレイグラウンド

リクエストを送信

クイックスタート

例は、選択中のエンドポイントの公開パラメーター定義から作っています。API キーとサンプル素材を差し替えて、ご自身のサーバーから送信してください。

SDK・連携
POSThttps://api.spicyapi.ai/v1/chat/completions

API 認証

API キーはサーバーの環境変数 SPICY_API_KEY に保存します。Bearer 認証を使用し、JSON リクエストには Content-Type: application/json を指定してください。

Authorization: Bearer $SPICY_API_KEY
curl --fail-with-body -sN https://api.spicyapi.ai/v1/chat/completions \
  -H "Authorization: Bearer $SPICY_API_KEY" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: $(uuidgen)" \
  -d '{
  "model": "moonshot/kimi-k3/chat",
  "messages": [
    {
      "role": "user",
      "content": "Summarise the following release notes into three bullet points."
    }
  ],
  "stream": true
}' \
  | jq --unbuffered -Rrj 'select(startswith("data: ")) | .[6:] | select(. != "[DONE]") | fromjson | if .error then "\n[error] \(.error.message)\n" else (.choices[0].delta.content? // empty) end'

このモデルの入力スキーマから生成した例です。API はどのリクエストも、同じスキーマで検証します。

同じ論理リクエストには同じ Idempotency-Key を使い続けてください。通信が切れた場合は新しいキーで自動再送せず、受理済みリクエストを追跡できるよう request_id を保存します。冪等性は、過去のチャットストリームを再生するものではありません。

入力パラメーター

モデルのパラメーターは、JSON リクエスト本文の model と同じ階層に指定します。このエンドポイントでは input でラップしません。

messagesarray<object>必須

順序付きターンを最大 256 件。内容は普通の文字列か、text と image_url(detail は auto / low / high を任意指定)のパート配列です。ツールの結果は tool_call_id を付けた tool ロールのメッセージに入れます。

デフォルト値
指定なし
制約
minItems:1
maxItems:256
response_formatobject任意

出力が散文ではなく構造化データのときは、JSON オブジェクトを要求してください。

デフォルト値
指定なし
tool_choicestring | object任意

auto なら呼び出しを省けます。required は必ず呼ばせ、none はすべて禁止します。

デフォルト値
指定なし
toolsarray<object>任意

最大 128 個の関数定義。ループの最初のリクエストで宣言してください。

デフォルト値
指定なし
制約
maxItems:128
stopstring | array任意

1 件あたり 32 バイト以内の停止シーケンスを最大 4 件、文字列か配列で指定します。モデルがそのいずれかを書いた時点で応答が終わり、一致した文字列そのものは返されません。既定値はありません。単価は変わらず、途中で止まった応答は実際に生成されたトークン分だけ課金されます。

デフォルト値
指定なし
制約
minLength:1
minItems:1
maxItems:4
reasoning_effortstring任意

low / high / max、既定は max です。Moonshot が K3 について公開している段階と既定のとおりで、指定を省いたリクエストでも最も丁寧な設定になります。短く機械的なターンでは high か low に下げてください。そこで max を使っても、増えるのはほとんど出力トークンです。

デフォルト値
"max"
使用可能な値
"low""high""max"
max_tokensinteger任意

返答を 1,048,576 で抑えます。既定の 32,768 でも、ファイル丸ごとの書き直しは無音で打ち切られることがあります。成果物に合わせて設定してください。推論トークンも出力として課金されるため、想定している可視の返答より余裕を持たせてください。

デフォルト値
32768
制約
minimum:1
maximum:1048576

結果を取得

stream が false の場合、完成したチャット応答が直接返ります。choices[].message を読み取ってください。タスクのポーリングは不要です。Server-Sent Events 対応のクライアントでは stream を true にできます。

完了レスポンスの例
{
  "id": "chatcmpl_example",
  "object": "chat.completion",
  "created": 1788652800,
  "model": "moonshot/kimi-k3/chat",
  "choices": [
    {
      "index": 0,
      "message": {
        "role": "assistant",
        "content": "Here is a concise summary of the release notes."
      },
      "finish_reason": "stop"
    }
  ],
  "usage": {
    "prompt_tokens": 32,
    "completion_tokens": 14,
    "total_tokens": 46
  }
}

レスポンス例は構造を示すためのものです。usage はトークン数を示し、実際のトークン数と料金はリクエスト内容によって変わります。

SDK・連携

アプリ、ターミナル、AI アシスタント、ビジュアルワークフローで SpicyAPI を活用。接続ガイドを選んでください。

SillyTavern やロールプレイアプリで使う

SillyTavern、RisuAI、Agnai など OpenAI 互換の設定があるアプリに、下のベース URL と API キーを貼り付け、モデルに moonshot/kimi-k3/chat を選んでください。ブラウザーからの呼び出しにも対応しており、このモデルが受け付けないスライダーはエラーにならず無視されます。

Base URL: https://api.spicyapi.ai/v1
Model: moonshot/kimi-k3/chat

ComfyUI で使う

ComfyUI Manager か下のコマンドで SpicyAPI ノードをインストールしたら、SpicyAPI Chat ノードで moonshot/kimi-k3/chat を選ぶと、ComfyUI のグラフの中でこのモデルを使えます。

cd ComfyUI/custom_nodes
git clone https://github.com/spicyapi-ai/comfyui-spicyapi