Claude Opus 5.5 が SeedRouter で利用できます

Kimi K3 API の使い方:キーの取得と最初のリクエスト

Kimi K3 API の使い方を解説。キーの取得、OpenAI SDK での kimi-k3 の呼び出し、推論強度の設定、ストリーミング、画像の送信、最初につまずくエラーの対処。

Markdown で読む

Kimi K3 を呼び出すには、Kimi K3 を提供するプラットフォームの API キーと、model を kimi-k3 に設定したリクエストが必要です。Moonshot AI は自社の Kimi API Platform で提供しており、初回チャージ後にモデルが使えるようになります。SeedRouter は 1 つのキーで、公式のリクエスト形式のまま従量課金で提供しています。OpenAI SDK の接続先を https://api.seedrouter.ai/v1 に向けるだけで、コードはそのまま使えます。

このガイドでは SeedRouter を使いますが、リクエストボディは Kimi 自身の API と同じです。

Kimi K3 の API キーはどうやって取得する?

  1. SeedRouter にログインし、API keys を開きます。
  2. キーを作成してコピーします。キーは一度しか表示されません。
  3. 必要なときにクレジットを追加します。新規アカウントには少額の無料残高があり、サブスクリプションはありません。

キーは SEEDROUTER_API_KEY などの環境変数に保存し、サーバーサイドのコードからのみ使ってください。

Python から Kimi K3 を呼び出すには?

Kimi K3 は Chat Completions 形式に対応しているので、公式の openai パッケージがそのまま使えます。

import os
from openai import OpenAI

client = OpenAI(
    api_key=os.environ["SEEDROUTER_API_KEY"],
    base_url="https://api.seedrouter.ai/v1",
)

completion = client.chat.completions.create(
    model="kimi-k3",
    messages=[{"role": "user", "content": "Explain context caching in one sentence."}],
)
print(completion.choices[0].message.content)

回答は content に入ります。Kimi K3 は回答の前に推論し、その推論内容は同じメッセージの reasoning_content で返されます。

Node.js や cURL から呼び出すには?

import OpenAI from "openai";

const client = new OpenAI({
  apiKey: process.env.SEEDROUTER_API_KEY,
  baseURL: "https://api.seedrouter.ai/v1",
});

const completion = await client.chat.completions.create({
  model: "kimi-k3",
  messages: [{ role: "user", content: "Explain context caching in one sentence." }],
});
console.log(completion.choices[0].message.content);
curl https://api.seedrouter.ai/v1/chat/completions \
  -H "Authorization: Bearer $SEEDROUTER_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"model": "kimi-k3", "messages": [{"role": "user", "content": "Explain context caching in one sentence."}]}'

同じキーで、kimi-k3 を Responses API(/v1/responses)や Anthropic Messages 形式(/v1/messages)から呼び出すこともできます。

推論強度はどう設定する?

Kimi K3 は常に推論し、オフにはできません。reasoning_effort で回答前にどれだけ考えるかを設定します。

completion = client.chat.completions.create(
    model="kimi-k3",
    messages=[{"role": "user", "content": "Find the bug: def avg(xs): return sum(xs) / len(xs)"}],
    reasoning_effort="high",
)
値用途
lowすばやく簡単なステップ
highほとんどのコーディングと分析
max(デフォルト)最も難しい問題

推論トークンは出力として課金され、max_completion_tokens にカウントされます。この上限はデフォルトで 131,072、最大で 1,048,576 です。同じ質問で試したところ、low の出力トークンは 25、max は 146 でした。

回答をストリーミングするには?

stream=True を追加します。推論が先に delta.reasoning_content で届き、続いて回答が delta.content で届きます。stream_options={"include_usage": True} を指定すると、最後のチャンクでトークン数を受け取れます。

stream = client.chat.completions.create(
    model="kimi-k3",
    messages=[{"role": "user", "content": "Write a haiku about latency."}],
    stream=True,
    stream_options={"include_usage": True},
)
for chunk in stream:
    if chunk.choices and chunk.choices[0].delta.content:
        print(chunk.choices[0].delta.content, end="", flush=True)

画像は送れる?

はい、base64 の data URI として送れます。Kimi K3 は公開された画像 URL を受け付けません。クイックスタートには「Vision input does not support public image URLs」(画像入力は公開画像 URL に対応していません)と書かれています。

import base64

with open("chart.png", "rb") as f:
    image = base64.b64encode(f.read()).decode()

completion = client.chat.completions.create(
    model="kimi-k3",
    messages=[{
        "role": "user",
        "content": [
            {"type": "image_url", "image_url": {"url": f"data:image/png;base64,{image}"}},
            {"type": "text", "text": "What does this chart show?"},
        ],
    }],
)

よくあるエラーとその対処法は?

エラー原因対処
temperature、top_p、n、ペナルティで 400Kimi K3 はこれらを固定している(1.0、0.95、1、0)指定しない
reasoning_effort で 400low、high、max 以外の値この 3 つのいずれかを使う
画像で 400data URI ではなく公開 URL を指定した画像を base64 で送る
401キーがない、または間違っているAuthorization ヘッダーを確認する

エラーは {"error": {"code": ..., "message": "..."}} の形で返り、失敗したリクエストには課金されません。

よくある質問

Kimi K3 API は OpenAI 互換?

はい。Kimi K3 は Chat Completions と Responses の形式に対応しているので、ベース URL とモデルを変えるだけで OpenAI SDK が使えます。Anthropic Messages 形式にも対応しています。

Kimi K3 を使うのに Moonshot のアカウントは必要?

SeedRouter では不要です。SeedRouter にログインしてキーを作成し、SeedRouter の残高から支払います。

Kimi K3 のリクエスト 1 件はいくら?

入力トークンと出力トークンごとに課金されます。最新の料金と計算例は Kimi K3 の料金ガイドにあります。

パラメータの一覧はどこにある?

Kimi K3 API リファレンスにすべてのフィールドが載っています。playground と最新の料金は Kimi K3 のページで確認できます。

関連ガイド