Kimi API Models: Choose the Right Model for Your Workload

The best Kimi API model is the one that passes your workload’s acceptance test at an acceptable latency and cost. Do not choose from a static “best model” table alone. First fetch the live model inventory available to your account, then compare a small candidate set using the same prompts, tools, data, and scoring rules.

This page owns model routing and evaluation. It intentionally does not reproduce exact token prices, hard-code a changing list of public API model IDs, explain API-key creation, or repeat the first-request tutorial. Kimi Code uses a separate product endpoint and model-ID catalog, covered below only where that distinction prevents routing mistakes.

Start With the Live Model Inventory

Kimi provides an official endpoint that lists the models currently available to the authenticated Open Platform account. Use that response—not an old screenshot, copied code sample, or search-result snippet—as the starting inventory for direct API deployment decisions.

curl --request GET \
  --url https://api.moonshot.ai/v1/models \
  --header "Authorization: Bearer $MOONSHOT_API_KEY"

The response can include each available model identifier and related metadata. Save the returned identifiers in your evaluation record, but keep the final production choice in configuration rather than application code.

Official Kimi Open Platform model list showing public API model IDs
Kimi Open Platform model documentation showing public API model IDs at the time of capture. Screenshot captured September 8, 2026. Kimi Code uses a separate model-ID catalog, so K2.8 Preview is not expected to appear in this public API screenshot.

Public API model IDs are different from Kimi Code model IDs

Do not mix the Open Platform inventory with Kimi Code. The public Kimi API currently presents models such as K3, K2.7 Code and K2.6 through the Open Platform and the api.moonshot.ai base URL. Kimi Code is a separate coding product with its own endpoint and IDs. In Kimi Code, kimi-for-coding now runs K2.8 Preview with up to 1M context, while kimi-for-coding-highspeed remains K2.7 Code HighSpeed.

This means a developer should not add kimi-for-coding to an Open Platform request or conclude that K2.8 Preview is a new public API model merely because it is available in Kimi Code. For direct API work, query GET /v1/models and use an identifier returned to that account. For Kimi Code, use the current Kimi Code model configuration and the Kimi Code endpoint documented for the client.

Discover Models With Python

import os
from openai import OpenAI

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

for item in client.models.list().data:
    print(item.id)

This script prints the account’s live Open Platform identifiers without hard-coding a model name. If the request fails, fix authentication with How to Get a Kimi API Key before comparing behavior.

Group Candidates by Job Before Testing

Do not compare every returned identifier against every prompt. Build a short list by operational role. The labels below are workload roles created for this guide; map them to the current models and capabilities returned by the official platform.

Candidate roleInclude it when the workload needsExclude it when
Capability-first defaultHigh-quality reasoning, difficult knowledge work, complex agent plans, or multimodal analysisThe workload is simple and latency or cost dominates
Coding specialistRepository navigation, code edits, tests, debugging, or programming-agent loopsMost requests are ordinary support, extraction, or non-code content
General-purpose routeMixed chat, structured extraction, visual inputs, tools, and routine reasoningA specialist consistently wins on the production task
Speed-optimized routeInteractive coding or chat where output latency has a measurable user costThe speed premium does not improve conversion, completion, or operator time
Fallback routeContinuity when the primary route is unavailable or fails an agreed retry conditionIts output format, tools, context, or safety behavior is incompatible with the task

Write the Acceptance Test Before Comparing Models

A model comparison without pass/fail criteria becomes a preference contest. Define the production requirement before seeing results.

  • Input contract: representative prompt, system instruction, file type, image type, tool schema, and maximum expected context.
  • Output contract: required JSON fields, citation format, code patch, tone, language, or decision structure.
  • Quality threshold: facts that must be correct, forbidden hallucinations, and examples of an acceptable answer.
  • Operational threshold: maximum median latency, tail latency, error rate, retries, and cost per successful task.
  • Human-review rule: which failures are automatically rejected and which outputs require an operator.
  • Test set: enough normal, difficult, ambiguous, and adversarial examples to expose failure modes rather than one showcase prompt.

Run a Five-Test Bake-Off

1. Golden-answer quality

Use a set of tasks with independently verified answers or review criteria. Score correctness at the field or requirement level. Do not reward fluency when the underlying answer is wrong.

2. Structured-output and tool reliability

Run the exact schema and tools used in production. Measure valid arguments, correct tool choice, unnecessary calls, recovery after tool errors, and whether the final answer reflects the tool result.

3. Long-input retention

Place answerable facts at the beginning, middle, and end of representative inputs. Test retrieval, instruction priority, and contradiction handling. A documented context capacity does not guarantee equal use of every token.

4. Latency and stability

Measure time to first token, completion time, timeout rate, retry rate, and high-percentile latency under realistic concurrency. Run more than once; a single fast response is not a service-level result.

5. Cost per successful task

Calculate the cost of all attempts required to produce one accepted result, including retries, tool loops, cached and uncached input, and rejected outputs. Exact token prices belong on Kimi API Pricing.

Score the Results With a Workload-Weighted Matrix

This sample matrix is an editorial evaluation framework from Kimi-AI.free, not an official Kimi benchmark. Change the weights before testing so that they reflect the product—not the model you expect to win.

DimensionSample weightHow to measure
Task quality40%Percentage of required facts, fields, or review criteria satisfied
Reliability25%Valid format, correct tool use, low retry rate, and stable behavior
Latency15%Median and tail latency against the product threshold
Cost efficiency15%Cost per accepted task, including failed and retried attempts
Operational fit5%Logging, parameter compatibility, fallback behavior, and maintainability

Convert each dimension to a 0–100 score and calculate:

weighted_score = (quality * 0.40) + (reliability * 0.25) + (latency * 0.15) + (cost * 0.15) + (operations * 0.05)

Keep the raw measurements beside the final score. Two models can have similar totals while failing for different reasons; the failure profile often matters more than a one-point ranking difference.

Route by Workload

WorkloadPrimary evaluation priorityRequired test
Customer-support draftingPolicy adherence, grounded facts, latency, and consistent toneHidden policy traps, missing account data, escalation cases, and structured handoff
Document extractionField accuracy, omission rate, layout robustness, and valid JSONScanned pages, repeated labels, missing fields, and conflicting values
Coding agentPatch correctness, repository awareness, test success, and tool-loop efficiencyReal repositories, failing tests, multi-file edits, rollback, and incomplete specifications
Multimodal reviewCorrect use of visual evidence and refusal to invent unseen detailLow-quality images, charts, text in images, and intentionally absent information
Interactive assistantTime to first token, concise answers, and conversation consistencyShort turns, corrections, interruptions, and simultaneous users
Long analysisInstruction retention, evidence tracking, reasoning quality, and cost per accepted reportFacts distributed across the input, conflicting sources, and required citations

Keep the Selected Model Out of Application Code

A model identifier changes more easily when it lives in deployment configuration. Read it from an environment variable, feature flag, or controlled routing service.

import os
from openai import OpenAI

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

selected_model = os.environ["KIMI_DEFAULT_MODEL"]

response = client.chat.completions.create(
    model=selected_model,
    messages=[{"role": "user", "content": "Return only: routing check passed"}],
)

The deployment secret or configuration should contain an identifier returned by the live Open Platform inventory. Keep a separate evaluation record explaining why that identifier was approved and which test-set revision it passed.

Define Default, Escalation, and Fallback Rules

  • Default: the least expensive and fastest candidate that still passes every mandatory acceptance criterion.
  • Escalation: a stronger or specialist route triggered by measurable conditions such as input type, repository task, context size, tool requirement, or low confidence—not by random retries.
  • Fallback: a compatible route used for availability failures, supported error classes, or a circuit-breaker condition.
  • No silent fallback: when a different route changes safety, context, tool support, output format, or cost, log the change and surface it to the controlling system.
  • Human handoff: safety-critical, regulated, financial, legal, medical, or high-impact decisions should not be automatically “fixed” by trying more models until one answers.

Make the Integration Deprecation-Safe

  • Call the Open Platform model-list endpoint during deployment validation and alert when the configured identifier is missing.
  • Keep a tested replacement route rather than selecting an unknown model during an incident.
  • Store evaluation date, dataset revision, parameters, provider, region, and model identifier with every approval.
  • Repeat the acceptance tests after a model change, parameter change, prompt change, tool-schema change, or material platform update.
  • Monitor production quality and cost; a model that passed a launch test can become unsuitable when the workload changes.
  • Remove obsolete identifiers from configuration only after all jobs, queues, scheduled tasks, and rollback paths are checked.

If your application uses Kimi Code rather than the public Open Platform, perform the same validation against Kimi Code’s own model configuration. A Kimi Code alias can be upgraded in place—as happened when kimi-for-coding moved to K2.8 Preview—without becoming a new Open Platform model ID.

Parameters Are Part of Model Selection

Kimi model families can differ in supported inputs, reasoning controls, defaults, and parameter rules. A request that works for one candidate may be rejected or behave differently for another. Treat the full request configuration as part of the evaluated route.

Before approving a candidate, compare its current documentation with the official API overview and the model parameter reference linked there. Record every non-default parameter in the test report.

What This Page Intentionally Does Not Duplicate

QuestionOwner page
How do I create and secure the credential?How to Get a Kimi API Key
How do I send my first complete request?Kimi API Quickstart
What are the current token prices?Kimi API Pricing
How do OpenAI-format clients connect?Kimi OpenAI-Compatible API
What does a specific model do in depth?Kimi Models
Which IDs belong to Kimi Code?Kimi Code Model Configuration

Frequently Asked Questions

Which Kimi API model should a new application use?

Fetch the live Open Platform inventory, choose candidates by workload role, and run the acceptance test. A general recommendation cannot replace your latency, cost, tool, context, and quality requirements.

Why does this guide not publish a permanent model-ID comparison table?

Identifiers, access, prices, and capabilities can change. A permanent table also overlaps the pricing and individual model pages. This guide provides a repeatable selection method and uses the official inventory endpoint as the live source for Open Platform deployments.

Is K2.8 Preview a public Kimi Open Platform API model?

K2.8 Preview is currently documented as a Kimi Code model served through the kimi-for-coding ID. Do not assume that ID belongs to the public Open Platform or insert it into api.moonshot.ai requests. For Open Platform applications, query GET /v1/models and use an identifier returned to your account. For Kimi Code, use the separate Kimi Code endpoint and model catalog.

Why can K2.7 Code appear in the public API while Kimi Code standard now uses K2.8 Preview?

They are different product catalogs. The public API still exposes K2.7 Code for direct API workloads, while Kimi Code upgraded its standard kimi-for-coding alias to K2.8 Preview. A change to one product route does not automatically rename or remove the other.

Is the newest or largest model always the best choice?

No. A higher-capability route can lose on latency, cost, format reliability, or operational fit. The best production route is the least costly candidate that passes every mandatory criterion with acceptable reliability.

Can I route every request to one model?

You can, but mixed workloads often benefit from an explicit default plus specialist or escalation routes. Add routing only when tests show a measurable gain; unnecessary routing creates complexity and harder debugging.

How often should model selection be retested?

Retest after any material change to the model, prompt, parameters, tools, input distribution, provider, region, or business requirement. Also schedule periodic production-quality checks.

Can the application automatically choose any available fallback?

Avoid untested fallbacks. A returned model may have different capabilities, formats, safety behavior, context, parameters, or pricing. Use only candidates that passed the same required tests.

Official Sources and Verification

Last verified: September 13, 2026. Open Platform model availability, identifiers, capabilities, parameters, access, prices, and rate limits can change. Kimi Code uses a separate model catalog that can also change independently. Query the correct live inventory or product documentation and rerun workload tests before a production change.


Mohamed Hossam El-Din
Mohamed Hossam El-Din

Mohamed Hossam El-Din is a content editor at Thinkly for Digital Business, responsible for kimi-ai.free. He is a social work student at Helwan University, and he came to Kimi the way most of its users do: with long PDFs to read, research to gather, and reports to write. That is the angle he writes from — long-context work, document analysis, and research, tested on a live account before it is written about. He writes in English and Arabic. Every feature covered here was used first; error messages published on this site are errors that actually appeared. When a claim cannot be verified against Moonshot AI's official documentation, the article says so.

Articles: 49