SillyTavern: la interfaz de personajes para LLM local
SillyTavern es una interfaz web pensada para juegos de rol y escritura interactiva con un LLM. No ejecuta modelos por sí misma: se conecta a un backend local como KoboldCpp u Ollama y añade todo lo que falta al chat clásico: tarjetas de personajes, memoria persistente del mundo, control detallado del prompt y extensiones. Esta guía cubre la instalación, la conexión a tu backend, la creación de personajes y los ajustes que marcan la diferencia en la interpretación.
#¿Por qué SillyTavern en lugar de un chat clásico?
Una interfaz como Open WebUI o LM Studio trata cada conversación como un intercambio entre asistente y usuario. SillyTavern parte de otra necesidad: encarnar un personaje coherente a lo largo de cientos de mensajes, dentro de un universo que recuerda sus propias reglas. Es la herramienta de referencia de la comunidad de juegos de rol con LLM local y aporta mecánicas que un chat básico no tiene.
- Tarjetas de personajes
- Un formato estandarizado (PNG con metadatos incorporados) que describe la personalidad, el estilo, ejemplos de diálogo y el mensaje de bienvenida. Se puede importar y compartir en un único archivo.
- Memoria del mundo
- El lorebook inyecta información en el prompt solo cuando aparece una palabra clave, lo que mantiene un universo coherente sin saturar el contexto.
- Control del prompt
- Ves y modificas cada bloque enviado al modelo: prompt de sistema, formato de instrucción, orden de inyección. Nada está oculto.
- Backend a elegir
- SillyTavern es un front-end puro. El mismo personaje funciona con KoboldCpp, Ollama, llama.cpp o una API remota sin necesidad de reescribir nada.
#Requisitos previos y elección del backend
Tu ChatGPT privado y gratuito en tu máquina en 1 hora — LM Studio, Ollama, Open WebUI, tus documentos, sin nube.
- Espacio en línea de por vida
- PDF + archivos
- Reembolsado 30 j
SillyTavern funciona en Node.js (versión 18 o superior) en Windows, macOS y Linux. Ligero en recursos — es el backend el que consume la VRAM. Dos backends locales cubren casi todos los usos: KoboldCpp, orientado a GGUF y juegos de rol, y Ollama, más generalista.
- KoboldCpp
- Binario único que ejecuta GGUF con una API compatible de forma nativa con SillyTavern. Ajustes precisos de memoria, soporte para AMD ROCm. La opción por defecto de la comunidad RP.
- Ollama
- El demonio escucha en http://localhost:11434. Es práctico si ya lo usas para otra cosa; SillyTavern se conecta a él a través de su endpoint compatible.
- llama.cpp (llama-server)
- Servidor HTTP compatible con OpenAI para un control máximo del offloading de capas.
- VRAM
- En Q4_K_M: un 7B cabe en ~5 GB, un 14B en ~9 GB y un 32B en ~19 GB. Para un RP fluido, busca un modelo de al menos 12-14B si tu tarjeta lo permite.
#Instalar SillyTavern
El método recomendado es clonar el repositorio con Git: facilita mucho las actualizaciones (un git pull) y SillyTavern evoluciona rápidamente. Asegúrate de tener instalados Node.js 18+ y Git.
- 01Clonar el repositorioObtén la rama release, estable y probada. Evita la rama staging a menos que quieras acceder a las novedades antes de su lanzamiento a costa de algunos errores.
- 02Ejecutar el script de iniciostart.sh en Linux/macOS, Start.bat en Windows. En la primera ejecución, npm instala las dependencias automáticamente.
- 03Abrir la interfazSillyTavern ofrece su interfaz en http://localhost:8000. Abre esta dirección en tu navegador; no es necesario instalar ninguna aplicación de escritorio.
- 04Actualizar más tardeUn git pull en el directorio, luego vuelve a ejecutar el script. Tus personajes y conversaciones están almacenados por separado en data/ y no se sobrescriben.
#Conectar el backend local
Una vez abierto SillyTavern, todo se gestiona en la pestaña de conexión API (el icono en forma de enchufe en la parte superior). El principio: iniciar el backend por un lado e indicar su dirección a SillyTavern por el otro.
#Con KoboldCpp
Inicia KoboldCpp con tu modelo GGUF; expone su API en el puerto 5001 por defecto. En SillyTavern, elige el tipo de API «Text Completion», luego el backend «KoboldCpp» e introduce la URL. Haz clic en Connect: el nombre del modelo cargado se muestra si todo está bien.
#Con Ollama
Ollama ya se ejecuta como daemon en el puerto 11434. En SillyTavern, selecciona «Text Completion» y luego el backend «Ollama», introduce la dirección y elige el modelo en la lista desplegable obtenida automáticamente.
#Crear e importar tarjetas de personajes
La carta de personaje es el corazón de SillyTavern. Es un archivo PNG cuya imagen sirve de avatar y cuyos metadatos incorporados describen al personaje. Puedes crear una desde cero o importar una carta compartida por la comunidad.
#Los campos que importan
- Descripción
- La base del personaje: apariencia, rasgos, historia. Se incorpora permanentemente al contexto, así que escribe de forma concisa y concreta, con información sustancial, en lugar de extenderte demasiado.
- Personality
- Un resumen del temperamento. Útil para orientar el tono sin tener que reescribir toda la descripción.
- First message
- El mensaje de bienvenida que establece la escena. Da el tono, el estilo de escritura y el formato esperado — el modelo tiende a imitar su forma.
- Example dialogues
- Ejemplos de frases que muestran al modelo cómo habla el personaje. Muy eficaz para fijar una voz particular.
- Scenario
- El contexto de la escena, separado de la descripción del personaje. Útil para reutilizar el mismo personaje en varias situaciones.
- 01Abrir el panel de personajesEl icono de personaje en la barra superior abre la lista. El botón « + » crea una tarjeta vacía.
- 02Rellenar la descripciónDescribe al personaje de forma concisa y con abundante información. Muchos autores usan un formato estructurado (listas de rasgos) en lugar de un párrafo, un formato que los modelos siguen bien.
- 03Escribir el primer mensajeCuídalo: es tu mejor recurso de estilo. Un mensaje de bienvenida narrativo en tercera persona lleva al modelo hacia este formato.
- 04Importar una tarjeta existenteArrastra un PNG de una tarjeta a la lista o impórtalo. Las tarjetas se comparten como simples archivos de imagen en los portales comunitarios.
#El mundo persistente: el lorebook
El lorebook (o World Info) resuelve el problema central de las partidas largas: cómo mantener un universo coherente sin inyectar todo constantemente. El principio es la inyección condicional por palabras clave.
Creas entradas, cada una asociada a una o varias palabras clave. Cuando una de estas palabras aparece en los mensajes recientes, la entrada correspondiente se inyecta en el contexto justo antes de la generación. El resto del tiempo, no ocupa ningún espacio. Así puedes describir decenas de lugares, personajes secundarios y reglas sin saturar nunca el prompt.
- Entrada
- Un bloque de texto (el lore a inyectar) y sus palabras clave de activación. Ejemplo: palabra clave « Valmont » → descripción de la ciudad de Valmont.
- Constante vs selectivo
- Una entrada puede estar siempre activa (reglas fundamentales del universo) o desencadenarse solo por palabra clave (detalles contextuales).
- Profundidad de inyección
- Eliges la posición en la que se inserta la entrada dentro del prompt, lo que influye en el peso que el modelo le asigna.
- Relacionado con el personaje o global
- Un lorebook puede acompañar a una ficha específica o aplicarse a todas tus conversaciones como universo compartido.
#Ajustar la generación para la interpretación
Los parámetros de muestreo determinan la proporción entre coherencia y creatividad. Para juegos de rol, se busca más variedad que para asistencia factual, sin caer en incoherencias. Estos ajustes se encuentran en la pestaña de parámetros de generación (icono de deslizadores).
- Temperatura
- El control deslizante de creatividad/estabilidad. En torno a 0.7-0.9 para un buen equilibrio en el juego de rol. Un valor demasiado alto (> 1.2) genera incoherencias; uno demasiado bajo hace que el personaje sea repetitivo y plano.
- Min-P
- Un sampler moderno que descarta los tokens poco probables en proporción al más probable. Un valor de 0.05-0.1 depura la salida y permite aumentar la temperatura sin que el modelo pierda el rumbo.
- Penalización por repetición
- Penaliza la repetición de los mismos tokens. Es útil para evitar bucles, pero, si la penalización es demasiado alta, obliga al modelo a usar expresiones artificiales. Mantén un nivel moderado.
- Response length
- El número máximo de tokens generados por respuesta. 200-400 tokens para réplicas narrativas sustanciosas sin monólogos interminables.
- Context size
- Debe coincidir con lo que ha cargado tu backend. No sirve de nada pedir 16k a SillyTavern si KoboldCpp se ha iniciado solo con 8k.
#Las extensiones que cambian la experiencia
SillyTavern es extensible. Algunas extensiones vienen incluidas y otras se instalan mediante la URL de su repositorio. Estas son las que realmente transforman la forma de usarlo.
- Vector Storage (resumen de memoria)
- Vectoriza el historial y reintegra los pasajes relevantes de los mensajes antiguos, extendiendo la memoria más allá de la ventana de contexto. Útil para partidas muy largas.
- Summarize
- Genera y mantiene un resumen actualizado de la conversación, que se vuelve a incluir en el prompt. El personaje recuerda los acontecimientos importantes incluso después de cientos de mensajes.
- Text-to-Speech
- Da voz a los personajes mediante un motor TTS local. Mayor inmersión para quienes juegan por voz.
- Generación de imágenes
- Se conecta a un backend local de imágenes (como Stable Diffusion) para ilustrar escenas y personajes sobre la marcha desde el chat.
- Expresiones
- Muestra el avatar con una emoción que corresponda al tono del mensaje, a partir de un conjunto de sprites del personaje.
#¿Qué modelos locales destacan en interpretación?
No todos los LLM rinden igual en juegos de rol. Los modelos «instruct» alineados para la asistencia tienden a salirse del personaje, moralizar o rechazar escenarios de ficción. La comunidad prefiere modelos con ajustes finos especializados, a menudo construidos sobre bases sólidas y luego reentrenados para la narración y el diálogo en el papel del personaje.
- Tamaño útil
- Por debajo de 4B, la coherencia del personaje a lo largo del tiempo se resiente. En 2026, una base reciente como Qwen 3.5 9B (~6,6 GB, 256k de contexto) o Gemma 4 12B (~7,6 GB, Apache 2.0) es el punto de equilibrio para la mayoría de las tarjetas gráficas de gama media; un escalón por encima, Mistral Small 24B (~14 GB, muy competente en francés) cabe en 16 GB y aporta mayor sutileza narrativa.
- Fine-tunes RP
- Busca modelos explícitamente entrenados para roleplay o ficción (a menudo marcados como «RP», «storytelling» o «uncensored» en Hugging Face). Los mejores fine-tunes de 2026 se basan en estas bases recientes (Qwen 3.5, Mistral Small 24B, Gemma 4) en lugar de los antiguos Llama 2 o Mistral 7B de 2023; siguen mejor el formato de las tarjetas.
- Contexto largo
- Prioriza un modelo que mantenga un buen rendimiento con 16k tokens o más sin degradarse: las partidas largas lo exigen. Comprueba el contexto nativo anunciado para el modelo.
- Formato GGUF
- Para KoboldCpp, usa archivos GGUF cuantizados. Q4_K_M es el equilibrio recomendado; sube a Q5_K_M o Q8_0 si tu VRAM lo permite y buscas más precisión.
#Solución de problemas comunes
- SillyTavern no se conecta
- Comprueba que el backend esté funcionando bien y que el puerto sea el correcto (5001 para KoboldCpp, 11434 para Ollama). Un test en el navegador en la URL de la API confirma que responde.
- Respuestas con etiquetas visibles
- Casi siempre se debe a una plantilla de instrucciones inadecuada. Ajusta el formato (ChatML, Gemma, Mistral…) al del modelo en Advanced Formatting.
- El personaje sale de su rol
- Refuerza la descripción y los ejemplos de diálogo, baja un poco la temperatura y verifica que tu prompt de sistema no entre en conflicto con la tarjeta.
- Repeticiones y bucles
- Aumenta ligeramente la penalización por repetición y añade un Min-P. Si el problema persiste, puede que el contexto esté saturado: activa Summarize o reduce el tamaño de la tarjeta.
- Respuestas truncadas
- El valor de Response length es demasiado bajo, o el backend se inició con un contexto más pequeño que el que requiere SillyTavern. Ajusta ambos valores para que coincidan.
#Para ir más allá
SillyTavern es solo una capa: la calidad final depende principalmente de tu backend y del modelo. Estas guías te ayudan a consolidar las bases.
- KoboldCpp: instalación y primeros pasos
- El backend de referencia para el RP local: GGUF, ajustes de memoria y una API que SillyTavern admite de forma nativa.
- Ollama, ¿qué es y cómo funciona?
- La alternativa generalista si prefieres un daemon único en el puerto 11434 para todos tus usos.
- Cuantizar la caché KV
- Para mantener contextos de RP más largos en la misma tarjeta gráfica sin disparar el consumo de VRAM.
¿Un comentario, un error, una precisión? Avísanos, eso mejora la guía para todos.