The NX Project
The NX project leverages Elixir’s unique strengths in multitasking and fault tolerance to create a scalable, distributed ML framework that outperforms current solutions.
Overview
- Contributors
- Brian Cardarella, Paulo Valente
- Github
- Code
More Information
Our Numerical Elixir effort includes five key projects.
- Nx stands for Numerical Elixir, the project that started it all. Nx is a multi-dimensional tensor library with multi-staged compilation to the CPU/GPU. It plays a similar role to Numpy in the Elixir community. It is inspired by Google’s
JAX
and ships with its own Tensor Serving implementation that can run concurrently, distributed over multiple nodes, and partitioned across several GPUs. - Livebook brings the next generation of open-source local-first notebooks to Elixir. With Livebook you can write interactive and collaborative notebooks, which are truly reproducible, all the way to package management. If you are not yet familiar with Elixir, Livebook and its smart cells are one of the best ways to get started, and it features a growing ecosystem of integrations for databases, messaging, visualization, and more.
- Explorer brings series (one-dimensional) and data frames (two-dimensional) for fast and elegant data exploration to Elixir. It uses the power of Rust via the Polars library and is inspired by dplyr (from the R community).
-
Axon is an Nx-powered Neural Network library. It consists of three components: a Functional API of numerical functions, a high-level Model Creation API, and a Training API inspired by PyTorch Ignite.
- Scholar is the most recent addition to the Nx ecosystem. It focuses on traditional machine learning techniques, such as classification, regression, clustering, dimensionality reduction, metrics, and preprocessing. Because Scholar is fully built on top of Nx, it is fully GPU-ready, vectorizable, distributable, and more.
Contribute
Join the DiscordContributors
About Paulo
Paulo Valente is an Elixir enthusiast, NX maintainer, and Senior Software Engineer at DockYard. He was previously an Open Source Developer at Stone. He holds an electronics and computer engineering degree from University of Brazil (UFRJ).
Other Projects
-
Web Applets is an open specification for building software that both humans and AI can understand and use together.
- Contributor
- Rupert Manfredi
-
Transformer Lab is an open source platform that allows anyone to build, tune, & run Large Language Models locally, without writing code.
- Contributors
- Ali Asaria, Tony Salomone
-
A creative tool for interactive art, Tölvera empowers artists to create and interact with dynamic, self-organizing systems. It is inspired by fields such as artificial life (ALife) and self-organizing systems.
- Contributor
- Jack Armitage