Agents & Dragons: arquitectura multiagente para narración de rol con IA

La inteligencia artificial basada en agentes está permitiendo construir sistemas capaces de coordinar tareas complejas mediante la colaboración de múltiples componentes especializados. Uno de los ámbitos donde este enfoque resulta especialmente interesante es la generación narrativa interactiva.

En este contexto hemos desarrollado Agents & Dragons, un sistema de narración de rol basado en agentes de IA que simula el papel de un Dungeon Master en un juego de rol tradicional.

El objetivo del proyecto no es únicamente crear una experiencia de juego dinámica, coherente y desafiante. La arquitectura diseñada también sirve como caso práctico de sistemas multiagente aplicados a flujos complejos, con posibles aplicaciones en otros dominios de inteligencia artificial.

El reto: simular un Dungeon Master con IA

En los juegos de rol de mesa, el Dungeon Master (DM) actúa como narrador y coordinador de la partida.

Su función incluye:

  • crear y desarrollar la historia
  • controlar los personajes no jugadores (NPCs)
  • interpretar el mundo del juego
  • aplicar las reglas del sistema
  • reaccionar a las decisiones de los jugadores

Simular todo este comportamiento con inteligencia artificial supone un desafío considerable.

Una solución aparentemente sencilla sería pedir a un modelo de lenguaje que actúe como Dungeon Master y vaya generando la historia mientras el usuario interactúa con ella.

Sin embargo, este enfoque presenta problemas importantes.

Limitaciones de un único agente de IA

Aunque en teoría un único agente podría generar la historia, en la práctica surgen rápidamente varios problemas que afectan a la calidad de la experiencia.

  1. Sobrecarga de responsabilidades

El Dungeon Master debe realizar múltiples tareas simultáneamente:

  • narrar la historia
  • interpretar personajes
  • aplicar reglas del juego
  • gestionar el estado del mundo
  • responder a las decisiones de los jugadores

Concentrar todas estas responsabilidades en un único agente genera problemas tanto de contexto como de flujo lógico.

El modelo necesitaría un prompt extremadamente complejo y aun así correría el riesgo de perder coherencia a medida que avanza la historia.

Este problema es habitual en los sistemas de IA complejos y explica por qué muchas arquitecturas modernas utilizan enfoques multiagente.

  1. Falta de coherencia narrativa y desafío

Otro problema habitual es la falta de consistencia.

Cuando un modelo improvisa la historia sin un sistema estructurado:

  • pueden aparecer incoherencias narrativas
  • las reglas del juego no se aplican correctamente
  • el sistema simplemente acepta cualquier acción del jugador

Por ejemplo, si el jugador dice “salgo volando”, el modelo podría aceptarlo sin comprobar si las reglas del juego lo permiten.

Esto elimina el desafío y reduce la calidad de la experiencia de juego.

La solución: una arquitectura multiagente

Para resolver estos problemas, hemos diseñado una arquitectura multiagente utilizando Microsoft Agent Framework.

En este sistema, cada agente tiene una responsabilidad clara y especializada.

Este enfoque permite:

  • separar responsabilidades
  • mantener coherencia narrativa
  • aplicar correctamente las reglas del juego
  • mejorar la escalabilidad del sistema

Arquitectura del sistema

El sistema está compuesto por cuatro elementos principales: frontend, backend, estructuras de datos y agentes.

Frontend

El frontend es una aplicación web sencilla desarrollada con:

  • Vue.js
  • Tailwind CSS

La interfaz incluye:

  • un menú donde el usuario selecciona la aventura
  • una interfaz de chat donde se desarrolla la partida

Este diseño permite añadir fácilmente nuevas aventuras y ampliar el sistema.

Backend

El backend está construido con FastAPI.

Expone una API REST que gestiona la comunicación entre el frontend y el sistema de agentes.

Estructuras de datos

El sistema mantiene varias estructuras de datos que almacenan el estado del juego.

Estas estructuras se actualizan dinámicamente mediante tools que los agentes pueden invocar durante la partida.

Scene

Contiene el estado actual del juego:

  • localización
  • personajes presentes
  • eventos recientes
  • contexto narrativo

Sheet

Almacena las estadísticas de los personajes:

  • habilidades
  • atributos
  • estado actual

Agentes del sistema

El núcleo del sistema está formado por varios agentes especializados.

Orchestrator / Narrador

Este agente actúa como Dungeon Master principal.

Sus responsabilidades incluyen:

  • coordinar a los demás agentes
  • mantener la coherencia narrativa
  • gestionar el estado del juego

Tiene acceso al contexto de la historia y al estado actual de la escena.

Agente de reglas

Este agente se encarga de aplicar el sistema de reglas del juego.

Recibe como entrada:

  • una acción
  • el estado de la escena
  • las estadísticas de los personajes involucrados

Tras aplicar las reglas, devuelve el resultado de la acción.

Esto incluye procesos como:

  • tiradas de dados
  • comprobaciones de habilidad
  • resolución de acciones.

Agente de NPCs

Este agente interpreta a los personajes no jugadores.

Recibe:

  • el contexto de la escena
  • la personalidad del NPC

Y genera:

  • el diálogo
  • la acción correspondiente

El narrador invoca este agente de forma independiente para cada NPC.

Agente de generación de imágenes

Este agente se encarga de mejorar la inmersión visual del juego.

Su función consiste en:

  1. analizar el contexto de la escena
  2. generar un prompt para un generador de imágenes
  3. mantener coherencia visual reutilizando la imagen previa

La imagen generada se muestra en la interfaz del jugador.

Consideraciones técnicas

El sistema incorpora varias decisiones técnicas importantes.

Uso de Microsoft Agent Framework

Todos los agentes y tools se han implementado con Microsoft Agent Framework.

Esto permite estructurar fácilmente la interacción entre agentes.

Agentes como tools

Los agentes de Rules y NPC funcionan a su vez como tools invocables por el agente narrador.

Este diseño permite que el narrador los utilice cuando sea necesario dentro del flujo narrativo.

Validación de datos con Pydantic

Todas las herramientas utilizan modelos de Pydantic como entrada y salida.

Esto facilita:

  • controlar la información intercambiada entre agentes
  • eliminar datos irrelevantes
  • mantener consistencia en el flujo de datos.

Gestión de memoria entre agentes

No todos los agentes necesitan memoria.

Por ejemplo:

  • el narrador mantiene memoria de interacciones anteriores
  • el agente de reglas no necesita memoria, ya que recibe todo el contexto necesario en sus parámetros de entrada

Esto optimiza el uso del contexto y mejora la eficiencia del sistema.

Conclusión

Agents & Dragons demuestra cómo una arquitectura multiagente puede resolver problemas complejos de generación narrativa interactiva.

Más allá del ámbito del entretenimiento, los principios utilizados en este sistema pueden aplicarse a muchos otros escenarios donde la inteligencia artificial debe gestionar flujos complejos, múltiples responsabilidades y coordinación entre agentes especializados.

A medida que las arquitecturas multiagente evolucionan, este tipo de sistemas puede convertirse en un patrón clave para construir aplicaciones avanzadas de inteligencia artificial.

Los sistemas multiagente están abriendo nuevas posibilidades en el desarrollo de soluciones de IA complejas y autónomas.

En Bravent diseñamos arquitecturas basadas en agentes utilizando tecnologías como Microsoft Agent Framework, aplicadas tanto a proyectos de innovación como a casos reales de negocio.

Si estás explorando cómo integrar agentes de IA en tus aplicaciones o procesos, estaremos encantados de analizar tu caso.

📩 Escríbenos a info@bravent.net

Alejandro Fuster Bagetto

Alejandro Fuster Bagetto

Senior AI developer - Bravent
Jorge Verdeguer Gómez

Jorge Verdeguer Gómez

Machine Learning Engineer - Bravent
    Resumen de privacidad

    Esta web utiliza cookies para que podamos ofrecerte la mejor experiencia de usuario posible. La información de las cookies se almacena en tu navegador y realiza funciones tales como reconocerte cuando vuelves a nuestra web o ayudar a nuestro equipo a comprender qué secciones de la web encuentras más interesantes y útiles.

    Cookies estrictamente necesarias

    Las cookies estrictamente necesarias tiene que activarse siempre para que podamos guardar tus preferencias de ajustes de cookies.

    Cookies de terceros

    Esta web utiliza cookies analíticas para recopilar información anónima tal como el número de visitantes del sitio, o las páginas más populares.

    Dejar esta cookie activa nos permite mejorar nuestra web.