K3 siempre razona
K3 usa `reasoning_effort` en el nivel superior, con `low`, `high` o `max`. No copies el bloque `thinking` de K2.x en una petición K3.
KIMI K3 / PREFILL DE RAZONAMIENTO
Kimi K3 siempre razona. Partial Mode continúa un prefijo del mensaje assistant, mientras que el razonamiento y el contenido final pueden llegar en campos distintos. Esa separación explica muchas respuestas vacías, errores 400, razonamiento visible y pérdida de contexto.
La referencia oficial de Kimi Chat Completions documenta K3, Partial Mode y las diferencias con K2.x. Cada proveedor puede añadir sus propias reglas.

EMPIEZA POR EL CONTRATO
La documentación de Kimi es concreta. Las publicaciones de la comunidad aportan pistas sobre proveedores y SillyTavern, pero no prueban un método universal.
K3 usa `reasoning_effort` en el nivel superior, con `low`, `high` o `max`. No copies el bloque `thinking` de K2.x en una petición K3.
Añade un mensaje `assistant` al final de `messages` y usa `partial: true` para guiar el prefijo. No es una forma documentada de inyectar razonamiento privado.
Un gateway puede cambiar, eliminar o rechazar `partial`, `reasoning_effort` o `reasoning_content`. Compara primero una respuesta limpia con el prefill desactivado.
MAPA DE CAMPOS
Elige el campo según la familia del modelo. La tabla orienta el diagnóstico, pero no garantiza que un gateway reenvíe todos los campos.
| Pregunta | Kimi K3 | Kimi K2.x |
|---|---|---|
| ¿Se puede desactivar thinking? | No. K3 siempre razona. | Depende del modelo. K2.6 documenta enabled o disabled; K2.7-code queda fijo en enabled. |
| Control de razonamiento | `reasoning_effort` en el nivel superior: low, high, max. | `thinking.type`, con valores por modelo. |
| Historial conservado | K3 usa preserved thinking. Conserva el assistant turn completo cuando el proveedor lo pida. | `thinking.keep` está documentado para K2.x y cambia según el modelo. |
| Prefill | Partial Mode continúa el prefijo assistant con `partial: true`. | Consulta la documentación del modelo y del proveedor. |
Si una petición K3 contiene `thinking: { type: "enabled" }`, quítalo salvo que el proveedor documente una capa de traducción.
COMPROBACIÓN DEL PREFILL
Una prueba controlada separa prompt, mapeo de respuesta, historial y proveedor. Mantén modelo y endpoint iguales y cambia una sola cosa.
Forma mínima de Partial Mode
{
"model": "kimi-k3",
"messages": [
{"role": "user", "content": "Return a status object."},
{"role": "assistant", "content": "{\"status\":", "partial": true}
],
"reasoning_effort": "low",
"stream": false
}El ejemplo muestra la función de cada campo, no un preset universal de SillyTavern. No pongas claves API en el código.
Comprueba el slug exacto en la lista del proveedor. En la API oficial, el alias K3 es `kimi-k3`; un gateway puede usar otro.
Quita `partial`, usa un mensaje user normal y deja solo el campo de razonamiento documentado para K3. Guarda `content` y cualquier `reasoning_content`.
Pon un prefijo breve en el último mensaje assistant y usa `partial: true`. Empieza por `{"status":`, no por un bloque largo de roleplay.
En el siguiente turno conserva el mensaje assistant completo según la documentación del proveedor. No mezcles un bloque de razonamiento con el prefijo de contenido.
PROVEEDOR Y FRONTEND
SillyTavern admite endpoints OpenAI compatibles y permite escribir el ID del modelo si no hay endpoint de modelos. El endpoint decide qué campos de K3 llegan intactos.
| Moonshot oficial | Gateway o ruta SillyTavern | |
|---|---|---|
| Modelo | `kimi-k3` | Usa el alias actual del proveedor. |
| Razonamiento | `reasoning_effort` low, high, max | Confirma si se reenvía, cambia de nombre o se elimina. |
| Partial Mode | Prefijo assistant más `partial: true` | Comprueba si el campo se admite para ese modelo. |
| Historial | Conserva el mensaje assistant cuando sea necesario | Comprueba si reasoning y content se guardan por separado. |
| Ajuste de SillyTavern | Usa la fuente API documentada | Test Message y Bypass API status check ayudan a separar los controles del frontend. |
SÍNTOMA Y PRUEBA
Estas pruebas mantienen el diagnóstico acotado. Un informe de comunidad sugiere una hipótesis, pero tu petición y respuesta son la evidencia.
400 después de importar un preset K2.x
Esquema de razonamiento incorrecto
Quita `thinking` y los campos históricos de K2.x. Usa `reasoning_effort` y el alias actual del proveedor.
Respuesta vacía después del razonamiento
Mapeo de respuesta o historial
Revisa deltas de streaming y campos sin streaming. Conserva el objeto assistant completo, no solo `content`.
El prefill produce un rechazo o una continuación rara
Partial Mode o proveedor
Desactiva `partial` y compara una respuesta limpia. Confirma el soporte para ese modelo y ruta.
El razonamiento aparece en la respuesta final
Límite del renderizador
Muestra `reasoning_content` separado de `content`; no unas ambos campos.
El siguiente turno pierde contexto
Historial truncado o editado
Registra los messages enviados, conserva el objeto assistant y revisa el límite de contexto.
Tarda demasiado en razonar
Esfuerzo, prompt o cuota
Prueba el nivel menor documentado, acorta el historial y compara con el prefill apagado.
UNA RUTA CON MENOS CONFIGURACIÓN
Para revisar una ficha de personaje, un documento API o una página de investigación, Tabbit permite elegir un modelo activo y mantener la fuente visible. SillyTavern sigue siendo la opción para cards y extensiones.
Usa la página, una captura o un archivo local como contexto, sin construir primero un cuerpo de prefill.

Elige Kimi-K3 cuando aparezca en la lista. La captura es un ejemplo de interfaz; el acceso depende de tu edición y plan.

Haz una pregunta en la barra lateral o compara varias respuestas. Así tendrás una base antes de volver a probar Partial Mode.

FAQ DE PREFILL
La API oficial documenta Partial Mode. Añade un mensaje assistant al final de `messages` y usa `partial: true` para que K3 continúe el prefijo. Comprueba el proveedor concreto.
No lo des por hecho. Partial Mode documenta el prefijo de salida assistant. El razonamiento es otra frontera de respuesta y el proveedor puede rechazar o cambiar un intento de inyectarlo.
Para K3 usa `reasoning_effort` en el nivel superior con `low`, `high` o `max`. El objeto `thinking` pertenece a ejemplos K2.x.
Apaga el prefill y haz una petición limpia. Revisa si `content` y `reasoning_content` llegan por separado y si el siguiente turno conserva el assistant completo.
Revisa alias, endpoint, JSON y soporte del proveedor. Quita campos K2.x y samplers no admitidos antes de cambiar el prompt.
Una discusión de Reddit cuenta que un usuario solo encontró soporte en Moonshot, pero es una observación individual. Comprueba la documentación de tu ruta actual.
Usa los campos oficiales de K3, prueba Partial Mode con un prefijo corto y conserva el assistant turn que pide tu proveedor. Para preguntas sobre páginas o archivos, abre Tabbit y elige Kimi-K3 en el selector activo.
Disponible para macOS y Windows. El acceso a modelos y las cuotas dependen de la edición y el plan actuales.