Kimi K3

Connect to Kimi K3 through the OpenAI Chat Completions compatible API.

Kimi K3 uses HopBase's OpenAI Chat Completions compatible protocol. Use https://api.hop-base.com/v1 and set the model to kimi-k3.

Kimi K3 is Moonshot AI's latest flagship reasoning model: a 1M context window (1,048,576 tokens) with up to 131,072 output tokens per response, served through a self-hosted dedicated line.

Group selection and billing

  • When creating an API key in the console, set the key's group to Kimi K3 自部署专线 (Kimi K3 Dedicated Line). That key can then call kimi-k3.
  • Official list price is $3 per million input tokens and $15 per million output tokens, with cached input reads at $0.30 per million. Your effective rate is shown in the signed-in model catalog.
  • One key is bound to one group. Keys bound to other groups get a clear 404 when calling kimi-k3 — create a new key on this group, or rebind an existing key in the console.

Client fields

FieldValue
API address / Base URLhttps://api.hop-base.com/v1
API Keysk-your-key
Modelkimi-k3
API formatOpenAI Chat Completions
Context window1,048,576 tokens
Max output per response131,072 tokens

Kimi K3 serves POST /v1/chat/completions only. The upstream does not implement /v1/responses and returns "not implemented" for it, so clients that speak the OpenAI Responses protocol or the Anthropic Messages protocol cannot reach this model.

Unsupported clients

Codex CLI and Claude Code cannot use Kimi K3 today. Codex CLI needs /v1/responses, and Claude Code speaks the Anthropic Messages protocol; neither is available for this model. Use the OpenAI SDK, curl, or any client that calls chat.completions — LobeChat, Dify, Cherry Studio, and similar apps all work.

Reasoning output and prefix caching

  • Kimi K3 is a reasoning model. Responses carry a reasoning_content field holding the thinking trace, and reasoning tokens are billed as output tokens.
  • Set max_tokens to 1024 or higher. A small budget can be consumed entirely by the thinking trace, leaving a response with reasoning but no final answer.
  • Prefix caching is effective in production, matching at a 256-token block granularity. Long multi-turn agent sessions settle at an 88-96% hit rate, so keep the system prompt, tool definitions, and other fixed context at the front of the message list to reuse the cache.

OpenAI SDK / Python

from openai import OpenAI

client = OpenAI(
    base_url="https://api.hop-base.com/v1",
    api_key="sk-your-key",
)

resp = client.chat.completions.create(
    model="kimi-k3",
    max_tokens=4096,
    messages=[{"role": "user", "content": "Explain where Kimi K3 works best"}],
)
message = resp.choices[0].message
print(getattr(message, "reasoning_content", None))
print(message.content)

curl

curl https://api.hop-base.com/v1/chat/completions \
  -H "Authorization: Bearer sk-your-key" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "kimi-k3",
    "max_tokens": 4096,
    "messages": [{"role": "user", "content": "Hello, introduce yourself"}]
  }'

On this page