MINDcraft es un innovador proyecto de código abierto que integra grandes modelos de lenguaje (LLMs) para controlar bots de Minecraft, ofreciendo una nueva dimensión de interacción y creatividad dentro del juego. Utiliza la librería Mineflayer para permitir que estos bots realicen tareas complejas generando código de alto nivel. Este proyecto no solo demuestra el potencial de la IA en los videojuegos, sino que también amplía los límites de lo que se puede lograr con modelos de lenguaje en entornos virtuales. Novita AI está recomendado como uno de los proveedores de API del proyecto.
Resumen del Proyecto MINDcraft
En esencia, MINDcraft es una aplicación Node.js que integra LLMs para guiar bots de Minecraft en la realización de diversas tareas. El bot principal, llamado Andy, puede comunicarse con los jugadores y establecer objetivos de forma autónoma, como recolectar recursos o construir edificios. Esta capacidad permite a Andy jugar de manera independiente, adaptándose continuamente y fijando nuevos objetivos sin intervención humana. La arquitectura del proyecto permite a Andy ejecutar comandos de manera eficiente e interactuar con el entorno del juego de forma significativa.
https://www.youtube.com/embed/IeXadWbvDiE
Características Principales
- Integración de Modelos de Lenguaje: MINDcraft emplea LLMs para generar código que dirige las acciones del bot dentro de Minecraft. Esta integración permite a Andy ejecutar tareas complejas de manera eficiente al interpretar instrucciones en lenguaje natural y traducirlas en comandos de juego ejecutables.
- Juego Autónomo: Andy puede establecer metas de forma independiente y navegar por el mundo del juego, mejorando su capacidad para realizar tareas sin entrada directa del jugador. Esta autonomía permite a Andy explorar nuevas estrategias y adaptar su comportamiento según la retroalimentación del entorno.
- Comandos Parametrizados: El proyecto incorpora comandos similares a los de Toolformer, permitiendo a Andy ejecutar tareas como la recolección de recursos de manera más fiable. Estos comandos parametrizados simplifican la ejecución de tareas al proporcionar acciones predefinidas que pueden personalizarse según requisitos específicos.
Desarrollo e Implementación de MINDcraft
Desarrollo
Inspiración y Trabajo Inicial
El desarrollo de MINDcraft comenzó tras la publicación de un artículo notable sobre Voyager, que introdujo la librería Mineflayer para crear bots de Minecraft en Node.js. A diferencia de investigaciones previas de IA que usaban entradas de imágenes y salidas de bajo nivel, Mineflayer permite a los sistemas de IA interactuar con Minecraft usando código de alto nivel, simplificando tareas como la navegación y la adquisición de recursos sin necesidad de aprendizaje por refuerzo.
Aprovechamiento de LLMs para el Seguimiento de Instrucciones
Los LLMs modernos destacan en la generación de código y el seguimiento de instrucciones, lo que facilita condicionar un LLM para generar código Mineflayer basado en instrucciones humanas, dando lugar a la creación de Andy. Se implementaron comandos parametrizados para mejorar la fiabilidad de Andy en la ejecución de habilidades comunes. Por ejemplo, Andy puede generar !collectBlocks("oak_log", 1) en lugar de generar código complejo.
Mejoras y Direcciones Futuras
Con el tiempo, el conjunto de comandos de Andy se ha ampliado y se han añadido comportamientos automáticos como evitar mobs agresivos. Recientemente, Andy puede jugar Minecraft de forma independiente estableciendo objetivos en lenguaje natural (por ejemplo, “Recolecta materiales para construir una casa”). Los planes futuros incluyen reutilización de código, reflexión de experiencias, mejora de la conciencia espacial, entradas visuales e interacciones multiagente.
Implementación

Clase Agent y Bucle Lógico Principal
La clase principal de MINDcraft es una clase Agent que se instancia cada vez que Andy no está conectado. El bucle lógico principal en handleMessage se ejecuta cuando un jugador envía un mensaje a Andy:
handleMessage(message):
history.add(message)
while true:
hist = history.getHistory()
response = prompter.promptConvo(hist)
if containsCommand(response):
cleanChat(response)
history.add(response)
result = executeCommand(this, response)
history.add(result)
else:
cleanChat(response)
history.add(response)
break
Manejo de Respuestas y Comandos
Andy puede devolver una única respuesta conversacional o llamar de forma iterativa a comandos de consulta o acción. Las consultas proporcionan información del estado del mundo (por ejemplo, !inventory, !nearbyBlocks ), mientras que las acciones provocan comportamientos dentro del juego (por ejemplo, !followPlayer(name) , !collectBlocks(block) ). Todas las acciones se ejecutan mediante el método execute en la clase Coder.
Generación de Código Personalizado
Para comportamientos complejos como la construcción, Andy puede escribir código personalizado generando el comando newAction para entrar en modo de codificación. Usando el método generateCode de la clase Coder, Andy escribe código JavaScript personalizado con acceso a Mineflayer y a una librería de funciones útiles. El método incluye un bucle para múltiples intentos de depuración.
Rol de los Ejemplos en Contexto
Los ejemplos en contexto son cruciales para la calidad de las respuestas de Andy. Un modelo de embedding encuentra ejemplos similares al historial actual y los añade al contexto del LLM, asegurando que Andy use los comandos correctamente y consulte información antes de completar tareas.
Cómo Ejecutar MINDcraft
Requisitos
- Minecraft Java Edition (hasta v1.21.1, recomendado v1.20.4)
- Node.js instalado (al menos v14)
- Uno de los siguientes: OpenAI API Key | Gemini API Key | Anthropic API Key | Replicate API Key | Hugging Face API Key | Groq API Key | Ollama Instalado. | Qwen API Key | Novita AI API Key |
Instalación y Ejecución
Asegúrate de tener los requisitos anteriores.
- Clona o descarga este repositorio (botón verde grande)
- Renombra
keys.example.jsonakeys.jsony completa tus claves API (solo necesitas una). El modelo deseado se configura enandy.jsonu otros perfiles. Para otros modelos, consulta la tabla siguiente. - En terminal/símbolo del sistema, ejecuta
npm installdesde el directorio de instalación - Inicia un mundo de Minecraft y ábrelo a LAN en el puerto localhost 55916
- Ejecuta
node main.jsdesde el directorio de instalación
Personalización
Puedes configurar los detalles del proyecto en settings.js. Consulta el archivo. Puedes configurar el nombre del agente, el modelo y las indicaciones en su perfil como andy.json.
| API | Variable de Configuración | Nombre de Modelo de Ejemplo |
| Novita AI | NOVITA_API_KEY | gryphe/mythomax-l2-13b |
Cómo Obtener la Clave API de Novita AI
Paso 1: Ve a novita.ai e inicia sesión
Puedes iniciar sesión en Novita AI con Google o GitHub, lo que creará una nueva cuenta en tu primer inicio de sesión. Alternativamente, puedes registrarte usando tu dirección de correo electrónico.
Paso 2: Gestiona la Clave API LLM de Novita AI
Novita AI asegura el acceso a la API mediante autenticación Bearer incluyendo una clave API en el encabezado de la solicitud, como “Authorization: Bearer {API Key}”. Para gestionar tus claves, navega a “Key Management” en la configuración. Se genera una clave predeterminada automáticamente en tu primer inicio de sesión. Puedes crear claves adicionales haciendo clic en “+ Add New Key”.

Paso 3: Recargar Crédito
Novita AI ofrece a los nuevos usuarios un vale con algo de crédito para probar nuestros productos. Para añadir más crédito, visita Facturación y Pagos y sigue la guía en Métodos de Pago.
Enlaces y Recursos Útiles
Conclusión
MINDcraft representa un avance significativo en la investigación de IA dentro de entornos de juego. Al aprovechar el poder de los LLMs, abre nuevas posibilidades para la creatividad y la interacción en Minecraft. A medida que el proyecto continúa evolucionando, la participación y los comentarios de la comunidad desempeñarán un papel crucial en la configuración de sus futuros desarrollos. La naturaleza de código abierto del proyecto fomenta la colaboración entre desarrolladores e investigadores interesados en explorar la intersección de la IA y los videojuegos.
Publicado originalmente en Novita AI
Novita AI es una plataforma en la nube de IA que ofrece a los desarrolladores una forma sencilla de desplegar modelos de IA usando nuestra API simple, al mismo tiempo que proporciona una GPU en la nube asequible y fiable para construir y escalar.
