Repolode
mgonzs13

mgonzs13/llama_ros

Набор пакетов ROS 2 для запуска LLM на основе GGUF, мультимодальных моделей и аудиомоделей через llama.cpp в узлах ROS 2.

Звёзды
268
Форки
50
Открытые issues
0
Последний коммит
15 часов назад

Что это?

llama_ros оборачивает llama.cpp в узлы ROS 2, позволяя робототехническим проектам запускать в графе ROS 2 языковые модели GGUF, мультимодальные модели (через llava.cpp), аудиоязыковые модели, а также модели для создания эмбеддингов и ранжирования. Модели настраиваются через параметры ROS 2 или YAML-файлы, а загружать их можно напрямую с Hugging Face, указав репозиторий и имя файла.

Пакет предоставляет совместимый с OpenAI интерфейс chat completions с вызовом инструментов, режимом рассуждений и потоковой передачей данных. Также поддерживаются speculative decoding с использованием draft-модели и ngram-методов, грамматики GBNF, адаптеры LoRA с возможностью смены во время работы и control vectors. Параметры позволяют настраивать выгрузку вычислений на GPU, многопоточность CPU, типы KV-кэша, масштабирование RoPE и YaRN, а также режимы загрузки в память.

В репозитории есть инструмент командной строки `ros2 llama` для запуска модели из YAML-файла и отправки ей запросов, а также интеграция с LangChain, Docker-образы и готовые launch-файлы для нескольких моделей. Сборки рассчитаны на ROS 2 Humble — Lyrical.

Ключевые возможности

  • 01Запускает LLM на основе GGUF, VLM на базе llava и аудиоязыковые модели в виде узлов ROS 2.
  • 02Предоставляет совместимый с OpenAI интерфейс chat completions с вызовом инструментов и потоковой передачей данных.
  • 03Поддерживает speculative decoding с использованием draft-модели и ngram-методов.
  • 04Загружает модели с Hugging Face или локальные файлы GGUF.
  • 05Предлагает выгрузку вычислений на GPU, возможность сборки с CUDA и подробные параметры настройки CPU и памяти.
  • 06Включает CLI `ros2 llama` для запуска моделей из YAML и отправки запросов.

Сценарии использования

  • Добавить локальную языковую модель в робота на ROS 2 для обработки команд на естественном языке или чата.
  • Добавить роботу возможности мультимодального понимания, передавая изображения с камеры в узел VLM.
  • Создавать RAG- или LangChain-конвейеры, в которых узлы ROS 2 обращаются к локальной модели.
  • Запускать модели для создания эмбеддингов или ранжирования в системе ROS 2.

Быстрый старт

  1. 1

    Клонируйте репозиторий llama_ros в папку src рабочего пространства ROS 2

    git clone https://github.com/mgonzs13/llama_ros.git
  2. 2

    Установите зависимости Python из requirements.txt

    pip3 install --break-system-packages --ignore-installed -r requirements.txt
  3. 3

    Установите зависимости ROS 2, затем соберите рабочее пространство с помощью colcon

    rosdep install --from-paths src --ignore-src -r -y
  4. 4

    Запустите предварительно заданную модель из её конфигурации YAML

    ros2 llama launch ~/ros2_ws/src/llama_ros/llama_bringup/models/StableLM-Zephyr.yaml

Что важно знать

  • Требуется установленный ROS 2 и сборка из исходного кода с помощью colcon.
  • Модели загружаются с Hugging Face и должны быть настроены в файлах launch или YAML.

В подборках

Темы

Частые вопросы

Что такое llama_ros?
Набор пакетов ROS 2 для запуска LLM на основе GGUF, мультимодальных моделей и аудиомоделей через llama.cpp в узлах ROS 2. llama_ros оборачивает llama.cpp в узлы ROS 2, позволяя робототехническим проектам запускать в графе ROS 2 языковые модели GGUF, мультимодальные модели (через llava.cpp), аудиоязыковые модели, а также модели для создания эмбеддингов и ранжирования. Модели настраиваются через параметры ROS 2 или YAML-файлы, а загружать их можно напрямую с Hugging Face, указав репозиторий и имя файла.
llama_ros можно использовать бесплатно? Какая у него лицензия?
llama_ros распространяется с открытым исходным кодом под лицензией MIT. Перед использованием в коммерческих продуктах проверьте условия лицензии.
llama_ros всё ещё поддерживается?
Активно поддерживается. Последний коммит в llama_ros — 6 нояб. 2026 г..
Для чего можно использовать llama_ros?
Добавить локальную языковую модель в робота на ROS 2 для обработки команд на естественном языке или чата. Добавить роботу возможности мультимодального понимания, передавая изображения с камеры в узел VLM. Создавать RAG- или LangChain-конвейеры, в которых узлы ROS 2 обращаются к локальной модели. Запускать модели для создания эмбеддингов или ранжирования в системе ROS 2.
Как установить llama_ros?
Клонируйте репозиторий llama_ros в папку src рабочего пространства ROS 2: git clone https://github.com/mgonzs13/llama_ros.git Установите зависимости Python из requirements.txt: pip3 install --break-system-packages --ignore-installed -r requirements.txt Установите зависимости ROS 2, затем соберите рабочее пространство с помощью colcon: rosdep install --from-paths src --ignore-src -r -y Запустите предварительно заданную модель из её конфигурации YAML: ros2 llama launch ~/ros2_ws/src/llama_ros/llama_bringup/models/StableLM-Zephyr.yaml
Где скачать llama_ros?
Исходный код и инструкции по установке — на GitHub: https://github.com/mgonzs13/llama_ros

Описание создано ИИ на основе README проекта. Статистика GitHub обновляется ежедневно.

Похожие проекты