Skip to content

docs: update docs to reflect rai on pypi and interfaces on apt #612

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 15 commits into from
Jun 3, 2025
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 5 additions & 3 deletions docs/demos/agriculture.md
Original file line number Diff line number Diff line change
Expand Up @@ -15,19 +15,21 @@ optimally by calling the RAI agent to decide what to do.
Ensure that every command is run in a sourced shell using `source setup_shell.sh`
Ensure ROS 2 is sourced.

1. **Download the Latest Release**
1. Follow the RAI setup instructions in the [quick setup guide](../setup/install.md#setting-up-developer-environment).

2. Download the Latest Release

```bash
./scripts/download_demo.sh agriculture
```

2. **Run the Simulation**
3. Run the Simulation

```bash
./demo_assets/agriculture/RAIAgricultureDemo/RAIAgricultureDemo.GameLauncher -bg_ConnectToAssetProcessor=0
```

3. **Start the Tractor Node**
4. Start the Tractor Node

```bash
python examples/agriculture-demo.py --tractor_number 1
Expand Down
3 changes: 1 addition & 2 deletions docs/demos/debugging_assistant.md
Original file line number Diff line number Diff line change
Expand Up @@ -18,8 +18,7 @@ where you can ask questions about your ROS 2 setup and execute common debugging

## Running the Assistant

1. Make sure you have RAI installed and configured according to the
[quick setup guide](../setup/install.md)
1. Follow the RAI setup instructions in the [quick setup guide](../setup/install.md#setting-up-developer-environment).

2. Launch the debugging assistant:

Expand Down
2 changes: 1 addition & 1 deletion docs/demos/manipulation.md
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ manipulation techniques.

Make sure ROS 2 is sourced. (e.g. `source /opt/ros/humble/setup.bash`)

1. Follow the RAI setup instructions in the [quick setup guide](../setup/install.md).
1. Follow the RAI setup instructions in the [quick setup guide](../setup/install.md#setting-up-developer-environment).
2. Download additional dependencies:

```shell
Expand Down
6 changes: 4 additions & 2 deletions docs/demos/rosbot_xl.md
Original file line number Diff line number Diff line change
Expand Up @@ -16,13 +16,15 @@ platform in a nice apartment.

Make sure ROS 2 is sourced. (e.g. `source /opt/ros/humble/setup.bash`)

1. Download the newest binary release:
1. Follow the RAI setup instructions in the [quick setup guide](../setup/install.md#setting-up-developer-environment).

2. Download the newest binary release:

```bash
./scripts/download_demo.sh rosbot
```

2. Install and download required packages
3. Install and download required packages

```bash
sudo apt install ros-${ROS_DISTRO}-navigation2 ros-${ROS_DISTRO}-nav2-bringup
Expand Down
61 changes: 55 additions & 6 deletions docs/setup/install.md
Original file line number Diff line number Diff line change
@@ -1,16 +1,65 @@
# Quick setup guide

Before going further, make sure you have ROS 2 (Jazzy or Humble) installed and sourced on your
system. If you don't have ROS 2 follow the installation documentation for
[Humble](https://docs.ros.org/en/humble/Installation/Ubuntu-Install-Debs.html) or
[Jazzy](https://docs.ros.org/en/jazzy/Installation/Ubuntu-Install-Debs.html). Make sure that
`ros-dev-tools` are installed.
Before going further, make sure you have ROS 2 (jazzy or humble) installed and sourced on your system.

!!! tip "Docker images"

RAI has experimental docker images. See the [docker](setup_docker.md) for
instructions.

There are two ways to start using RAI:

1. Installing RAI using pip (recommended for end users)

2. Setting up a developer environment using poetry (recommended for developers)

## Installing RAI

??? tip "Virtual environment"
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I would make it untoggled by default


We recommend installing RAI in a virtual environment (e.g., [virtualenv](https://docs.python.org/3/library/venv.html), [uv](https://docs.astral.sh/uv/), or [poetry](https://python-poetry.org/docs/)) to keep your dependencies organized. Make sure to use the same version of python as the one used for ROS 2 (typically `python3.10` for Humble and `python3.12` for Jazzy).

If you plan to use ROS 2 commands (`ros2 run` or `ros2 launch`), you'll need to add your virtual environment's Python packages to your `$PYTHONPATH`. This step is only necessary for ROS 2 integration - if you're just running RAI directly with Python, you can skip this step.

For reference, here's how to set this up when installing RAI from source: [setup_shell.sh](https://github.com/RobotecAI/rai/blob/245efa95cdb83a81294bc28da814962bff84be20/setup_shell.sh#L32)

1. Install core functionality:

```bash
pip install rai-core
```

2. Initialize the global configuration file:

```bash
rai-config-init
```

3. Optionally install ROS 2 dependencies:

```bash
sudo apt install ros-${ROS_DISTRO}-rai-interfaces
```

!!! important "Package availability"

`rai_openset` and `rai_nomad` are not yet available through pip. If your workflow relies on openset detection or NoMaD integration, please refer to the
[developer environment instructions](#setting-up-developer-environment) setup.

`rai_interfaces` is available as `apt` package. However, due to package distribution delays, the latest version may not be immediately available. If you encounter missing imports, please build `rai_interfaces` from [source](https://github.com/RobotecAI/rai_interfaces).

??? tip "RAI modules"

RAI is a modular framework. You can install only the modules you need.

| Module | Description | Documentation |
|--------|-------------|-------------|
| rai-core | Core functionality | [link](../API_documentation/overview.md) |
| rai-whoami | Embodiment module | [link](https://github.com/RobotecAI/rai/tree/{{branch}}/src/rai_whoami) |
| rai-s2s | Speech-to-Speech module | [link](../speech_to_speech/overview.md) |
| rai-sim | Simulation module | [link](../simulation_and_benchmarking/overview.md) |
| rai-bench | Benchmarking module | [link](../simulation_and_benchmarking/overview.md) |

??? tip "RAI outside of ROS 2"

RAI can be used outside of ROS 2. This means that no ROS 2 related features will be available.
Expand All @@ -23,7 +72,7 @@ system. If you don't have ROS 2 follow the installation documentation for

If you later decide to integrate with ROS 2, you can simply install and source ROS 2, and all ROS 2-specific RAI features (such as connectors, aggregators, and tools) will become available automatically.

## 1. Setting up the workspace:
## Setting up developer environment

### 1.1 Install poetry

Expand Down
2 changes: 1 addition & 1 deletion docs/setup/vendors.md
Original file line number Diff line number Diff line change
Expand Up @@ -93,5 +93,5 @@ For configuration use `Speech Recognition` tab in [RAI Configurator][configurato

Usage examples can be found in [Voice Interface Tutorial][s2s]

[configurator]: ./install.md#14-configure-rai
[configurator]: ./install.md#15-configure-rai
[s2s]: ../tutorials/voice_interface.md
1 change: 1 addition & 0 deletions mkdocs.yml
Original file line number Diff line number Diff line change
Expand Up @@ -74,6 +74,7 @@ nav:
- Home:
- Overview: index.md
- Is RAI a good fit for me?: intro/what_is_rai.md
- Getting started: setup/install.md
- Getting started:
- Local setup: setup/install.md
- Docker setup: setup/setup_docker.md
Expand Down
28 changes: 23 additions & 5 deletions src/rai_core/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,11 +2,6 @@

RAI is a flexible AI agent framework to develop and deploy Embodied AI features for your robots.

📚 Visit [robotecai.github.io/rai](https://robotecai.github.io/rai/) for the latest documentation, setup
guide and tutorials. 📚

---

<div align="center">

![rai-image](https://raw.githubusercontent.com/RobotecAI/rai/refs/heads/development/docs/imgs/RAI_simple_diagram_medium.png)
Expand All @@ -30,6 +25,29 @@ guide and tutorials. 📚

---

## Installation

1. Install RAI:

```bash
pip install rai-core
```

2. Initialize the global configuration file:

```bash
rai-config-init
```

3. Optionally install ROS 2 dependencies:

```bash
sudo apt install ros-${ROS_DISTRO}-rai-interfaces
```

For more visit [robotecai.github.io/rai](https://robotecai.github.io/rai/) for the latest documentation, setup
guide and tutorials.

## 🎯 Overview

| Category | Description | Features |
Expand Down
23 changes: 23 additions & 0 deletions src/rai_whoami/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,29 @@ It generates a comprehensive system prompt (embodiment info) for robots controll

---

## Installation

1. Install rai whoami:

```bash
pip install rai-whoami
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Same considerations for ubuntu 24.04 as in rai-core.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@maciejmajek I think it would be beneficial to mention the tip about ros2 packages here as well

```

2. Initialize the global configuration file (if not already done):

```bash
rai-config-init
```

3. Optionally install ROS 2 dependencies:

```bash
sudo apt install ros-${ROS_DISTRO}-rai-interfaces
```

For more visit [robotecai.github.io/rai](https://robotecai.github.io/rai/) for the latest documentation, setup
guide and tutorials.

## How It Works

Given a directory containing robot documentation (documents, images, URDFs), RAI Whoami processes these resources to produce a structured representation of the robot, including:
Expand Down
Loading