Differentiable tensor library for TypeScript and JavaScript
Top 34.1% on sourcepulse
Shumai is a differentiable tensor library for JavaScript and TypeScript, leveraging Bun and the Flashlight C++ backend. It aims to provide high-performance tensor operations and automatic differentiation for developers and researchers working with machine learning models in a JavaScript environment.
How It Works
Shumai utilizes Bun's fast Foreign Function Interface (FFI) bindings to connect to the Flashlight C++ library, which is built on top of ArrayFire. This architecture allows it to execute computationally intensive tensor operations efficiently, either on the CPU or GPU (via ArrayFire's backends). The library supports automatic differentiation, enabling gradient computation for training neural networks.
Quick Start & Requirements
bun install @shumai/shumai
Highlighted Details
Maintenance & Community
The project is maintained by Facebook Research. Further community engagement details are not explicitly provided in the README.
Licensing & Compatibility
Limitations & Caveats
This is experimental software. Installation can be complex, especially on Linux requiring manual ArrayFire builds. CPU computation relies on ArrayFire's CPU backend, which is noted as not well-optimized, with OpenCL support planned. Stack tracing for statistics collection incurs a significant performance overhead.
1 year ago
Inactive