Skip to content

Installation and Usage

Clone the repository and start the software stack using the recommended docker compose.

IMPORTANT: Make sure to also clone the ric-messages git submodule located in src folder.

Running

Docker Compose

  1. Install Docker and Docker Compose for your operating system
  2. Inside the repository run docker compose up
    • Specify the file parameter -f with compose.cpu.yaml if there is no Nvidia GPU present on your system.
    • This will first build or pull the required docker images and then download the model defined in the .env file and start llama-swap and the text to speech ROS2 node that provides the /tts service.
    • Do note that the ROS2 node makes use of rmw_zenoh for ROS2 communication.
  3. Send ROS2 messages to /tts service using language (either en or de by default) and text to turn into speech. The llama-swap container will then load up the language specific model and turn the provided text into speech. Check the llama-swap.config.yaml file in the root of the repository to configure llama-swap as desired or add more languages. (Do note that this also requires adjusting the ROS2 node)
  4. Stop the server either by aborting using CTRL-C or docker compose stop if started detached -d.

Manual

Follow the relevant documentation on llama-swap for how to compile and run the llama-server with it and the ROS2 documentation on how to build packages and run nodes.

Make sure to install PyTorch and SNAC in your compile and runtime environment as they are not automatically installed by ROS2's dependency manager.

Note: The recommended way to build the ROS2 node as of writing is using colcon.