Uma plataforma de simulação para robótica e IA incorporada que combina um mecanismo de física múltipla, um renderizador fotorrealista e um compilador multiplataforma com uma interface Python.
dora-rs/dora
Framework de middleware 100% em Rust para criar aplicações de robótica e IA em tempo real como grafos de fluxo de dados direcionados compostos por nós.
- Estrelas
- 4,034
- Forks
- 463
- Issues abertas
- 111
- Último commit
- há 4 horas
O que é?
Dora (Dataflow-Oriented Robotic Architecture) é um framework para criar aplicações de robótica e IA com nós independentes conectados em um grafo direcionado. Cada nó é um processo separado, escrito em Rust, Python, C ou C++, e os nós trocam dados por meio de entradas e saídas tipadas, declaradas em um arquivo YAML. O framework gerencia a inicialização dos processos, o roteamento de mensagens e o ciclo de vida em uma ou várias máquinas.
Para cargas de trabalho com muitos dados, como quadros de câmera ou nuvens de pontos, o dora usa memória compartilhada sem cópia entre nós na mesma máquina e Zenoh para a comunicação entre máquinas. As mensagens são transportadas no formato Apache Arrow. A CLI permite executar dataflows localmente, iniciar um coordenador e daemons para uso distribuído e inspecionar tópicos, logs e uso de recursos. Também oferece suporte à gravação e reprodução de mensagens, políticas de reinicialização por nó e uma bridge para ROS2.
Dora também inclui um hub de nós para baixar nós reutilizáveis, como câmeras, detectores YOLO e nós de LLM e TTS, por versão, além de um modelo de operadores no mesmo processo para transformações leves.
Recursos principais
- 01Dataflows definidos como grafos direcionados em YAML declarativo, com nós escritos em Rust, Python, C ou C++.
- 02Memória compartilhada sem cópia entre nós na mesma máquina e pub-sub com Zenoh entre máquinas.
- 03Formato de mensagem Apache Arrow de ponta a ponta.
- 04Uma única CLI para execuções locais, clusters distribuídos, logs, inspeção de tópicos e monitoramento de recursos.
- 05Gravação e reprodução de mensagens de dataflow, além de políticas de reinicialização por nó.
- 06Bridge para tópicos, serviços e ações do ROS2.
Casos de uso
- Criar um pipeline de percepção robótica que encadeia nós de captura de câmera, detecção de objetos e visualização.
- Conectar modelos de IA em Python a componentes de controle em Rust ou C++ em um único dataflow.
- Executar um sistema de robótica ou sensores em várias máquinas, com ciclos de vida dos nós coordenados.
- Integrar um sistema ROS2 existente a novos nós baseados em IA.
Início rápido
- 1
Instale o dora CLI pelo crates.io
cargo install dora-cli - 2
Instale a Python node API e as dependências do exemplo
pip install dora-rs numpy pyarrow - 3
Clone o repositório e acesse o diretório
git clone https://github.com/dora-rs/dora.git && cd dora - 4
Execute o dataflow de exemplo sender-transformer-receiver em Python
dora run examples/python-dataflow/dataflow.yml
Antes de usar
- O README indica que o Node Hub é instável.
- A recuperação de dataflows em execução após a reinicialização do coordenador é parcialmente compatível.
Em coleções
Tópicos
Perguntas frequentes
- O que é dora?
- Framework de middleware 100% em Rust para criar aplicações de robótica e IA em tempo real como grafos de fluxo de dados direcionados compostos por nós. Dora (Dataflow-Oriented Robotic Architecture) é um framework para criar aplicações de robótica e IA com nós independentes conectados em um grafo direcionado. Cada nó é um processo separado, escrito em Rust, Python, C ou C++, e os nós trocam dados por meio de entradas e saídas tipadas, declaradas em um arquivo YAML. O framework gerencia a inicialização dos processos, o roteamento de mensagens e o ciclo de vida em uma ou várias máquinas.
- dora é gratuito? Qual é a licença?
- dora é open source sob a licença Apache-2.0. Confira os termos da licença antes de usá-lo em produtos comerciais.
- dora ainda é mantido?
- Manutenção ativa. O último commit de dora foi em 22 de out. de 2026.
- Para que posso usar dora?
- Criar um pipeline de percepção robótica que encadeia nós de captura de câmera, detecção de objetos e visualização. Conectar modelos de IA em Python a componentes de controle em Rust ou C++ em um único dataflow. Executar um sistema de robótica ou sensores em várias máquinas, com ciclos de vida dos nós coordenados. Integrar um sistema ROS2 existente a novos nós baseados em IA.
- Como instalar dora?
- Instale o dora CLI pelo crates.io: cargo install dora-cli Instale a Python node API e as dependências do exemplo: pip install dora-rs numpy pyarrow Clone o repositório e acesse o diretório: git clone https://github.com/dora-rs/dora.git && cd dora Execute o dataflow de exemplo sender-transformer-receiver em Python: dora run examples/python-dataflow/dataflow.yml
- Onde consigo dora?
- O código-fonte e as instruções de instalação estão no GitHub: https://github.com/dora-rs/dora
Resumo gerado por IA a partir do README do projeto. As estatísticas do GitHub são atualizadas diariamente.
Projetos relacionados
Modelo aberto de visão-linguagem-ação da NVIDIA (GR00T N1.7) para habilidades generalistas de manipulação com robôs e humanoides, com ferramentas de fine-tuning e implantação.
Framework aberto para criar agentes incorporados que usam planejadores com LLMs, modelos VLA de manipulação e memória para executar tarefas robóticas em simuladores e robôs reais.
Bindings Python e camada de políticas robóticas sobre o mecanismo de inferência Rust ApxInf, que executa modelos VLA como PI-0.5 em Jetson Thor/Orin e GPUs RTX.
Base de conhecimento em chinês sobre IA incorporada, com um índice curado de algoritmos, infraestrutura, controle e hardware, além de um tutorial prático de RoboTwin 2.0.
Uma biblioteca de serialização multiplataforma que permite ler dados binários diretamente, sem precisar analisá-los ou descompactá-los antes.