Skip to main content

rt-2 - PyTorch

Project description

Multi-Modality

Robotic Transformer 2 (RT-2): The Vision-Language-Action Model

rt gif

GitHub issues GitHub forks GitHub stars GitHub license Share on Twitter Share on FacebookShare on LinkedIn Discord Share on Reddit Share on Hacker News Share on Pinterest Share on WhatsApp


Robotic Transformer 2 (RT-2) leverages both web and robotics data to generate actionable instructions for robotic control.

CLICK HERE FOR THE PAPER

Installation

RT-2 can be easily installed using pip:

pip install rt2

Additionally, you can manually install the dependencies:

pip install -r requirements.txt

Usage

The RT2 class is a PyTorch module that integrates the PALM-E model into the RT-2 class. Here are some examples of how to use it:

Initialization

First, you need to initialize the RT2 class. You can do this by providing the necessary parameters to the constructor:

import torch 
from rt2.model import RT2

rt2 = RT2()

video = torch.randn(2, 3, 6, 224, 224)
instructions = [
    "bring me an apple on that tree"
]

train_logits = rt2(video, instructions)
rt2.eval()
eval_logits = rt2(video, instructions, cond_scale=2)

Forward Pass

After initializing the RT2 class, you can perform a forward pass by calling the forward method and providing a video and optional texts:

video = torch.rand((1, 3, 224, 224))
texts = ["this is a text"]
output = rt2(video, texts)
  • The forward method returns the logits for the given video and texts.

Changing Parameters

You can also change the parameters of the RT2 class after initialization. For example, you can change the number of actions and action bins:

rt2.num_actions = 5
rt2.action_bins = 128
  • After changing the parameters, you can perform a forward pass as before:
output = rt2(video, texts)

Saving and Loading The Model

torch.save(rt2.state_dict(), 'rt3_model.pth')
  • You can then load the model with `torch.load``
from rt2.model import RT2

model = RT2()

model.load_state_dict(torch.load('rt_model.pth'))

Eval the Model

  • Evaluate RT2 by setting it to eval mode and then performing a forward pass
model.eval()
with torch.no_grad():
    video = torch.randn((1, 3, 10, 224))
    texts = ["this is  atest"]
    output = model(video, texts)

Benefits

RT-2 stands at the intersection of vision, language, and action, delivering unmatched capabilities and significant benefits for the world of robotics.

  • Leveraging web-scale datasets and firsthand robotic data, RT-2 provides exceptional performance in understanding and translating visual and semantic cues into robotic control actions.
  • RT-2's architecture is based on well-established models, offering a high chance of success in diverse applications.
  • With clear installation instructions and well-documented examples, you can integrate RT-2 into your systems quickly.
  • RT-2 simplifies the complexities of multi-domaster understanding, reducing the burden on your data processing and action prediction pipeline.

Model Architecture

RT-2 integrates a high-capacity Vision-Language model (VLM), initially pre-trained on web-scale data, with robotics data from RT-2. The VLM uses images as input to generate a sequence of tokens representing natural language text. To adapt this for robotic control, RT-2 outputs actions represented as tokens in the model’s output.

RT-2 is fine-tuned using both web and robotics data. The resultant model interprets robot camera images and predicts direct actions for the robot to execute. In essence, it converts visual and language patterns into action-oriented instructions, a remarkable feat in the field of robotic control.

Datasets

Head over to see some datasets they used in the paper

Appreciation

  • Anthony Brohan, Noah Brown, Justice Carbajal, Yevgen Chebotar, Xi Chen, Krzysztof Choromanski,
  • Tianli Ding, Danny Driess, Avinava Dubey, Chelsea Finn, Pete Florence, Chuyuan Fu,
  • Montse Gonzalez Arenas, Keerthana Gopalakrishnan, Kehang Han, Karol Hausman, Alexander Herzog,
  • Jasmine Hsu, Brian Ichter, Alex Irpan, Nikhil Joshi, Ryan Julian, Dmitry Kalashnikov, Yuheng Kuang,
  • Isabel Leal, Lisa Lee, Tsang-Wei Edward Lee, Sergey Levine, Yao Lu, Henryk Michalewski, Igor Mordatch,
  • Karl Pertsch, Kanishka Rao, Krista Reymann, Michael Ryoo, Grecia Salazar, Pannag Sanketi,
  • Pierre Sermanet, Jaspiar Singh, Anikait Singh, Radu Soricut, Huong Tran, Vincent Vanhoucke, Quan Vuong,
  • Ayzaan Wahid, Stefan Welker, Paul Wohlhart, Jialin Wu, Fei Xia, Ted Xiao, Peng Xu, Sichun Xu, Tianhe Yu,
  • and Brianna Zitkovich

for writing this amazing paper and advancing Humanity

  • LucidRains for providing the base repositories for PALM and RT-1

  • Any you yes the Human looking at this right now, I appreciate you and love you.

Commercial Use Cases

The unique capabilities of RT-2 open up numerous commercial applications:

  • Automated Factories: RT-2 can significantly enhance automation in factories by understanding and responding to complex visual and language cues.
  • Healthcare: In robotic surgeries or patient care, RT-2 can assist in understanding and performing tasks based on both visual and verbal instructions.
  • Smart Homes: Integration of RT-2 in smart home systems can lead to improved automation, understanding homeowner instructions in a much more nuanced manner.

Examples and Documentation

Detailed examples and comprehensive documentation for using RT-2 can be found in the examples directory and the documentation directory, respectively.

Contributing

Contributions to RT-2 are always welcome! Feel free to open an issue or pull request on the GitHub repository.

License

RT-2 is provided under the MIT License. See the LICENSE file for details.

Contact

For any queries or issues, kindly open a GitHub issue or get in touch with kyegomez.

Citation

@inproceedings{RT-2,2023,
  title={},
  author={Anthony Brohan, Noah Brown, Justice Carbajal, Yevgen Chebotar, Xi Chen, Krzysztof Choromanski,
Tianli Ding, Danny Driess, Avinava Dubey, Chelsea Finn, Pete Florence, Chuyuan Fu,
Montse Gonzalez Arenas, Keerthana Gopalakrishnan, Kehang Han, Karol Hausman, Alexander Herzog,
Jasmine Hsu, Brian Ichter, Alex Irpan, Nikhil Joshi, Ryan Julian, Dmitry Kalashnikov, Yuheng Kuang,
Isabel Leal, Lisa Lee, Tsang-Wei Edward Lee, Sergey Levine, Yao Lu, Henryk Michalewski, Igor Mordatch,
Karl Pertsch, Kanishka Rao, Krista Reymann, Michael Ryoo, Grecia Salazar, Pannag Sanketi,
Pierre Sermanet, Jaspiar Singh, Anikait Singh, Radu Soricut, Huong Tran, Vincent Vanhoucke, Quan Vuong,
Ayzaan Wahid, Stefan Welker, Paul Wohlhart, Jialin Wu, Fei Xia, Ted Xiao, Peng Xu, Sichun Xu, Tianhe Yu,
and Brianna Zitkovich},
  year={2024}
}

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

rt2-0.0.5.tar.gz (18.6 kB view details)

Uploaded Source

Built Distribution

rt2-0.0.5-py3-none-any.whl (18.8 kB view details)

Uploaded Python 3

File details

Details for the file rt2-0.0.5.tar.gz.

File metadata

  • Download URL: rt2-0.0.5.tar.gz
  • Upload date:
  • Size: 18.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.3.2 CPython/3.11.0 Darwin/22.4.0

File hashes

Hashes for rt2-0.0.5.tar.gz
Algorithm Hash digest
SHA256 526a27670ac21293602309d5f9f22c603cc7c31da40c903f72d94fce670845f3
MD5 0b4b83a6f171e1bff8e06be2772104ec
BLAKE2b-256 2e886fa52d276b8a5185c70cd7c8f8c6c45aa76c55b564ebdc61af92adaf1e6a

See more details on using hashes here.

File details

Details for the file rt2-0.0.5-py3-none-any.whl.

File metadata

  • Download URL: rt2-0.0.5-py3-none-any.whl
  • Upload date:
  • Size: 18.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.3.2 CPython/3.11.0 Darwin/22.4.0

File hashes

Hashes for rt2-0.0.5-py3-none-any.whl
Algorithm Hash digest
SHA256 dba4ad6e36201955217022f447886633becfa751a854ffc666f42b87ac9873e0
MD5 658e1e46830e8009ca742a2f466decb5
BLAKE2b-256 63321d47bd23d5af5fd5543dcb841867ab54061b86c8ad0580c82c1fbec107c8

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page