KoboldCpp: juegos de rol y escritura creativa en local
Qué cubre este artículo
- Qué es KoboldCpp y por qué es la opción preferida para juegos de rol y narrativa creativa con IA local
- Cómo instalar KoboldCpp, cargar modelos y utilizar los diferentes modos de historia
- Cómo funcionan World Info y Memory para mantener tus historias consistentes
- Cómo configurar la GPU para máximo rendimiento
- Cuándo KoboldCpp es la elección correcta y cuándo es mejor optar por Ollama o LM Studio
Introducción: KoboldCpp explicado
Cuando te adentras en el mundo de la IA local, rápidamente descubres herramientas que cargan modelos y generan texto. Sin embargo, la mayoría están diseñadas para diálogos o código, no para escritura creativa. Aquí es donde entra en juego KoboldCpp. Es un motor de inferencia construido específicamente para juegos de rol, narrativa y textos interactivos.
KoboldCpp se basa en llama.cpp y extiende su núcleo de inferencia con funciones indispensables para la escritura creativa: World Info, un sistema de memoria, varios modos de historia y una interfaz diseñada específicamente para la narrativa. Si recién estás comenzando, el artículo ¿Qué es la IA local? te servirá como introducción.
Este artículo te explica qué hace KoboldCpp, cómo instalarlo y usarlo, y cómo se diferencia de otras herramientas de software de IA local.
¿Por qué necesito KoboldCpp?
Imagina que quieres jugar un juego de rol con una IA o escribir una historia interactiva que responda a tus aportaciones. Lo intentas con una herramienta de chat normal, pero después de unos pocos párrafos el modelo olvida quiénes son los personajes, dónde ocurre la historia y qué reglas estableciste. Cada vez que describes una escena, necesitas explicarle todo de nuevo al modelo.
KoboldCpp resuelve exactamente este problema. Incorpora un sistema World Info que inyecta automáticamente información de contexto en el contexto cuando aparece una palabra clave. Tiene un sistema de memoria que registra eventos importantes, y un mecanismo Author’s Note que controla el estilo y tono de tu historia. Todo sucede en segundo plano, sin que necesites repetir todo con cada entrada.
Si quieres usar herramientas de software de IA local para escritura creativa, KoboldCpp es prácticamente imprescindible, porque no solo ejecuta la inferencia sino que la complementa con las funciones que mantienen las historias consistentes.
KoboldCpp en pocas palabras
KoboldCpp es un motor de inferencia independiente que se basa en llama.cpp y lo extiende con funcionalidades de narrativa. Se distribuye como un único programa que no requiere instalación de Python ni dependencias complejas. Descargas un ejecutable, lo inicias, seleccionas un modelo y estás listo para empezar.
Los componentes principales:
- Núcleo de inferencia: Se basa en llama.cpp y soporta modelos GGUF.
- Modos de historia: Story Mode, Chat Mode y Adventure Mode para diferentes casos de uso.
- World Info: Un sistema para información de contexto sensible a palabras clave.
- Memory: Un almacenamiento para eventos importantes que va más allá del contexto estándar.
- Author’s Note: Un mecanismo para controlar el estilo y tono de la historia.
- Interfaz web: Una interfaz que se ejecuta en el navegador y está optimizada para la escritura de historias.
Los modelos se cargan en formato GGUF, el formato estándar para inferencia local. Más información sobre la teoría la encontrarás en Ejecutar LLMs localmente.
¿Para quién es KoboldCpp?
KoboldCpp está dirigido a varios grupos de usuarios:
- Jugadores de rol que quieren jugar aventuras en solitario o con amigos con asistencia de IA.
- Escritores que usan IA como herramienta para escritura creativa sin ceder el control.
- Aficionados a aventuras de texto que desean experimentar y crear historias interactivas.
- Usuarios experimentados que quieren explorar al máximo las capacidades de narrativa de los modelos de IA.
Si solo quieres probar rápidamente un modelo sin preocuparte por modos de historia y World Info, Ollama o LM Studio te servirán mejor. Estas herramientas están diseñadas para diálogos e inferencia general, no para escritura creativa.
Términos importantes relacionados con KoboldCpp
| Término | Explicación |
|---|---|
| KoboldCpp | Motor de inferencia para juegos de rol y narrativa, basado en llama.cpp |
| World Info | Sistema de información de contexto sensible a palabras clave que se activa cuando aparecen términos específicos |
| Memory | Almacenamiento de eventos importantes que va más allá del contexto normal |
| Author’s Note | Texto breve que se inserta regularmente en el contexto para controlar el estilo y tono |
| Story Mode | Modo para escritura creativa, el modelo continúa tus aportaciones como narración |
| Chat Mode | Modo para diálogos, el modelo responde como un interlocutor |
| Adventure Mode | Modo para aventuras de texto, el modelo reacciona a tus acciones como un árbitro de juego |
| GGUF | Formato de archivo para modelos cuantizados, estándar para inferencia local |
| Context | Número máximo de tokens que el modelo puede procesar simultáneamente |
| Token | Unidad más pequeña que procesa un modelo, equivale aproximadamente a una palabra o parte de ella |
Qué hace especial a KoboldCpp
Tres características diferencian a KoboldCpp de otros motores de inferencia:
La narrativa como función central. Mientras que herramientas como Ollama están orientadas al diálogo, KoboldCpp está construido desde el principio para escritura creativa. Los tres modos de historia, el sistema de memoria y World Info no son complementos añadidos después, sino partes centrales de la interfaz. No necesitas elaborar prompts para que el modelo cuente historias, simplemente seleccionas el modo que corresponde.
World Info para mundos consistentes. World Info es el corazón de KoboldCpp. Creas entradas que constan de una palabra clave y un texto. Tan pronto como la palabra clave aparece en tu historia, el texto asociado se inyecta en el contexto. De esta forma, el modelo sabe automáticamente que “Eldoria” es un reino en el norte apenas se menciona el nombre, sin que tengas que explicarlo de nuevo cada vez. Esto es especialmente crucial en historias largas con muchos personajes y lugares.
Memory para consistencia a largo plazo. El contexto de un modelo es limitado, típicamente 4096 u 8192 tokens. En una historia larga, no todos los eventos caben en el contexto. El sistema Memory de KoboldCpp almacena eventos importantes en un área separada e los inserta regularmente en el contexto, de modo que el modelo mantiene la perspectiva incluso si la historia tiene cientos de párrafos.
Instalación
KoboldCpp destaca por su facilidad de instalación: se distribuye como un único ejecutable. No necesitas Python, entornos virtuales ni herramientas de compilación.
Descarga: Obtén la versión más reciente del repositorio de GitHub en la sección Releases. Encontrarás diferentes variantes optimizadas para distintas configuraciones de hardware.
Windows: Descarga koboldcpp.exe. Si dispones de una GPU Nvidia, elige la variante con soporte CUDA; si prefieres usar solo la CPU, descarga la versión correspondiente. Al hacer doble clic, se abre un diálogo de configuración donde defines el modelo, los GPU layers y el tamaño del contexto.
macOS: Los Macs con Apple Silicon tienen una variante exclusiva con soporte Metal. Descargala y ejecútala. Como macOS a veces bloquea apps descargadas de internet, es posible que tengas que permitir su ejecución en “Configuración del Sistema” > “Privacidad y seguridad”.
Linux: Descarga la variante apropiada y hazla ejecutable:
chmod +x koboldcpp
./koboldcpp
Al iniciarse, aparece un diálogo de configuración. Selecciona tu modelo GGUF, establece los GPU layers y define el tamaño del contexto. Pulsa “Launch” para iniciar el motor de inferencia y abre la interfaz web en el navegador.
Cargar modelos
KoboldCpp usa el formato GGUF, que también emplea llama.cpp. Esto significa que puedes usar cualquier archivo GGUF compatible con llama.cpp.
Descarga modelos desde plataformas como Hugging Face. Para narrativa y rol, estas familias de modelos funcionan bien:
- Mistral y Mistral-Nemo: Excelentes generalistas con buena calidad narrativa.
- Llama 3 y Llama 3.1: Modelos actuales con gran fidelidad a instrucciones.
- Qwen 2.5: Versátiles y con buen desempeño en español.
- Command R: Optimizado para textos largos y aplicaciones RAG.
Para comenzar, una cuantización Q4_K_M ofrece un buen equilibrio entre tamaño, velocidad y calidad. Consulta el artículo Cuantización para profundizar en la teoría.
En el diálogo de configuración, simplemente selecciona el archivo GGUF que descargaste. KoboldCpp detecta la arquitectura del modelo automáticamente y ajusta los parámetros de inferencia en consecuencia.
Modos de historia
KoboldCpp ofrece tres modos, cada uno diseñado para casos de uso distintos.
Story Mode
En Story Mode escribes un texto y el modelo continúa la narrativa. Ingresas un párrafo, el modelo genera el siguiente, tú sigues escribiendo, y así sucesivamente. Este modo es ideal para escritura creativa cuando quieres mantener el control de la historia pero dejas que el modelo maneje el trabajo de redacción.
Puedes editar, eliminar o regenerar el texto generado en cualquier momento. Esto te proporciona control total sobre el desarrollo de la historia.
Chat Mode
En Chat Mode conversas con el modelo. Cada mensaje tiene un rol como “User”, “Assistant” o “Character”. Este modo es útil cuando quieres interactuar con un personaje IA, por ejemplo en diálogos de rol o desarrollo de personajes.
Puedes definir múltiples personajes, cada uno con su propia personalidad y voz. El modelo alterna entre roles según quién esté hablando.
Adventure Mode
En Adventure Mode actúas como en una aventura de texto. Describes qué hace tu personaje, y el modelo responde como un árbitro que simula el mundo. Este modo funciona bien para juegos de rol en solitario o historias interactivas con mecánicas de juego.
Adventure Mode generalmente utiliza modelos entrenados en instrucciones, ya que responden mejor a acciones y pueden simular el mundo de manera consistente.
World Info y Memory
World Info y Memory son las funciones que diferencian KoboldCpp de herramientas de chat simples. Garantizan que tus historias permanezcan consistentes incluso cuando se vuelven largas.
Configurar World Info
Los registros de World Info constan de tres partes:
- Palabras clave: Términos que activan el registro. Cuando uno aparece en el texto, el registro se inserta en el contexto.
- Contenido: El texto que se añade al contexto cuando se activa. Aquí describes personajes, lugares, objetos o reglas.
- Prioridad: Determina qué registros se cargan primero cuando el contexto está limitado.
Un ejemplo: creas un registro con la palabra clave “Eldoria”. Como contenido escribes: “Eldoria es un reino en el norte, conocido por sus fortalezas montañosas y la Orden del Dragón.” Cuando “Eldoria” aparece en tu historia, el modelo sabe automáticamente qué es.
Puedes crear tantos registros como necesites. KoboldCpp los gestiona automáticamente e inserta solo los relevantes en el contexto.
Memory para consistencia
El sistema Memory almacena eventos importantes más allá del contexto normal. Escribes un resumen de los sucesos previos en el campo Memory, y KoboldCpp lo inserta periódicamente en el contexto.
Esto es especialmente útil cuando tu historia excede la longitud del contexto. Sin Memory, el modelo olvidaría lo que pasó al principio. Con Memory mantiene el hilo incluso después de cientos de párrafos.
Combinado con la Author’s Note, un texto breve que controla el estilo y tono, tienes una herramienta potente para escribir historias consistentes a largo plazo.
Configuración de GPU
KoboldCpp utiliza los backends GPU de llama.cpp, incluyendo CUDA para GPUs Nvidia y Metal para Apple Silicon. En el diálogo de configuración especificas cuántos layers del modelo se trasladan a la GPU.
GPU Layers: Cuantos más layers se traspasen a la GPU, más rápida es la inferencia. El factor limitante es el VRAM. Como regla aproximada: un modelo 7B en cuantización Q4 requiere unos 4 o 5 GB de VRAM para todos los layers. Un modelo 13B necesita aproximadamente 8 o 9 GB.
CUDA (Nvidia): Selecciona la variante CUDA al descargar si tienes una GPU Nvidia. En el diálogo de configuración especificas el número de GPU layers. Comienza con un valor alto y reduce si el VRAM no es suficiente.
Metal (Apple Silicon): En Macs con chips M1 a M4, KoboldCpp usa Metal para aceleración GPU. La Unified Memory de Apple Silicon es ventajosa aquí, ya que CPU y GPU comparten el mismo almacenamiento. Normalmente puedes traspasar todos los layers a la GPU mientras tengas memoria RAM suficiente.
Solo CPU: Si no tienes GPU o prefieres no usarla, KoboldCpp funciona completamente en CPU. La inferencia es considerablemente más lenta, pero para escritura creativa, donde de todas formas haces pausas para leer y reflexionar, es a menudo aceptable. Más detalles en el artículo CPU vs. GPU.
KoboldCpp vs. Ollama vs. LM Studio
| Característica | KoboldCpp | Ollama | LM Studio |
|---|---|---|---|
| Audiencia | Jugadores de rol, autores | Principiantes, desarrolladores | Principiantes, usuarios visuales |
| Enfoque | Narrativa, rol | Diálogos, uso de API | Inferencia general |
| Interfaz | Interfaz web para historias | Línea de comandos, API | Aplicación gráfica de escritorio |
| World Info | Sí, integrado | No | No |
| Sistema Memory | Sí, integrado | No | No |
| Modos de historia | Story, Chat, Adventure | Solo Chat | Solo Chat |
| Soporte GPU | CUDA, Metal | CUDA, Metal | CUDA, Metal |
| Instalación | Archivo único, sin Python | Un comando | Descarga, arrastrar y soltar |
| API | Compatible con OpenAI | Compatible con OpenAI | Compatible con OpenAI |
Elige KoboldCpp: cuando quieras escribir rol, narrativa o historias interactivas con IA y necesites funciones como World Info y Memory.
Elige Ollama: si prefieres comenzar rápidamente con una interfaz CLI limpia y API. Ollama es mejor para diálogos e inferencia general, no para escritura creativa. Más en el artículo Ollama.
Elige LM Studio: si prefieres una interfaz gráfica y quieres descargar y probar modelos con un clic. LM Studio es una opción versátil, pero carece de funciones narrativas. Más en el artículo LM Studio.
Errores comunes en KoboldCpp
1. Demasiadas entradas de World Info. Si creas cientos de entradas, el contexto se saturará. KoboldCpp selecciona según prioridad, pero cuando muchas entradas están activas simultáneamente, queda poco espacio para la historia. Limítate a las entradas más importantes y usa palabras clave precisas.
2. Memory sin mantenimiento. El campo Memory no es automático. Conforme tu historia crece, debes actualizar el resumen regularmente. Una Memory desactualizada provoca contradicciones porque el modelo se basa en información antigua.
3. Cantidad incorrecta de capas de GPU. Si asignas demasiadas capas a la GPU, la inferencia falla con error de memoria. Comienza con un valor moderado e incrementa gradualmente hasta llenar casi todo el VRAM. Monitorea el consumo con el Administrador de tareas o con nvidia-smi.
4. Modelo inadecuado para el modo. No todos los modelos funcionan bien en todos los modos. Un modelo de chat puro rinde mal en Story Mode porque genera diálogos en lugar de narrativas. Los modelos entrenados en instrucciones suelen desempeñarse mejor en Adventure Mode. Experimenta con diferentes modelos.
5. Contexto configurado demasiado pequeño. Un contexto insuficiente hace que el modelo olvide el inicio de la historia. Establece el tamaño de contexto en al menos 4096, preferiblemente 8192 tokens, si tu modelo y RAM lo permiten. Recuerda que un contexto mayor consume más RAM.
6. Versión desactualizada de KoboldCpp. KoboldCpp se actualiza regularmente con nuevas funciones y correcciones. Una versión antigua puede tener incompatibilidades con archivos GGUF más nuevos. Revisa ocasionalmente la página de releases en GitHub y descarga la versión actual.
7. Author’s Note demasiado larga. La Author’s Note debe ser breve, una o dos oraciones. Llenarla con instrucciones largas consume valioso espacio de contexto y el modelo podría ignorarla. Mantenla concisa y específica.
8. Palabras clave demasiado genéricas. Si eliges “el” o “y” como palabra clave para una entrada de World Info, se activará constantemente y desperdiciará contexto. Selecciona nombres propios y términos específicos que se asocien claramente con la entrada.
Hardware, costos y seguridad en KoboldCpp
Hardware: KoboldCpp funciona en casi cualquier equipo donde llama.cpp pueda ejecutarse. Para un rendimiento aceptable con modelos de 7B necesitas al menos 8 GB de RAM y una CPU con AVX2. Una GPU con 8 GB de VRAM permite GPU offloading e inferencia significativamente más rápida. Para modelos de 13B o 33B se recomiendan 16 GB o 32 GB de RAM o VRAM respectivamente. En Macs con Apple Silicon te beneficias de la memoria unificada, que permite descargar todas las capas en la GPU.
Costos: KoboldCpp es Open Source y completamente gratuito. Los únicos costos provienen del hardware donde lo ejecutas. No hay costos de API ni cuotas de suscripción, lo que representa una ventaja sustancial frente a servicios de IA basados en la nube.
Seguridad: Dado que KoboldCpp se ejecuta localmente, tus historias y datos nunca abandonan tu equipo. Esto es especialmente relevante para escritura creativa con temas sensibles o contenido personal. No necesitas enviar datos a servidores externos. Sin embargo, asegúrate de descargar modelos de fuentes confiables, ya que los archivos GGUF podrían manipularse teóricamente.
Enlaces adicionales e información sobre KoboldCpp
- KoboldCpp en GitHub - Repositorio oficial con releases y documentación
- KoboldCpp Releases - Descargar versiones actuales
- Modelos GGUF en Hugging Face - Amplia selección de archivos GGUF listos para usar
- llama.cpp - El motor de inferencia en el que se basa KoboldCpp
- Ollama - Alternativa para diálogos y uso de API
- LM Studio - Aplicación de escritorio gráfica para inferencia general
- Cuantización - Conocimientos fundamentales sobre GGUF y niveles de cuantización
- Ejecutar LLM localmente - Conceptos básicos para operar LLMs localmente
FAQ: KoboldCpp - Preguntas frecuentes
¿Qué es exactamente KoboldCpp? KoboldCpp es un motor de inferencia basado en llama.cpp extendido con funcionalidades para juego de rol, narrativa y escritura creativa. Se distribuye como un único archivo ejecutable y no requiere Python.
¿Necesito una GPU para KoboldCpp? No. KoboldCpp funciona completamente en CPU. Una GPU acelera considerablemente la inferencia, pero no es un requisito. Para escritura creativa, donde de todas formas hay pausas, la ejecución solo en CPU suele ser aceptable.
¿Cuál es la diferencia entre KoboldCpp y Ollama? Ollama está diseñado para diálogos y uso de API, mientras que KoboldCpp se enfoca en narrativa y juego de rol. KoboldCpp tiene World Info, un sistema de Memory y varios modos de historia que Ollama no ofrece. Ambos utilizan llama.cpp como núcleo de inferencia.
¿Puedo usar mis modelos de Ollama en KoboldCpp? Sí, siempre que los modelos estén en formato GGUF. KoboldCpp usa el mismo formato que llama.cpp. Solo necesitas especificar la ruta al archivo GGUF en el diálogo de configuración.
¿Cómo funciona World Info? Las entradas de World Info constan de palabras clave y un texto. Cuando aparece una palabra clave en tu historia, el texto asociado se inyecta en el contexto. Así el modelo sabe automáticamente qué es un lugar o personaje sin tener que explicarlo cada vez.
¿Qué hace la Author’s Note? La Author’s Note es un texto breve que se inserta regularmente en el contexto para controlar el estilo y tono de la historia. Por ejemplo, puedes escribir “Escribe en un estilo oscuro y atmosférico” y el modelo se adapta.
¿Cuál es el mejor modelo para juego de rol? Depende de tus preferencias. Mistral y Llama 3 son buenos todoterrenos. Command R está optimizado para textos largos. Experimenta con diferentes modelos y compara resultados. Asegúrate de que el modelo esté entrenado en instrucciones si usas Adventure Mode.
¿Puedo integrar KoboldCpp en mi propia aplicación? Sí. KoboldCpp ofrece una API compatible con OpenAI que puedes llamar desde tus propias aplicaciones. Inicia el modo servidor y envía requests a los endpoints de la API.
¿Cómo actualizo KoboldCpp? Descarga simplemente la versión más reciente de la página de releases en GitHub y reemplaza el archivo antiguo. Tus configuraciones y entradas de World Info se conservan si las exportas o respaladas el archivo de configuración.
¿Es KoboldCpp gratuito? Sí, KoboldCpp es Open Source y gratuito. Puedes usarlo sin costo, incluso en proyectos comerciales.
¿Necesito Internet para usar KoboldCpp? Solo para descargar KoboldCpp mismo y los modelos GGUF. La inferencia y la narrativa se ejecutan completamente offline en tu equipo.
Fuentes y lecturas complementarias
- LostRuins. (2023). KoboldCpp [Software]. GitHub. https://github.com/LostRuins/koboldcpp
- KoboldCpp Documentation. GitHub. https://github.com/LostRuins/koboldcpp/wiki
- GGUF Format Specification. Hugging Face. https://github.com/ggerganov/ggml/blob/master/docs/gguf.md
- Gerganov, G. (2023). llama.cpp [Software]. GitHub. https://github.com/ggerganov/llama.cpp
- GGUF-Modelle auf Hugging Face. https://huggingface.co/models?library=gguf


