tract
edgeml
Our great sponsors
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
tract
-
Are there any ML crates that would compile to WASM?
Tract is the most well known ML crate in Rust, which I believe can compile to WASM - https://github.com/sonos/tract/. Burn may also be useful - https://github.com/burn-rs/burn.
-
[Discussion] What crates would you like to see?
tract!!
-
tract VS burn - a user suggested alternative
2 projects | 25 Mar 2023
-
Machine Learning Inference Server in Rust?
we use tract for inference, integrated into our runtime and services.
- onnxruntime
- Rust Native ML Frameworks?
-
Neural networks - what crates to use?
Not for training, but for inference this looks nice: https://github.com/sonos/tract
-
Brain.js: GPU Accelerated Neural Networks in JavaScript
There's also tract, from sonos[0]. 100% rust.
I'm currently trying to use it to do speech recognition with a variant of the Conformer architecture (exported to ONNX).
The final goal is to do it in WASM client-side.
[0] https://github.com/sonos/tract
-
Serving ML at the Speed of Rust
As the article notes, there isn't any official Rust-native support for any common frameworks.
tract (https://github.com/sonos/tract) seems like the most mature for ONNX (for which TF/PT export is good nowadays), and recently it successfully implemented BERT.
-
Run deep neural network models from scratch
There are some DL libraries written in Rust: https://github.com/sonos/tract , https://docs.rs/neuronika/latest/neuronika/index.html . The second one could be used for training, I think.
edgeml
-
Newbie Rustacean... I participated in a hackathon at work building demos for WASM/WASI, and I got my demo publicly featured today. It uses tract for an ML inference engine. Such an ace OSS project, and way before I learned of wasi-nn 💖
Yes, using tract, which is a pretty awesome project! Check that out. I just wrote this simplistic demo last year, to test the capabilities of a serverless compute platform — it's all compiled to WebAssembly, running on a server, no binary to download, subject to resource constraints etc (repo if you're curious). ML is not my focus at all, and next I explore it again, it will be in the context of wasi-nn.
What are some alternatives?
onnxruntime-rs - Rust wrapper for Microsoft's ONNX Runtime (version 1.8)
MTuner - MTuner is a C/C++ memory profiler and memory leak finder for Windows, PlayStation 4 and 3, Android and other platforms
wonnx - A WebGPU-accelerated ONNX inference run-time written 100% in Rust, ready for native and the web
ncurses-rs - A low-level ncurses wrapper for Rust
linfa - A Rust machine learning framework.
fairseq - Facebook AI Research Sequence-to-Sequence Toolkit written in Python.
tangram - Tangram makes it easy for programmers to train, deploy, and monitor machine learning models.
tractjs - Run ONNX and TensorFlow inference in the browser.
bevy_webgl2 - WebGL2 renderer plugin for Bevy game engine
pytorch-rpi - Share PyTorch binaries built for Raspberry Pi
gamma - Computational graphs with reverse automatic differentation in the GPU
tch-rs - Rust bindings for the C++ api of PyTorch.