Hodu - framework de ML em Rust
(github.com/hodu-rs)Recentemente, um conhecido próximo criou um framework de ML chamado Hodu usando Rust.
Como eu também já tive experiência tocando um projeto parecido, achei que seria um bom material para compartilhar com quem tem interesse em frameworks de ML.
Principais características
- Suporte a
no_std: estrutura leve que pode rodar até em microcontroladores - Compilação de grafo estático: um grafo compilado uma vez pode ser armazenado em dispositivos embarcados para facilitar a inferência
- Modo duplo de execução:
- Prototipagem: experimentação com base em grafo dinâmico
- Implantação em produção: execução estável com base em grafo estático
- Backends de alto desempenho
- Backend XLA: desempenho máximo por meio de otimização de grafo e compilação JIT
- Backend nativo do HODU: implementação pura em Rust que roda sem restrições de plataforma
- API intuitiva: estilo PyTorch/TensorFlow
- Garantia de segurança de memória: o sistema de ownership do Rust bloqueia completamente vazamentos de memória e data races
- Suporte a múltiplos dispositivos: CPU, CUDA (GPU da NVIDIA), Metal (GPU da Apple)
Segundo ele, o Hodu chegou ao estado atual partindo do maidnx, um projeto de estudo iniciado enquanto aprendia ML com Rust.
O recurso XLA exige, na hora do build, LLVM/Clang + 8GB+ de RAM + 20GB+ de disco, e o tempo de compilação também é considerável.
O suporte a GPU com CUDA ainda não foi totalmente implementado, e otimizações com SIMD também estão planejadas.
No momento, o uso em ambiente de produção não é recomendado, e como o desenvolvimento segue ativo, há recursos experimentais ou incompletos.
Ainda não há comentários.