Awesome
<p align="center" width="100%"> <img src="https://i.mji.rip/2023/10/13/c4bdc6505f2b3f2304bffb5ea196f5a2.png" width="40%" height="80%"> </p> <div> <div align="center"> <font size=5><strong>Octopus: Embodied Vision-Language Programmer from Environmental Feedback</strong></font> <br> <a href='https://jingkang50.github.io/' target='_blank'>Jingkang Yang<sup>*,1</sup></a>  <a href='https://github.com/dongyh20/' target='_blank'>Yuhao Dong<sup>*,2,5</sup></a>  <a href='https://github.com/choiszt/' target='_blank'>Shuai Liu<sup>*,3,5</sup></a>  <a href='https://brianboli.com/' target='_blank'>Bo Li<sup>*,1</sup></a>  </br> Ziyue Wang<sup>†,1</sup></a>  Chencheng Jiang<sup>†,4</sup></a>  Haoran Tan<sup>†,3</sup></a>  Jiamu Kang<sup>†,2</sup></a>  </br> <a href='https://zhangyuanhan-ai.github.io/' target='_blank'>Yuanhan Zhang<sup>1</sup></a>  <a href='https://kaiyangzhou.github.io/' target='_blank'>Kaiyang Zhou<sup>1</sup></a>  <a href='https://liuziwei7.github.io/' target='_blank'>Ziwei Liu<sup>1,5,✉</sup></a> </div> <div align="center"> <sup>1</sup>S-Lab, Nanyang Technological University  <sup>2</sup>Tsinghua University  <br> <sup>3</sup>Beijing University of Posts and Telecommunications   <br> <sup>4</sup>Xi'an Jiaotong University  <sup>5</sup>Shanghai AI Laboratory  </br> <sup>*</sup> Equal Contribution  <sup>†</sup> Equal Engineering Contribution  <sup>✉</sup> Corresponding Author </div>Project Page | Octopus Paper | Demo Video
π Introducing Octopus
Octopus is a novel VLM designed to proficiently decipher an agentβs vision and textual task objectives and to formulate intricate action sequences and generate executable code. We provide two models based on the following architectures. Please click
πͺΈ Introducing OctoVerse
OctoVerse contains three sub-worlds
OS (tested) | Environment Goal | |
---|---|---|
OctoGibson | Ubuntu 20.04 | 500 Tasks on OmniGibson |
OctoGTA | Windows 11 | 20 Tasks to evaluate transfer learning |
OctoMC | Ubuntu/Windows | 20 Tasks to evaluate transfer learning on MineCraft worlds, such as making an axe. |
- Training data collection pipeline in
octogibson
environment - Evaluation pipeline in
octogibson
environment - Evaluation pipeline in
octogta
environment - Training pipeline of the
octopus
model
Contact: Leave issue or contact jingkang001@e.ntu.edu.sg
and dongyh20@mails.tsinghua.edu.cn
. We are on call to respond.
π¦Ύ Updates
[2023-10]
- π€ Introducing Project Octopus' homepage: https://choiszt.github.io/Octopus.
- π€ Check our paper introducing Octopus in details.
π Get Started
- Training Data Collection: For data collection from
octogibson
environment, you need to set up two conda environments:omnigibson
andgpt4
. Theomnigibson
environment has an agent to act following the instruction fromgpt4
environment. Please checkout here for detailed information. - Evaluation in OctoGibson: We provide the pipeline that the simulator sends messages to the Octopus server and gets responses to control the agent.
- Evaluation in OctoGTA: We provide instructions, code, and MOD so that the Octopus can complete tasks in the GTA environment. Please checkout here for detailed information.
- Octopus Training: We provide code for training Octopus. Please checkout here for detailed information.
π Citation
If you found this repository useful, please consider citing:
@article{yang2023octopus,
title = {Octopus: Embodied Vision-Language Programmer from Environmental Feedback},
author = {Jingkang Yang and Yuhao Dong and Shuai Liu and Bo Li and Ziyue Wang and Chencheng Jiang and Haoran Tan and Jiamu Kang and Yuanhan Zhang and Kaiyang Zhou and Ziwei Liu},
year = {2023},
}
π¨βπ« Acknowledgements
We thank the OmniGibson team for their help and great contribution to the open-source community.