KIMI K3 API + SILLYTAVERN

The Kimi K3 API contract, without guesswork

SillyTavern can reach Kimi K3 through an OpenAI-compatible connection, but the model still has Kimi-specific rules. Start with the exact endpoint and alias, then check the request body, reasoning block, provider, and status code in that order.

Jump to the API contract

Official docs use https://api.moonshot.ai/v1 and model kimi-k3. K3 always thinks; set reasoning_effort instead of copying a K2.x thinking block.

Tabbit desktop new-tab screen with a central prompt and model picker, showing a browser chat context.

WHAT THE SOURCES ACTUALLY SAY

OpenAI-compatible does not mean parameter-identical

The official Kimi docs are precise about K3. Community search results add useful failure clues, but reports about slow replies, overthinking, quotas, or safety-shaped output are not uptime or behavior guarantees.

01

Endpoint and alias

The official quickstart uses https://api.moonshot.ai/v1 and the Chat Completions model alias kimi-k3.

02

Reasoning is part of the response

K3 always has thinking enabled. Streaming can expose reasoning_content separately from final content, and multi-turn clients may need to preserve the full assistant message.

03

Provider behavior still matters

A compatible frontend does not make every provider equivalent. Check the provider model list, alias, limits, supported fields, and whether it preserves the returned reasoning block.

THE API CONTRACT

Four checks before you touch a preset

Use this small contract to separate an authentication problem from a model-parameter problem. Keep the key in an environment variable and begin with Chat Completions.

Minimal request shape

curl https://api.moonshot.ai/v1/chat/completions \
+  -H "Authorization: Bearer $MOONSHOT_API_KEY" \
+  -H "Content-Type: application/json" \
+  -d '{"model":"kimi-k3","reasoning_effort":"high","messages":[{"role":"user","content":"Hello"}]}'

The body shows the official field names. Do not add temperature or other fixed K3 fields just because an OpenAI client accepts them.

  1. 01

    1. Base URL

    Set the OpenAI client base URL to https://api.moonshot.ai/v1. A provider proxy may use a different URL, so copy its documented base URL.

  2. 02

    2. Bearer key

    Create a Kimi API key in the Kimi API Platform and send it as Authorization: Bearer. Store it in MOONSHOT_API_KEY or the provider variable. Never paste a live key into a public preset.

  3. 03

    3. Exact model alias

    Use kimi-k3 for the official K3 API route. A display label such as Kimi K3 is not always the request slug. Confirm the alias in a third-party provider model list.

  4. 04

    4. Preserve the assistant turn

    When a response includes reasoning_content, keep the complete assistant message for the next turn. Removing fields from preserved thinking can make the next call look empty or invalid.

MODEL-SPECIFIC FIELDS

K3 uses reasoning_effort, not a copied K2.x block

The common mismatch is treating all Kimi models like one API. K3 and K2.x expose different reasoning controls and reject some familiar fields.

01

K3 reasoning

Use top-level reasoning_effort with low, high, or max. The official default is max. Thinking remains enabled.

02

K2.x thinking

The thinking object belongs to K2.x examples. Do not paste thinking: { type: enabled } into a K3 request unless your provider documents a translation layer.

03

Tools and partial mode

K3 supports tool_choice auto, none, and required. Partial mode uses an assistant message with partial=true. Keep these features separate from a SillyTavern text template.

For K3, omit temperature, top_p, n, presence_penalty, and frequency_penalty. The official reference lists them as fixed. If a provider adds controls, follow that provider documentation.

PROVIDER CHECK

The same UI can hide different contracts

Use the official row when you call Moonshot directly. For a gateway or shared endpoint, treat each value as provider-specific until its docs confirm it.

Moonshot official APIGateway or third-party provider
Base URLhttps://api.moonshot.ai/v1Use the provider URL exactly
Model fieldkimi-k3Confirm its listed slug or alias
Reasoning controlreasoning_effort: low | high | maxCheck whether it passes or remaps the field
Limits and accessKimi account tier and current limitsProvider billing, quota, RPM, TPM, and concurrency
HistoryPreserve the complete assistant messageCheck whether reasoning_content is retained

ERROR BENCH

Read the status code before rewriting the prompt

These checks map the most useful next action. They do not claim that every provider uses identical error text.

401

The key is missing, malformed, expired, or sent to the wrong host.

Inspect Authorization, the environment variable, selected provider, and account access. Rotate the key if it was exposed.

404

The URL path or model alias is not available at this provider.

Check that the base URL ends at /v1, the path is /chat/completions, and the model list contains kimi-k3 or its documented alias.

429

The request hit a rate, concurrency, quota, or account limit.

Read the provider limit page, reduce parallel turns, shorten context, and retry with backoff. A community quota report is not a universal limit.

400 or empty

The body contains an unsupported field, mismatched thinking format, or incomplete preserved assistant turn.

Remove K2.x thinking and fixed K3 parameters, validate messages, and return the assistant message including reasoning_content when required.

A LOWER-SETUP ROUTE

Use Kimi beside the page before wiring an API

If the job is to ask Kimi about a character sheet, wiki, or writing brief, Tabbit gives you a browser chat route. It is not a SillyTavern replacement and does not expose ST cards or lorebooks.

Tabbit new-tab model picker showing several model options and a multi-model toggle. This is an interface example, not proof of current Kimi availability.
01

Open the context you already have

Keep the character sheet, lore page, or draft in a tab. Tabbit can reference the visible page, a screenshot, or a local file.

Tabbit sidebar beside an article, with a summary panel and a question field for the visible page context.
02

Choose Kimi-K3 in the live picker

Select Kimi-K3 from the current Chat or new-tab model picker. The screenshots are interface examples, so check the live roster and access rules after installing.

Tabbit multi-model chat with five reply columns, including a visible Kimi-K3 column for comparison.
03

Ask, compare, and continue reading

Use the sidebar for a focused question or compare several model replies in one view. You skip endpoint wiring for this browser workflow while keeping SillyTavern for character features.

KEEP THE BOUNDARY CLEAR

SillyTavern and Tabbit solve different layers

Use the tool that matches the next task. A browser chat shortcut should not be mistaken for a character-card engine.

SillyTavernTabbit
API endpoint and keyYou configure the provider, key, alias, and templateSelect an available built-in model
Character cards and lorebooksCore SillyTavern workflowUse an open page or file as context
Reasoning diagnosticsInspect the provider response and extensionsAsk beside the page without managing API fields
Extensions and group chatSillyTavern ecosystemDifferent product surface

K3 API FAQ

Short answers for the next failed turn

What is the official Kimi K3 endpoint?+

The official quickstart uses https://api.moonshot.ai/v1 with /chat/completions. A gateway may publish a different base URL.

What model alias should I enter in SillyTavern?+

For the official Moonshot API, use kimi-k3. For a third-party provider, use the exact slug shown in its current model list.

Should I send thinking or reasoning_effort?+

K3 uses top-level reasoning_effort with low, high, or max and always has thinking enabled. The thinking object is a K2.x control.

Why is the reply slow, empty, or full of reasoning?+

K3 always reasons. Check effort, stream handling, and whether the next request preserves the complete assistant message and reasoning_content. Community speed reports are not a service guarantee.

Why did Kimi return 400 after I copied an OpenAI preset?+

Remove fixed K3 fields such as temperature and K2.x thinking configuration. Then validate the model alias, messages, and provider schema.

Can I try Kimi K3 without an API key?+

Tabbit currently shows Kimi-K3 in its model picker, so you can try the browser route without creating your own endpoint first. Access and quotas can change; confirm in the live app.

Keep SillyTavern for character depth. Use Tabbit for the quick context check.

When you need cards, lorebooks, or extensions, configure SillyTavern carefully. When you need to ask Kimi about a page, open Tabbit and choose the model from the live picker.

Available for macOS and Windows. Model access depends on the current edition and plan.

© 2026 Tabbit Browser. The AI-native browser that understands your context.