Saltar al contenido principal
Guía práctica de Kimi K3: modo de razonamiento, carga dinámica de herramientas y caché de contexto
Este artículo presenta los nuevos parámetros de Kimi K3 y las consideraciones de uso. En AIHubMix, K3 puede invocarse mediante Chat Completions, Responses y la interfaz Messages compatible con Claude. Lectura adicional: documentación oficial de la plataforma Moonshot. Las conclusiones marcadas como «Verificado» y los ejemplos de respuesta de cada sección provienen de llamadas reales realizadas el 2026-07-17 a través de las interfaces de AIHubMix (Chat Completions / Responses / Messages).

1. Resumen de especificaciones del modelo

Verificado: ambos límites de stop se validan y superarlos devuelve 400; el parámetro stop_sequences de la interfaz Messages aplica la misma validación. La interfaz Messages no sigue la semántica de Anthropic al activarse una secuencia de parada: en las pruebas, stop_reason es "end_turn" (en lugar de "stop_sequence"), stop_sequence es null, y el texto visible previo a la secuencia de parada puede estar vacío. Los clientes que dependen de estos dos campos para determinar la causa del truncamiento deben tenerlo en cuenta.

2. Modo de razonamiento: reasoning_effort solo con nivel max

El razonamiento de K3 está activado por defecto y reasoning_effort solo admite el nivel "max". En conversaciones multiturno es obligatorio reenviar el historial de razonamiento sin modificar: según la documentación oficial de Moonshot, K3 fue entrenado con preserved thinking, por lo que en conversaciones multiturno debe reenviarse el mensaje assistant devuelto en el turno anterior de forma completa y sin modificaciones (incluido el contenido de razonamiento); la ausencia del historial de razonamiento provoca inestabilidad en la calidad de la salida. Si utiliza frameworks de gestión de sesiones o capas proxy, verifique que el contenido de razonamiento no se recorte antes del reenvío.
El contenido de razonamiento se devuelve en el campo reasoning_content de la respuesta; en multiturno, reenvíe el mensaje assistant del turno anterior (incluido reasoning_content) sin modificar.
Verificado: la respuesta devuelve reasoning_content; tras reenviar el mensaje assistant del turno anterior (incluido reasoning_content) sin modificar, los turnos siguientes responden con normalidad.

3. Parámetros de muestreo con valores fijos

Los parámetros de muestreo de K3 tienen valores fijos oficiales: temperature 1.0, top_p 0.95, n 1, presence_penalty / frequency_penalty 0. La recomendación oficial es no incluir estos parámetros en las solicitudes.
Nota: los valores fijos de muestreo son la especificación oficial y no pueden verificarse mediante señales de la respuesta; omita estos parámetros según la recomendación oficial.

4. Llamadas a herramientas y carga dinámica de herramientas

tools admite hasta 128 herramientas; tool_choice permite forzar o deshabilitar las llamadas. K3 también admite la carga dinámica de herramientas: inyectar herramientas nuevas a mitad de conversación mediante el campo tools de un mensaje system (una forma de mensaje exclusiva de la interfaz Chat).
tool_choice admite auto / none / required; required fuerza al modelo a llamar a la herramienta. Carga dinámica de herramientas: el mensaje system que inyecta la herramienta no lleva content, la herramienta inyectada surte efecto en los turnos posteriores y debe reenviarse en cada solicitud.
Verificado: tool_choice: "required" fuerza una llamada a herramienta incluso ante preguntas no relacionadas; "none" suprime las llamadas a herramientas; las herramientas inyectadas a mitad de conversación mediante un mensaje system sin content pueden invocarse con normalidad.

5. Salida estructurada

La salida estructurada permite que el modelo devuelva contenido que cumple estrictamente un JSON Schema dado.
response_format admite json_schema y el modo strict.
Verificado: la salida es JSON válido conforme al schema.

6. Caché de contexto activada automáticamente

La caché de contexto de K3 se activa automáticamente, sin necesidad de pasar ningún parámetro. Cuando un prefijo largo repetido acierta en la caché, el volumen acertado se reporta en usage (el nombre del campo varía según la interfaz). Consulte el precio de la caché en la página del modelo.
Verificado: la segunda solicitud con el mismo prefijo largo reporta el acierto en usage.prompt_tokens_details.cached_tokens.

7. Continuación por prefijo con partial

La continuación por prefijo hace que el modelo continúe generando a partir de un prefijo dado; es adecuada para autocompletado de código y salida con formato controlado.
Pase "partial": true en el último mensaje assistant.
Verificado: la generación continúa desde el prefijo dado, sin repetirlo.

8. Entrada visual

Las imágenes se pasan en base64; la forma de los bloques de contenido varía según la interfaz.
Verificado: la entrada de imagen en base64 funciona; el modelo describe correctamente el contenido de la imagen de prueba.

9. Referencia verificada: tiempo y consumo de una llamada única en tareas largas

El razonamiento de K3 está fijado en el nivel max, por lo que las solicitudes únicas de tareas complejas tardan bastante más que en modelos convencionales. Datos verificados de una tarea de generación de un juego HTML en un solo archivo (un único prompt con imagen de referencia, una sola generación, sin iteraciones): la solicitud tardó 2,541 segundos (unos 42 minutos), con 74,994 completion tokens, de los cuales 54,486 corresponden al razonamiento (el 73%); el resultado final fueron 1,275 líneas de código ejecutable directamente, con finish_reason igual a stop. Recomendaciones para el lado del cliente:
  • Configure los timeouts del cliente en el orden de minutos o más, y priorice el streaming en tareas largas;
  • Deje margen suficiente en max_completion_tokens: en este ejemplo, solo el razonamiento consumió 54,486 tokens.

10. Matriz de compatibilidad capacidad × interfaz

Cada celda de la tabla siguiente refleja el resultado de llamadas reales verificadas el 2026-07-17 a través de las interfaces en producción de AIHubMix; el contenido de cada celda es la sintaxis de parámetro / campo de la interfaz correspondiente.

Preguntas frecuentes (FAQ)

¿Qué interfaces admite K3 en AIHubMix? Chat Completions (/v1/chat/completions), Responses (/v1/responses) y la interfaz Messages compatible con Claude (/v1/messages). ¿Se puede desactivar el razonamiento o reducir su intensidad? No. El razonamiento de K3 está activado por defecto y reasoning_effort solo admite el nivel "max". ¿Por qué hay que reenviar reasoning_content en conversaciones multiturno? K3 fue entrenado con preserved thinking; la documentación oficial exige reenviar el mensaje assistant del turno anterior de forma completa y sin modificaciones. La ausencia del historial de razonamiento provoca inestabilidad en la calidad de la salida. ¿Qué límites tiene el parámetro stop? Hasta 5 secuencias de parada, cada una de máximo 32 bytes; superarlos devuelve un error 400. ¿La interfaz Messages admite salida estructurada? ❗ No. El endpoint oficial Messages (compatible con Anthropic) de Kimi K3 ignora silenciosamente los campos de salida estructurada (devuelve 200 con texto libre, sin error). Si necesita salida estructurada, use response_format de Chat Completions o text.format de Responses. ¿Por qué las solicitudes únicas de K3 tardan tanto? El razonamiento de K3 está fijado en el nivel max, y en tareas complejas los tokens de razonamiento representan una proporción alta (el 73% de los completion tokens en el caso verificado). Se recomienda configurar los timeouts del cliente en el orden de minutos o más y usar streaming.
Consulte el precio y el estado en tiempo real del modelo en la página del modelo Kimi K3, y más modelos en la galería de modelos. Última actualización: 2026-07-17