Implementation of RT1 (Robotic Transformer), from the Robotics at Google team, in Pytorch
git clone https://github.com/Rohan138/rt1-pytorch.git
pip install -e .
# See main.py for additional arguments
python main.py --train-split "train[:1000]" --eval-split "train[:1000]" \
--train-batch-size 8 --eval-batch-size 8 --eval-freq 100 --checkpoint-freq 1000 \
--wandb- 11/10/2023: Initial commit! Wrote FiLM-EfficientNet and tests
 - 11/11/2023: Wrote tokenizers and initial RT1 skeleton; separate 
testsfolder download and experiment with datasets - 11/14/2023: Separate 
RT1ModelandRT1Policy; fix einops - 11/16/2023: Add 
data.py; add backUSEembeddings - 11/19/2023: Lots of cleanup; move trajectory logic to 
data.py; added tests for model, policy, and loss; fix action tokenizer - 11/20/2023: Updates to 
data.py; adddevice=cudasupport finalizemain.py; add simple evaluation and checkpointing logic startvd4rl_main.py; cleanup FiLM-EfficientNet files - Finished 
vd4rl_main.py; some additional cleanup; GPU benchmarking 
Note: Per trajectory, the memory consumed is:
- Model: 38 MB
 - Forward (no grad): 384 MB
 - Forward (with grad): 2120 MB
 - Backward: 40 MB
 
-  Add smaller 
vd4rlbenchmarks - Add WanDB logging
 - Add off-policy evaluation to evaluate on test dataset
 - Implement DDP; make sure we check loss reduction stays the same
 - Try onehot encoding discrete actions instead of passing the raw action as a token
 -  Optimize so we don't run tokenizer 6x per image; see 
efficient-encodebranch -  Try predicting last token only; see 
lasttokenbranch - Hyperparameter tuning
 - Tests! All the tests! Unit tests, learning tests, testing all the way!
 - Oh what fun, it is to write, a bunch of tests all day!
 - Try CoW-MOO
 -  Try ViT instead as in the 
lucidrainsimplementation - Train and evaluate on real KUKA robot
 -  Setup lint and CI pipeline; currently running 
blackandisort 
Special thanks to Raghava Uppuluri for all the ideas, late-night deubgging discussions, compute, hardware, and support!
Initial implementation borrowed from lucidrains/robotic-transformer-pytorch
@inproceedings{rt12022arxiv,
    title    = {RT-1: Robotics Transformer for Real-World Control at Scale},
    author   = {Anthony Brohan and Noah Brown and Justice Carbajal and  Yevgen Chebotar and Joseph Dabis and Chelsea Finn and Keerthana Gopalakrishnan and Karol Hausman and Alex Herzog and Jasmine Hsu and Julian Ibarz and Brian Ichter and Alex Irpan and Tomas Jackson and  Sally Jesmonth and Nikhil Joshi and Ryan Julian and Dmitry Kalashnikov and Yuheng Kuang and Isabel Leal and Kuang-Huei Lee and  Sergey Levine and Yao Lu and Utsav Malla and Deeksha Manjunath and  Igor Mordatch and Ofir Nachum and Carolina Parada and Jodilyn Peralta and Emily Perez and Karl Pertsch and Jornell Quiambao and  Kanishka Rao and Michael Ryoo and Grecia Salazar and Pannag Sanketi and Kevin Sayed and Jaspiar Singh and Sumedh Sontakke and Austin Stone and Clayton Tan and Huong Tran and Vincent Vanhoucke and Steve Vega and Quan Vuong and Fei Xia and Ted Xiao and Peng Xu and Sichun Xu and Tianhe Yu and Brianna Zitkovich},
    booktitle = {arXiv preprint arXiv:2204.01691},
    year      = {2022}
}@article{Lu2022ChallengesAO,
  title={Challenges and Opportunities in Offline Reinforcement Learning from Visual Observations},
  author={Cong Lu and Philip J. Ball and Tim G. J. Rudner and Jack Parker-Holder and Michael A. Osborne and Yee Whye Teh},
  journal={ArXiv},
  year={2022},
  volume={abs/2206.04779},
  url={https://api.semanticscholar.org/CorpusID:249605861}
}