Skip to content
No models found
OpenRouter
© 2026 OpenRouter, Inc

Product

  • Chat
  • Rankings
  • Apps
  • Models
  • Providers
  • Pricing
  • Enterprise
  • Labs

Company

  • About
  • Announcements
  • CareersHiring
  • Privacy
  • Terms of Service
  • Support
  • State of AI
  • Works With OR
  • Data

Developer

  • Documentation
  • API Reference
  • SDK
  • Status

Connect

  • Discord
  • GitHub
  • LinkedIn
  • X
  • YouTube
Favicon for moonshotai

MoonshotAI: Kimi K2 Thinking

moonshotai/kimi-k2-thinking

Compare

Kimi K2 Thinking is Moonshot AI’s most advanced open reasoning model to date, extending the K2 series into agentic, long-horizon reasoning. Built on the trillion-parameter Mixture-of-Experts (MoE) architecture introduced in Kimi K2, it activates 32 billion parameters per forward pass and supports 256 k-token context windows. The model is optimized for persistent step-by-step thought, dynamic tool invocation, and complex reasoning workflows that span hundreds of turns. It interleaves step-by-step reasoning with tool use, enabling autonomous research, coding, and writing that can persist for hundreds of sequential actions without drift.

It sets new open-source benchmarks on HLE, BrowseComp, SWE-Multilingual, and LiveCodeBench, while maintaining stable multi-agent behavior through 200–300 tool calls. Built on a large-scale MoE architecture with MuonClip optimization, it combines strong reasoning depth with high inference efficiency for demanding agentic and analytical tasks.

Modalities

Input Price

$0.60per 1M

Output Price

$2.50per 1M

Context

262K

Weekly Tokens

3.32B

Released

Nov 6, 2025

Overview
Providers
Performance
Pricing
Benchmarks
Apps
Activity
Uptime
API

Sample code and API for Kimi K2 Thinking

OpenRouter normalizes requests and responses across providers for you.

1

Get your API key

Create an API key from your OpenRouter dashboard and set it as an environment variable:

2

Make your first request

Use moonshotai/kimi-k2-thinking with the OpenRouter API:

OpenRouter supports reasoning-enabled models that can show their step-by-step thinking process. Use the reasoning parameter in your request to enable reasoning, and access the reasoning_details array in the response to see the model's internal reasoning before the final answer. When continuing a conversation, preserve the complete reasoning_details when passing messages back to the model so it can continue reasoning from where it left off. Learn more about reasoning tokens.

In the examples below, the OpenRouter-specific headers are optional. Setting them allows your app to appear on the OpenRouter leaderboards.

Using third-party SDKs

For information about using third-party SDKs and frameworks with OpenRouter, please see our frameworks documentation.

3

Enable streaming

Add "stream": true to your request body to receive responses as server-sent events:

Endpoint

POSThttps://openrouter.ai/api/v1/chat/completions
AuthorizationBearer $OPENROUTER_API_KEY
Content-Typeapplication/json
HTTP-Refereroptional — your site URL, for rankings
X-Titleoptional — your site name, for rankings
Modelmoonshotai/kimi-k2-thinking

Parameters

NameTypeDefaultDescription
reasoningmap—Controls reasoning behavior for models that support thinking tokens, including whether reasoning is enabled, the reasoning effort, maximum reasoning tokens, and whether reasoning is excluded from the response.
include_reasoningboolean—Deprecated alias for reasoning.exclude.
max_tokensinteger—This sets the upper limit for the number of tokens the model can generate in response.
temperaturefloat1This setting influences the variety in the model's responses.
top_pfloat1This setting limits the model's choices to a percentage of likely tokens: only the top tokens whose probabilities add up to P.
seedinteger—If specified, the inferencing will sample deterministically, such that repeated requests with the same seed and parameters should return the same result.
response_formatmap—Forces the model to produce specific output format.
top_kinteger0This limits the model's choice of tokens at each step, making it choose from a smaller set.
repetition_penaltyfloat1Helps to reduce the repetition of tokens from the input.
frequency_penaltyfloat0This setting aims to control the repetition of tokens based on how often they appear in the input.
presence_penaltyfloat0Adjusts how often the model repeats specific tokens already used in the input.
stoparray—Stop generation immediately if the model encounter any token specified in the stop array.
structured_outputsboolean—If the model can return structured outputs using response_format json_schema.
toolsarray—Tool calling parameter, following OpenAI's tool calling request shape.
tool_choicestring or object—Controls which (if any) tool is called by the model.