Um cliente de chat em Flutter que executa modelos GGUF no próprio dispositivo, em Android e iOS, ou se conecta a APIs na nuvem da OpenAI, Anthropic, Gemini ou Kimi.
mgonzs13/llama_ros
Pacotes ROS 2 para executar LLMs baseados em GGUF e modelos de visão e áudio via llama.cpp em nós ROS 2.
- Estrelas
- 268
- Forks
- 50
- Issues abertas
- 0
- Último commit
- ontem
O que é?
llama_ros integra o llama.cpp como nós ROS 2, permitindo que projetos de robótica executem modelos de linguagem GGUF, modelos de visão e linguagem (via llava.cpp), modelos de áudio e linguagem, de embeddings e de reranking em um grafo ROS 2. Os modelos são configurados por parâmetros ROS 2 ou arquivos YAML e podem ser baixados diretamente do Hugging Face usando o repositório e o nome do arquivo.
O pacote oferece uma interface de chat completions compatível com a OpenAI, com chamadas de ferramentas, raciocínio e streaming. Também oferece suporte a speculative decoding com métodos baseados em draft model e n-gramas, gramáticas GBNF, adaptadores LoRA que podem ser alterados em tempo de execução e vetores de controle. Os parâmetros abrangem descarregamento para GPU, threads de CPU, tipos de cache KV, escalonamento RoPE e YaRN e modos de carregamento de memória.
O repositório inclui uma ferramenta de linha de comando `ros2 llama` para iniciar um modelo a partir de um arquivo YAML e enviar prompts, além de integração com LangChain, imagens Docker e arquivos de inicialização predefinidos para vários modelos. As compilações são destinadas ao ROS 2 Humble até o Lyrical.
Recursos principais
- 01Executa LLMs GGUF, VLMs baseados em llava e modelos de áudio e linguagem como nós ROS 2.
- 02Oferece uma interface de chat completions compatível com a OpenAI, com chamadas de ferramentas e streaming.
- 03Oferece suporte a speculative decoding com métodos baseados em draft model e n-gramas.
- 04Baixa modelos do Hugging Face ou carrega arquivos GGUF locais.
- 05Oferece descarregamento para GPU, opção de compilação com CUDA e parâmetros detalhados para ajustar CPU e memória.
- 06Inclui uma CLI `ros2 llama` para iniciar modelos a partir de YAML e enviar prompts.
Casos de uso
- Adicionar um modelo de linguagem local a um robô ROS 2 para receber comandos em linguagem natural ou conversar.
- Dar ao robô capacidade de compreensão de visão e linguagem, enviando imagens da câmera a um nó VLM.
- Criar pipelines RAG ou LangChain que consultam um modelo local a partir de nós ROS 2.
- Executar modelos de embeddings ou reranking em um sistema ROS 2.
Início rápido
- 1
Clone o repositório llama_ros na pasta src do seu workspace ROS 2
git clone https://github.com/mgonzs13/llama_ros.git - 2
Instale as dependências Python do requirements.txt
pip3 install --break-system-packages --ignore-installed -r requirements.txt - 3
Instale as dependências do ROS 2 e, em seguida, compile o workspace com colcon
rosdep install --from-paths src --ignore-src -r -y - 4
Inicie um modelo predefinido a partir da configuração YAML
ros2 llama launch ~/ros2_ws/src/llama_ros/llama_bringup/models/StableLM-Zephyr.yaml
Antes de usar
- É necessário ter o ROS 2 instalado e compilar a partir do código-fonte com colcon.
- Os modelos são baixados do Hugging Face e precisam ser configurados em arquivos launch ou YAML.
Em coleções
Tópicos
Perguntas frequentes
- O que é llama_ros?
- Pacotes ROS 2 para executar LLMs baseados em GGUF e modelos de visão e áudio via llama.cpp em nós ROS 2. llama_ros integra o llama.cpp como nós ROS 2, permitindo que projetos de robótica executem modelos de linguagem GGUF, modelos de visão e linguagem (via llava.cpp), modelos de áudio e linguagem, de embeddings e de reranking em um grafo ROS 2. Os modelos são configurados por parâmetros ROS 2 ou arquivos YAML e podem ser baixados diretamente do Hugging Face usando o repositório e o nome do arquivo.
- llama_ros é gratuito? Qual é a licença?
- llama_ros é open source sob a licença MIT. Confira os termos da licença antes de usá-lo em produtos comerciais.
- llama_ros ainda é mantido?
- Manutenção ativa. O último commit de llama_ros foi em 6 de nov. de 2026.
- Para que posso usar llama_ros?
- Adicionar um modelo de linguagem local a um robô ROS 2 para receber comandos em linguagem natural ou conversar. Dar ao robô capacidade de compreensão de visão e linguagem, enviando imagens da câmera a um nó VLM. Criar pipelines RAG ou LangChain que consultam um modelo local a partir de nós ROS 2. Executar modelos de embeddings ou reranking em um sistema ROS 2.
- Como instalar llama_ros?
- Clone o repositório llama_ros na pasta src do seu workspace ROS 2: git clone https://github.com/mgonzs13/llama_ros.git Instale as dependências Python do requirements.txt: pip3 install --break-system-packages --ignore-installed -r requirements.txt Instale as dependências do ROS 2 e, em seguida, compile o workspace com colcon: rosdep install --from-paths src --ignore-src -r -y Inicie um modelo predefinido a partir da configuração YAML: ros2 llama launch ~/ros2_ws/src/llama_ros/llama_bringup/models/StableLM-Zephyr.yaml
- Onde consigo llama_ros?
- O código-fonte e as instruções de instalação estão no GitHub: https://github.com/mgonzs13/llama_ros
Resumo gerado por IA a partir do README do projeto. As estatísticas do GitHub são atualizadas diariamente.
Projetos relacionados
Binding de React Native para llama.cpp, que permite executar LLMs GGUF no dispositivo em apps para iOS e Android.
Biblioteca Go para busca exata de vetores por similaridade de cosseno, com embeddings locais opcionais via llama.cpp e GGUF ou embeddings na nuvem por APIs compatíveis com OpenAI.
Busca arquivos localmente, no próprio dispositivo, encontrando fotos, PDFs, documentos, gravações, vídeos e código pelo que há neles, no Mac, Windows e Linux.
Uma extensão de linha de comando para ROS 2 que permite consultar, explorar e executar comandos em linguagem natural usando LLMs da OpenAI ou Ollama.
Um aplicativo desktop gratuito e de código aberto para executar LLMs localmente, com interface de chat e API compatível com OpenAI e Anthropic.