ROS2 RAG: A Retrieval-Augmented Generation pipeline for ROS2

Hello ROS community!

Recently, I have been working on the ros2_rag repository, a RAG system implemented as a ROS2 Jazzy package and designed for its use in robotic applications.

Thanks for reading, below there is some additional information about the project:

Features

  • ROS2 lifecycle node
  • Configuration and launch files
  • ROS2 services for queries
  • Knowledge base management and vector-based retrieval
  • LLM integration
  • History management and claim verification

Motivation

Although many RAG frameworks exist outside ROS, there are currently
few reusable ROS2-native implementations.

Additionally, the capability to get insight into what happens through all the information retrieval and completion generation is the main motivation for this development. The ROS2 services return extra arguments with information such as retrieved context chunks to facilitate debugging and fine tuning.

Repo

GitHub: https://github.com/aitor-ibarguren/ros2_rag

The README includes information about the configuration of the node, as well as the different ROS2 services provided.

Feedback

I would appreciate feedback on:

  • API design
  • Additional features
2 Likes