Kimi シリーズ
Moonshot AI(月之暗面)の Kimi モデルで、Kimi K3、K2.6、プログラミング向けの K2.7 Code があります。OpenAI 互換エンドポイントで呼び出せるほか、Anthropic ネイティブエンドポイントにも対応しており、Claude Code で使えます。
目的別ガイド
モデル
モデルの全一覧とリアルタイムの価格はモデルページ を参照してください。モデル ID のプレフィックスは moonshotai/ で、省略できます。
moonshotai/kimi-k31M コンテキスト、画像入力に対応moonshotai/kimi-k2.6256K コンテキスト、画像入力に対応moonshotai/kimi-k2.7-codeプログラミング向けKimi モデルは Moonshot AI 公式(moonshot)が提供しており、一部のモデルは Azure AI Foundry、Alibaba Cloud Model Studio などのプロバイダーもあります。デフォルトでは自動で選択されます。指定方法はプロバイダールーティングを参照してください。
呼び出し例
Python
import os
from openai import OpenAI
client = OpenAI(base_url="https://api.ofox.io/v1", api_key=os.environ["OFOX_API_KEY"])
resp = client.chat.completions.create(
model="moonshotai/kimi-k3",
messages=[{"role": "user", "content": "冪等性とは何かを一文で説明してください。"}],
extra_body={"thinking": {"type": "disabled"}},
)
print(resp.choices[0].message.content)思考モード
同じ数学の問題で実測したところ、Kimi K3 はデフォルトで約 30 秒、思考を無効にすると約 3 秒でした。K2.6 はデフォルトで約 1.1 万トークンを思考して約 4.5 分かかり、思考を無効にすると約 40 秒でした。思考トークンは出力単価で課金され、数は usage.completion_tokens_details.reasoning_tokens で確認できます。
思考内容の読み取り:ストリーミングレスポンスでは delta.reasoning_content に、非ストリーミングレスポンスでは message.reasoning_details に含まれます。後者は各項目の text を順につなげてください。
Web 検索
Responses エンドポイントの tools に web_search を追加すると、モデルが自ら検索し、回答に引用元を付けます。
import os
from openai import OpenAI
client = OpenAI(base_url="https://api.ofox.io/v1", api_key=os.environ["OFOX_API_KEY"])
resp = client.responses.create(
model="moonshotai/kimi-k3",
tools=[{"type": "web_search"}],
input="Python の最新の安定版はいくつですか?",
)
print(resp.output_text)
for item in resp.output:
if item.type == "message":
for part in item.content:
for a in getattr(part, "annotations", None) or []:
print("引用元:", a.title, a.url)- 実測では Kimi K3 と K2.6 が対応しています。
outputにはreasoning、web_search_call、messageの項目が順に現れ、引用元はmessageコンテンツのannotationsに含まれます。 - 検索は回数単位で課金されます。単価はモデルページ を参照してください。
Claude Code で使う
Kimi モデルは Anthropic ネイティブエンドポイントに対応しており、アドレスは https://api.ofox.io/anthropic です。
https://api.ofox.io/anthropicmoonshotai/kimi-k2.7-codeAnthropic エンドポイントで呼び出した場合、思考内容は thinking ブロックとして返されます。Claude Code の設定手順の詳細は Claude Code の設定を参照してください。
画像入力と構造化出力
- Kimi K3、K2.6 は画像入力に対応しています。標準の
image_urlコンテンツブロックを使います。書き方は画像認識を参照してください。 response_formatはjson_schemaとjson_objectに対応しています。ツール呼び出しには標準のtoolsパラメータを使います。書き方は構造化出力を参照してください。- 繰り返されるリクエストのプレフィックスは自動でキャッシュされ、ヒット量は
usage.prompt_tokens_details.cached_tokensで確認できます。
よくあるエラー
その他の一般的なエラーはエラー処理を参照してください。
公式ドキュメント
よくある質問
Kimi のモデル ID はどう書きますか?
標準の書き方は moonshotai/kimi-k3 で、プレフィックスを省略して kimi-k3 と書くこともできます。moonshot/kimi-k3 と書くと 404 が返ります。
Kimi の思考を無効にするには?
"thinking": {"type": "disabled"} を渡します。OpenAI SDK では extra_body に入れます。K2.7 Code HighSpeed は無効化に対応しておらず、渡すと 400 が返ります。
Kimi で Web 検索はできますか?
できます。Responses エンドポイントを使い、tools に {"type": "web_search"} を追加すると、回答に引用元が付きます。実測では Kimi K3 と K2.6 が対応しています。
Claude Code で Kimi を使えますか?
使えます。ANTHROPIC_BASE_URL を https://api.ofox.io/anthropic に設定し、モデルに moonshotai/kimi-k2.7-code または moonshotai/kimi-k3 を指定します。
Kimi K2.6 が遅いのはなぜですか?
K2.6 は思考がデフォルトで有効なため、複雑な問題では 1 万トークン以上を思考して数分かかることがあります。思考が不要な場合は無効にするか、Kimi K3 に切り替えてください。