Create ROS packages using LLMs
Learning ROS (Robot Operating System) may prove to be challenging for robotic enthusiasts, college students, or professional engineers who are using it for the first time. Sometimes this skill barrier forces them to give up on ROS altogether and opt out for non-standard options. ROScribe eliminates the skill barrier for beginners, and saves time and hassle for skilled engineers.
ROScribe combines the power and flexibility of large language models (LLMs) with prompt tuning techniques to capture the details of your robotic design and to automatically create an entire ROS package for your project.
Inspired by GPT Synthesizer, ROScribe builds an entire ROS package through a series of specification steps that identify the package elements in a top-down approach. In particular, ROScribe helps you with the following steps:
- Creating a list of ROS nodes and topics, based on your application and deployment (e.g. simulation vs. real-world)
- Visualizing your project in an RQT-style graph
- Generating code for each ROS node
- Writing launch file and installation scripts
If you are new to ROS, ROScribe will be your robot(ics) mentor 🤖️
If you are a seasoned ROS user, ROScribe can help with creating a blueprint for your ROS package 📦️
For further detail of how to install and use ROScribe, please refer to our Github and watch our demo:
ROScribe v0.0.2 only supports ROS1 with Python code generation. We plan to add the following features in the upcoming releases:
- ROS2 & ROS-Industrial support
- C++ code generation
- ROS1 to ROS2 automated codebase migration
- Verification of an already existing codebase
- Graphic User Interface
- Enabling and integrating other robotic tools
Call for contributor
ROScribe is a free and open source software. We encourage all of you to try it out and let us know what you think. We have a lot of plans for this project and we intend to support and maintain it regularly. we welcome all robotics enthusiasts to contribute to ROScribe. During each release, we will announce the list of new contributors.