Voyager
MineDojo/Voyager
LLM-powered embodied lifelong learning agent in Minecraft
Overview
An open-ended embodied agent that uses large language models, specifically GPT-4, to explore the Minecraft world autonomously, acquire diverse skills, and generate novel discoveries. It includes a curriculum for maximizing exploration, an expandable skill library of executable code, and an iterative prompting mechanism for program improvement.
Categories
Tags
Relationships
Related
Integrates with
Similar tools
ECC
affaan-m/ECC
The agent harness performance optimization system
AutoGPT
Significant-Gravitas/AutoGPT
AutoGPT: Build, Deploy, and Run AI Agents
ollama
ollama/ollama
Get up and running with Kimi-K2.6, GLM-5.1, MiniMax, DeepSeek, gpt-oss, Qwen, Gemma and other models.
prompts.chat
f/prompts.chat
The world's largest open-source prompt library for AI
transformers
huggingface/transformers
🤗 Transformers: the model-definition framework for state-of-the-art machine learning models
Install
npm install VoyagerREADME
Voyager: An Open-Ended Embodied Agent with Large Language Models
[Website] [Arxiv] [PDF] [Tweet]
https://github.com/MineDojo/Voyager/assets/25460983/ce29f45b-43a5-4399-8fd8-5dd105fd64f2
We introduce Voyager, the first LLM-powered embodied lifelong learning agent in Minecraft that continuously explores the world, acquires diverse skills, and makes novel discoveries without human intervention. Voyager consists of three key components: 1) an automatic curriculum that maximizes exploration, 2) an ever-growing skill library of executable code for storing and retrieving complex behaviors, and 3) a new iterative prompting mechanism that incorporates environment feedback, execution errors, and self-verification for program improvement. Voyager interacts with GPT-4 via blackbox queries, which bypasses the need for model parameter fine-tuning. The skills developed by Voyager are temporally extended, interpretable, and compositional, which compounds the agent’s abilities rapidly and alleviates catastrophic forgetting. Empirically, Voyager shows strong in-context lifelong learning capability and exhibits exceptional proficiency in playing Minecraft. It obtains 3.3× more unique items, travels 2.3× longer distances, and unlocks key tech tree milestones up to 15.3× faster than prior SOTA. Voyager is able to utilize the learned skill library in a new Minecraft world to solve novel tasks from scratch, while other techniques struggle to generalize.
In this repo, we provide Voyager code. This codebase is under MIT License.
Installation
Voyager requires Python ≥ 3.9 and Node.js ≥ 16.13.0. We have tested on Ubuntu 20.04, Windows 11, and macOS. You need to follow the instructions below to install Voyager.
Python Install
git clone https://github.com/MineDojo/Voyager
cd Voyager
pip install -e .
Node.js Install
In addition to the Python dependencies, you need to install the following Node.js packages:
cd voyager/env/mineflayer
npm install -g npx
npm install
cd mineflayer-collectblock
npx tsc
cd ..
npm install
Minecraft Instance Install
Voyager depends on Minecraft game. You need to install Minecraft game and set up a Minecraft instance.
Follow the instructions in Minecraft Login Tutorial to set up your Minecraft Instance.
Fabric Mods Install
You need to install fabric mods to support all the features in Voyager. Remember to use the correct Fabric version of all the mods.
Follow the instructions in Fabric Mods Install to install the mods.
Getting Started
Voyager uses OpenAI's GPT-4 as the language model. You need to have an OpenAI API key to use Voyager. You can get one from here.
After the installation process, you can run Voyager by:
from voyager import Voyager
# You can also use mc_port instead of azure_login, but azure_login is highly recommended
azure_login = {
"client_id": "YOUR_CLIENT_ID",
"redirect_url": "https://127.0.0.1/auth-response",
"secret_value": "[OPTIONAL] YOUR_SECRET_VALUE",
"version": "fabric-loader-0.14.18-1.19", # the version Voyager is tested on
}
openai_api_key = "YOUR_API_KEY"
voyager = Voyager(
azure_login=azure_login,
openai_api_key=openai_api_key,
)
# start lifelong learning
voyager.learn()
- If you are running with
Azure Loginfor the first time, it will ask you to follow the command line instruction to generate a config file. - For
Azure Login, you also need to select the world and open the world to LAN by yourself. After you runvoyager.learn()the game will pop up soon, you need to: 1.