Kimi K3 API: contexto 1M, precios y Python (2026)
Guía práctica de la API de Kimi K3 — clave, ejemplos en curl y Python, contexto 1M, visión nativa, reasoning_effort, comparativa de precios y migración desde K2.
Kimi K3 es el modelo insignia más reciente de Moonshot AI. Estira la ventana de contexto hasta 1 millón de tokens y trae de serie visión nativa y razonamiento siempre activo, apuntando de lleno a «programación de largo alcance + trabajo de conocimiento + razonamiento complejo». Esta guía sigue un camino sencillo — conseguir la clave, enviar la primera petición, aprovechar el contexto de 1M, calcular el coste real y migrar desde K2 — para que pongas Kimi K3 realmente en marcha. ¿Con prisa? Consigue créditos gratis con un código de referido en GetModel y llama a Kimi, GPT y Claude con una sola clave.
Qué ofrece Kimi K3
Kimi K3 usa una arquitectura Mixture-of-Experts (MoE) con unos 2.8T de parámetros totales, activando 16 de sus 896 expertos por pasada. Junto con un nuevo diseño de atención KDA (Kimi Delta Attention) + Attention Residuals, Moonshot afirma que la eficiencia de escalado global de entrenamiento/inferencia es unas 2.5 veces mejor que la de K2. En la práctica, conviene recordar de antemano algunos puntos clave:
- Ventana de contexto de 1M —— exactamente 1 048 576 tokens, suficiente para tragarse de una vez un repositorio de tamaño medio, un manual completo o decenas de documentos largos. Es la mejora más evidente frente a K2 (256K).
- Visión nativa —— admite entrada de imágenes y vídeo directamente, lo que la convierte en ciudadana de primera clase para tareas de «mirar la imagen y escribir el código» como front-end, juegos y CAD, sin OCR añadido.
- Razonamiento siempre activo —— K3 tiene el pensamiento profundo activado por defecto, controlado mediante
reasoning_effort. Por ahora solo está disponible el nivelmax(el predeterminado); los demás niveles llegarán después. - Interfaz compatible con OpenAI —— formato Chat Completions, así que el código existente con el SDK
openainormalmente solo necesita cambiarbase_urlymodel.
El ID del modelo principal actual es kimi-k3. Antes de integrar, conviene revisar la lista de modelos disponibles en la consola — Moonshot itera muy rápido.
Pasos de integración + código
Abajo hay dos caminos: la integración directa conviene para escenarios de solo Kimi; una pasarela agregadora conviene si además usas GPT, Claude o Gemini y no quieres gestionar un montón de claves y facturas.
Opción uno: integración directa (plataforma Moonshot)
- Regístrate e inicia sesión en la Plataforma Abierta de Moonshot;
- Crea una clave en «Gestión de claves API»;
- Anota los endpoints: nacional
https://api.moonshot.cn/v1, internacionalhttps://api.moonshot.ai/v1.
Ejemplo con curl:
curl https://api.moonshot.cn/v1/chat/completions \
-H "Content-Type: application/json" \
-H "Authorization: Bearer $MOONSHOT_API_KEY" \
-d '{
"model": "kimi-k3",
"messages": [{"role": "user", "content": "Presenta Kimi K3 en una frase"}]
}'
Python (usando el SDK openai directamente, cambiando solo base_url y model):
import os
from openai import OpenAI
client = OpenAI(
api_key=os.environ["MOONSHOT_API_KEY"],
base_url="https://api.moonshot.cn/v1",
)
resp = client.chat.completions.create(
model="kimi-k3",
messages=[{"role": "user", "content": "Presenta Kimi K3 en una frase"}],
)
print(resp.choices[0].message.content)
Para la salida en streaming basta con añadir stream=True — el formato SSE coincide con el oficial de OpenAI; la llamada a funciones (function calling) también se escribe con el campo tools de OpenAI.
Opción dos: pasarela agregadora (llamar a Kimi / GPT / Claude con una sola clave)
Si tu proyecto no usa solo Kimi, una pasarela agregadora como GetModel ahorra muchos quebraderos de cabeza: una clave, un endpoint compatible con OpenAI, y cambiar de modelo es solo cambiar el campo model. El saldo se comparte entre todos los modelos y hay una única factura.
- Inicia sesión en la Consola de GetModel y crea una clave que empiece por
sk-en la página «Tokens API»; - Cambia base_url a
https://getmodel.ai/v1; - Pon
kimi-k3enmodel.
from openai import OpenAI
client = OpenAI(
api_key="sk-tu-clave-GetModel",
base_url="https://getmodel.ai/v1",
)
# Llamar a Kimi K3
resp = client.chat.completions.create(
model="kimi-k3",
messages=[{"role": "user", "content": "Hola, Kimi K3"}],
)
print(resp.choices[0].message.content)
# El mismo código — cambia model por gpt-5.2 o claude-opus-4-8 y cambias al modelo de otro proveedor
La pasarela lleva incorporado un failover multicanal que cambia automáticamente cuando un proveedor upstream falla — más estable para producción.
Aprovechar el contexto de 1M y la visión nativa
El contexto largo es el punto fuerte central de K3. Meter un repositorio entero, un contrato completo o decenas de páginas de PDF directamente en messages y dejar que el modelo responda con el contexto completo suele ser más sencillo — y pierde menos información — que trocearlo tú mismo para hacer RAG. Ten en cuenta que cuanto más largo es el contexto, mayores son el consumo de tokens y la latencia por petición, así que cualquier prefijo fijo (un system prompt largo, documentos de referencia) debes reutilizarlo sí o sí mediante caché — consulta la sección de precios más abajo.
La entrada de visión requiere atención a dos cosas: primero, el contenido de imágenes/vídeo debe ir en content como un array de objetos, no concatenado en una sola cadena serializada; segundo, la visión de K3 no admite URL de imágenes públicas — usa base64 para imágenes locales y sube los vídeos con la files API para referenciarlos como ms://<file-id>.
resp = client.chat.completions.create(
model="kimi-k3",
messages=[{
"role": "user",
"content": [
{"type": "text", "text": "Escribe el HTML/CSS correspondiente a partir de este mockup"},
{"type": "image_url", "image_url": {"url": "data:image/png;base64,iVBORw0KGgo..."}},
],
}],
)
Comparativa de precios: integración directa vs pasarela agregadora
Kimi K3 se factura por token y el caché de contexto está activado por defecto — en cuanto un prefijo repetido acierta en la caché, el precio de entrada cae a una décima parte. A continuación, los precios oficiales de referencia (por cada millón de tokens, en RMB; prevalece el precio en tiempo real de la consola):
| Concepto de facturación | Precio / 1M tokens |
|---|---|
| Entrada (fallo de caché) | ¥20 |
| Entrada (acierto de caché) | ¥2 |
| Salida | ¥100 |
Algunos puntos a tener en cuenta:
- Un acierto de caché comprime el precio de entrada a ¥2/M, así que en escenarios con system prompts largos y documentos fijos llamados repetidamente, el coste real puede ser un orden de magnitud menor de lo que parece — los agentes de largo alcance son los más beneficiados;
- K3 tiene posicionamiento insignia, por lo que su precio de salida es claramente más alto que el de K2. Para tareas de puro volumen que no exigen la máxima capacidad, la serie K2 sigue saliendo más a cuenta (ver comparativa Kimi K3 vs K2);
- Los precios en los canales oficiales y de los distintos relés / agregadores fluctúan, así que antes de contratar, consulta el precio en tiempo real. Consulta las tarifas en tiempo real de Kimi y otros modelos en GetModel en la página de precios.
Créditos gratis: el crédito de prueba de ¥15 que Moonshot entrega a nuevos usuarios actualmente no se puede usar en K3 — el K3 oficial es de pago. Para probar las capacidades de K3 sin coste, regístrate mediante el código de referido de GetModel y consigue un crédito gratis que sirve para todos los modelos, de modo que puedas comparar K3, GPT y Claude en paralelo antes de decidir cuál será tu opción principal.
A tener en cuenta al migrar desde K2
Si estás pasando de K2 / K2.x a K3, hay tres trampas que evitar:
- Deja de usar el parámetro
thinking. K3 controla la intensidad del pensamiento mediantereasoning_effort(por ahora solomax); el campothinkingde K2.x no aplica en K3. - En conversaciones multiturno y llamadas a herramientas, añade el assistant message completo que devuelve la API al siguiente turno tal cual — no conserves solo
content, o se pierde el estado de razonamiento / herramientas. - El presupuesto de contexto se multiplicó por 4 (256K → 1M), pero no lo llenes sin criterio — cuanto más largo, más caro y más lento, así que el recorte y la reutilización de caché habituales siguen siendo necesarios.
Errores comunes y diagnóstico
- 401 / fallo de autenticación: clave mal escrita, prefijo
Beareromitido, o una clave de otro entorno. Comprueba que la cabeceraAuthorizationy el base_url se correspondan. - 429 / límite de tasa activado: superaste el límite de RPM/TPM o de concurrencia. Añade reintentos con retroceso exponencial, reduce la concurrencia o sube el nivel de la cuenta; a través de GetModel, el failover multicanal reparte la carga automáticamente.
- Errores en peticiones de visión: normalmente se pasó una URL de imagen pública, o el
contentmixto de texto e imagen se concatenó en una cadena. Cámbialo a referencias base64 /ms://y usa un array de objetos. - Contexto excedido: una entrada que supere 1M tokens da error. Recorta la entrada, procesa por segmentos, o activa la reutilización de caché para los prefijos fijos.
Preguntas frecuentes (FAQ)
- ¿Cuánto contexto tiene Kimi K3? 1 048 576 tokens (unos 1M), cuatro veces el de K2 — ideal para el código de un repositorio entero, documentos largos y agentes de largo alcance.
- ¿Tiene K3 créditos gratis? El crédito oficial de ¥15 no se puede usar actualmente en K3; registrarse a través de GetModel te da un crédito multimodelo, ideal para probar antes de comprometerte.
- ¿Admite visión, llamadas a herramientas y streaming? Los tres. Visión con array de objetos + base64/
ms://; llamadas a herramientas con el campotoolsde OpenAI; streaming añadiendostream=True. - ¿Puedo reutilizar mi código de OpenAI existente? Sí. K3 es compatible con la interfaz Chat Completions de OpenAI, normalmente solo hay que cambiar
base_urlymodel; pero al migrar desde K2, recuerda cambiarthinkingporreasoning_effort. - ¿Cómo elegir entre K3 y K2? Si quieres contexto de 1M, visión nativa y el mejor código / razonamiento, elige K3; para puro volumen y sensibilidad al coste, elige la serie K2.
Para usar Kimi, GPT, Claude y Gemini en un mismo código manteniendo una sola clave y una sola factura, empieza en la Consola de GetModel y pon Kimi K3 en marcha primero con el crédito de regalo.