Skip to main content

ROSA: the Robot Operating System Agent

Project description


ROSA - The ROS Agent 🤖

  The ROS Agent (ROSA) is designed to interact with ROS-based
robotics systems using natural language queries. 🗣️🤖

arXiv ROS 1 ROS 2 License SLIM

Main Branch Dev Branch Publish Status Version Downloads

[!IMPORTANT] 📚 New to ROSA? Check out our Wiki for documentation, guides and FAQs!

ROSA is your AI-powered assistant for ROS1 and ROS2 systems. Built on the Langchain framework, ROSA helps you interact with robots using natural language, making robotics development more accessible and efficient.

🚀 Quick Start

Requirements

  • Python 3.9+
  • ROS Noetic or higher

Installation

pip3 install jpl-rosa

Usage Examples

from rosa import ROSA

llm = get_your_llm_here()
agent = ROSA(ros_version=1, llm=llm)
agent.invoke("Show me a list of topics that have publishers but no subscribers")

For detailed information on configuring the LLM, please refer to our Model Configuration Wiki page.

Adapting ROSA for Your Robot 🔧

ROSA is designed to be easily adaptable to different robots and environments. You can create custom agents by either inheriting from the ROSA class or creating a new instance with custom parameters.

For detailed information on creating custom agents, adding tools, and customizing prompts, please refer to our Custom Agents Wiki page.

TurtleSim Demo 🐢

We have included a demo that uses ROSA to control the TurtleSim robot in simulation. To run the demo, you will need to have Docker installed on your machine. 🐳

The following video shows ROSA reasoning about how to draw a 5-point star, then executing the necessary commands to do so.

https://github.com/user-attachments/assets/77b97014-6d2e-4123-8d0b-ea0916d93a4e

For detailed instructions on setting up and running the TurtleSim demo, please refer to our TurtleSim Demo Guide in the Wiki.

📘 Learn More

Changelog

See our CHANGELOG.md for a history of our changes.

Contributing

Interested in contributing to our project? Please see our: CONTRIBUTING.md

For guidance on how to interact with our team, please see our code of conduct located at: CODE_OF_CONDUCT.md

For guidance on our governance approach, including decision-making process and our various roles, please see our governance model at: GOVERNANCE.md

License

See our: LICENSE

Support

Key points of contact are:


ROSA: Robot Operating System Agent 🤖
Copyright (c) 2024. Jet Propulsion Laboratory. All rights reserved.

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

jpl_rosa-1.0.7.tar.gz (37.0 kB view details)

Uploaded Source

Built Distribution

jpl_rosa-1.0.7-py3-none-any.whl (46.5 kB view details)

Uploaded Python 3

File details

Details for the file jpl_rosa-1.0.7.tar.gz.

File metadata

  • Download URL: jpl_rosa-1.0.7.tar.gz
  • Upload date:
  • Size: 37.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.12.7

File hashes

Hashes for jpl_rosa-1.0.7.tar.gz
Algorithm Hash digest
SHA256 1b0a983313d5860aad2c7f3092a36fb45aa31e3f56fed74267844e365504bef3
MD5 f184b1bd5cb2d15c53419310f0605f8e
BLAKE2b-256 538d89babdb20b5fadbe62d05dcb621e5e6ca24b6fe448a6c8fde48be0975093

See more details on using hashes here.

File details

Details for the file jpl_rosa-1.0.7-py3-none-any.whl.

File metadata

  • Download URL: jpl_rosa-1.0.7-py3-none-any.whl
  • Upload date:
  • Size: 46.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.12.7

File hashes

Hashes for jpl_rosa-1.0.7-py3-none-any.whl
Algorithm Hash digest
SHA256 70d4f0359511fecfd88bb2e91affdbae49497e78745b57aea8a6f17a44d24570
MD5 67384f8c537c188da2f9d82366d15a77
BLAKE2b-256 526448faa8688b3b79a05e08f9d7fe25d50f441b5bc803c999d9876f4d93d1cf

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