Шалев Лифшиц*, Кейран Пастер*, Харрис Чан†, Джимми Ба, Шейла МакИлрайт
Страница проекта | АрXив | PDF
Создание моделей ИИ, реагирующих на текстовые инструкции, является сложной задачей, особенно для задач последовательного принятия решений. В этой работе представлена методология, вдохновленная unCLIP, для настройки генеративных моделей поведения без использования большого набора данных траекторий, помеченных инструкциями. Используя эту методологию, мы создаем настроенную на инструкции модель предварительной подготовки видео (VPT) под названием STEVE-1, которая может следовать открытым текстовым и визуальным инструкциям с коротким горизонтом в Minecraft™. STEVE-1 обучается в два этапа: адаптация предварительно обученной модели VPT для выполнения команд в скрытом пространстве MineCLIP, а затем предварительное обучение прогнозированию скрытых кодов из текста. Это позволяет нам точно настраивать VPT посредством самоконтролируемого поведенческого клонирования и ретроспективной перемаркировки, уменьшая необходимость в дорогостоящих текстовых аннотациях, выполняемых человеком, и все это за 60 долларов США за вычисления. Используя предварительно обученные модели, такие как VPT и MineCLIP, и применяя лучшие практики генерации изображений с текстовым условием, STEVE-1 устанавливает новую планку для открытого следования инструкциям в Minecraft с низкоуровневыми элементами управления (мышь и клавиатура) и вводом необработанных пикселей. значительно превосходит предыдущие базовые показатели и уверенно выполняет 12 из 13 задач в нашем наборе оценок для ранней игры. Мы предоставляем экспериментальные данные, подчеркивающие ключевые факторы производительности последующих этапов, включая предварительное обучение, руководство без классификаторов и масштабирование данных. Все ресурсы, включая веса наших моделей, сценарии обучения и инструменты оценки, доступны для дальнейших исследований.
.
├── README.md
├── steve1
│ ├── All agent, dataset, and training code.
├── run_agent
│ ├── Scripts for running the agent.
├── train
│ ├── Script for training the agent and generating the dataset.
Мы рекомендуем работать в Linux, используя среду conda, с Python 3.10.
conda install pytorch torchvision torchaudio pytorch-cuda=11.7 -c pytorch -c nvidia
pip install minedojo git+https://github.com/MineDojo/MineCLIP
pip install git+https://github.com/minerllabs/[email protected]
pip install gym==0.19 gym3 attrs opencv-python
pip install gdown tqdm accelerate==0.18.0 wandb
steve1
локально с помощью: pip install -e .
Если вы работаете на автономном сервере, вам необходимо установить xvfb
и запустить каждый скрипт Python с помощью xvfb-run
. Например, xvfb-run python script_name.py
.
Также обратите внимание, что мы используем среду MineRL, а не среду MineDojo. Таким образом, установка MINEDOJO_HEADLESS=1
как указано в инструкциях по установке MineDojo, не будет иметь никакого эффекта.
Запустите следующую команду, чтобы загрузить данные и веса:
. download_weights.sh
Чтобы обучить STEVE-1 с нуля, выполните следующие действия:
. train/1_generate_dataset.sh
. train/2_create_sampling.sh
. train/3_train.sh
. train/4_train_prior.sh
Мы предоставили два сценария для тестирования агента с разными подсказками. Чтобы протестировать собственных обученных агентов, измените аргумент --in_weights
в сценариях.
. run_agent/1_gen_paper_videos.sh
для создания видео, используемых в статье.. run_agent/2_gen_vid_for_text_prompt.sh
для создания видео для произвольных текстовых подсказок.. run_agent/3_run_interactive_session.sh
чтобы начать интерактивный сеанс со STEVE-1. Это не будет работать в безголовом режиме. Пожалуйста, цитируйте нашу статью, если вы найдете STEVE-1 полезным для вашего исследования:
@article{lifshitz2023steve1,
title={STEVE-1: A Generative Model for Text-to-Behavior in Minecraft},
author={Shalev Lifshitz and Keiran Paster and Harris Chan and Jimmy Ba and Sheila McIlraith},
year={2023},
eprint={2306.00937},
archivePrefix={arXiv},
primaryClass={cs.LG}
}