Шалев Лифшиц*, Кейран Пастер*, Харрис Чан†, Джимми Ба, Шейла МакИлрайт
Страница проекта | Ар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}
}