HackerReposA FIELD GUIDE TO OPEN SOURCE
ProSponsor the shelf♧ 0
← Back to top all-time
elixir-nx
nx
Elixir2021–2024
elixir-nx / nx

nx

Multi-dimensional arrays (tensors) and numerical definitions for Elixir

21Distinct people
27Mentions
1Explicit recommenders
2.9KGitHub stars
REPOSITORY AT A GLANCE

What to know before exploring

What it is

Multi-dimensional arrays (tensors) and numerical definitions for Elixir

GitHub

Where it is used

No documented product use was verified in the last source check.

What people are saying

Hi everyone, contributor to Livebook and Nx here. When we started the Numerical Elixir effort, we were excited about the possibilities of mixing projects like Google XLA's…

josevalim used a recommendation phrase. One indexed comment matches. This is a phrase match, not a verdict.

No classified warning is attached to this page. Read the discussions before treating silence as approval.

Also in these discussions

Mentioned in the same Hacker News threads. That is not proof they are substitutes.

This week on Hacker News

Nov 7–Nov 14 UTC · Direct repository links and separately labeled related project stories. Indexed through 11/14/2026, 1:49:46 PM UTC.

No direct repository links were found in the indexed HN discussions over the past seven days. Older discussions are available below.

Mentions over time

HN mentions by year27 dated mentions

Observed mentions: 2021-02-17 13:26:03 UTC to 2024-10-28 06:32:26 UTC.

0369122021-01-01 00:00:00 UTC to 2022-01-01 00:00:00 UTC (exclusive): 12 mentions; 3 submissions, 9 comments20212022-01-01 00:00:00 UTC to 2023-01-01 00:00:00 UTC (exclusive): 6 mentions; 0 submissions, 6 comments20222023-01-01 00:00:00 UTC to 2024-01-01 00:00:00 UTC (exclusive): 7 mentions; 0 submissions, 7 comments2024-01-01 00:00:00 UTC to 2025-01-01 00:00:00 UTC (exclusive): 2 mentions; 0 submissions, 2 comments2024

Counts come from the repository’s dated source evidence. Index cutoff: 2026-11-02 08:16:59 UTC.

View mention counts and date ranges
UTC ranges include their start and exclude their end. Select a period to filter the source evidence.
PeriodStart (UTC)End (exclusive, UTC)MentionsSubmissionsComments
20212021-01-01 00:00:00 UTC2022-01-01 00:00:00 UTC1239
20222022-01-01 00:00:00 UTC2023-01-01 00:00:00 UTC606
20232023-01-01 00:00:00 UTC2024-01-01 00:00:00 UTC707
20242024-01-01 00:00:00 UTC2025-01-01 00:00:00 UTC202

What Hacker News says

27 sources
Professionally, I'm working on extending Nx, the Elixir ML framework which I help maintain, for distributed and sharded computing. Should have an working v0 by December! GitHub for the project: https://github.com/elixir-nx/nx As a side-project, I've been diving back into hardware. Fixed/modded a crappy guitar amplifier I had into a great amp, and the next project in line will be a new version of a digital synth I designed a fey years back
In Ask HN: What Are You Working On? (October 2024)
Since you wrote "using something other than Python" and not necessarily only Ruby, definitely look into Livebook and Elixir, and the whole ecosystem around it, including: - https://github.com/elixir-nx/axon Nx-powered Neural Networks - https://github.com/elixir-nx/nx Multi-dimensional arrays (tensors) and numerical definitions for Elixir - https://github.com/elixir-nx/scholar Traditional machine learning on top of Nx - https://github.com/elixir-nx/bumblebee Pre-trained Neural Network models in Axon (+ Models integration) - https://github.com/elixir-explorer/explorer Series (one-dimensional) and dataframes (two-dimensional) for fast and elegant data exploration in Elixir - https://fly.io/blog/rethinking-serverless-with-flame/ (for offloading large work to remote containers) - https://www.youtube.com/watch?v=RABXu7zqnT0 InstructorEx And of
Read the rest
course Livebook (https://livebook.dev) Old but interesting video https://www.youtube.com/watch?v=g3oyh3g1AtQ (Bumblebee: GPT2, Stable Diffusion, and more in Elixir) A talk on the upcoming Elixir conference (https://2024.elixirconf.com/schedule/#schedules) is actually titled "Livebook in the cloud: GPUs and clustered workflows in seconds".
In Ruby in Jupyter Notebook
José from the Livebook team. I don't think I can make a pitch because I have limited Python/R experience to use as reference. My suggestion is for you to give it a try for a day or two and see what you think. I am pretty sure you will find weak spots and I would be very happy to hear any feedback you may have. You can find my email on my GitHub profile (same username). In general we have grown a lot since the Numerical Elixir effort started two years ago. Here are the main building blocks: * Nx (https://github.com/elixir-nx/nx/tree/main/nx#readme): equivalent to Numpy, deeply inspired by JAX. Runs on both CPU and GPU via Google XLA (also used by JAX/Tensorflow) and supports tensor serving out of the box * Axon (https://github.com/elixir-nx/axon): Nx-powered neural networks * Bumblebee (https://github.com/elixir-nx/bumblebee): Equivalent t
Read the rest
o HuggingFace Transformers. We have implemented several models and that's what powers the Machine Learning integration in Livebook (see the announcement for more info: https://news.livebook.dev/announcing-bumblebee-gpt2-stable-d...) * Explorer (https://github.com/elixir-nx/explorer): Series and DataFrames, as per this thread. * Scholar (https://github.com/elixir-nx/scholar): Nx-based traditional Machine Learning. This one is the most recent effort of them all. We are treading the same path as scikit-learn but quite early on. However, because we are built on Nx, everything is derivable, GPU-ready, distributable, etc. Regarding visualization, we have "smart cells" for VegaLite and MapLibre, similar to how we did "Data Transformations" in the video above. They help you get started with your visualizations and you can jump deep into the code if necessary. I hope this helps!
In Data wrangling in Elixir with Explorer, the power of Rust, the elegance of R
> I guess, why not use Rust entirely instead of as a FFI into Elixir or other backend language? Because Rust brings none of the benefits of the BEAM ecosystem to the table. I was an early Elixir adopter, not working currently as an Elixir developer, but I have deployed one of the largest Elixir applications for a private company in my country. I know it has limits, but the language itself is only a small part of the whole. Take ML, Jose Valim and Sean Moriarity have studied the problem, made a plan to tackle it and started solving it piece by piece [1] in a tightly integrated manner, it feels natural, as if Elixir always had those capabilities in a way that no other language does and to put the icing on the cake the community released Livebook [2] to interactively explore code and use the new tools in the simplest way possible, something
Read the rest
that Python notebooks only dream of being capable of, after a decade of progress But they do not not stop there, the documentation is always of very high quality, even for stuff not coming from the core developers, and they also regularly release educational material that is worth a hundred times a gain in speed. They've set a very high quality standard and I noticed how much it is important only when I stopped programming daily in Elixir and went back to other more hyped or establish ecosystems. That's not to say that Elixir is superior as a language, but that the ecosystem is flourishing and the community is able to extract the 100% of the benefits from the tools and create new marvellously crafted ones, that push the limits forward every time, in such a simple manner, that it looks like magic. Going back to Rust, you can write Rust if you need speed or for whatever reason you feel it's the right tool for the job, it's totally integrated [3][4], again in a way that many other languages can only dream of, and it's in fact the reason I've learned Rust in the first place. I must also say that the work done by the Rust community looks refreshing as well, if you look at the way rustler works it was very well thought and made writing NIFs, something that seemed arcane and distant, only for the proverbial mad professor to try, a breeze. Kudos to them. But the opposite IMO is not true, if you write Rust, you write Rust, and that's it. You can't take advantage of the many features the BEAM offers, OTP, hot code reloading, full inspection of running systems, distribution, scalability, fault tolerance, soft real time etc. etc. etc. But of course if you don't see any advantage in them, it means you probably don't need them (one other option is that you still don't know you want them :] ). In that case Rust is as good as any other language, but for a backend, even though I gently despise it, Java (or Kotlin) might be a better option. [1] https://github.com/elixir-nx/nx https://github.com/elixir-nx/axon [2] https://livebook.dev/ [3] https://github.com/rusterlium/rustler [4] https://dashbit.co/blog/rustler-precompiled
In Elixir and Rust is a good mix
josevalim·Apr 11, 2023Recommendation phrase
Hi everyone, contributor to Livebook and Nx here. When we started the Numerical Elixir effort, we were excited about the possibilities of mixing projects like Google XLA's (from Tensorflow) and LibTorch (from PyTorch) with the Erlang VM abilities to run concurrent, distributed, and fault-tolerant software. I am very glad we are at a point where those ideas are coming to life and I explore part of it in the video. My favorite bit: making the tensor serving implementation cluster distributed took only 400 LOC (including docs and tests!): https://github.com/elixir-nx/nx/pull/1090 I'll be glad to answer questions about Nx or anything from Livebook's launch week!
In Distributed Machine Learning Notebooks with Elixir and Livebook
He has been teasing this for a couple of months now. This cryptic twitter post[1] would suggets something related to nx[2] as numbat is their logo and that is the alt text on that tweet. The most out of the box thing I can think of is that one of the image generative models has been ported to elixir. That would be insane! That numbat twitter image is suspiciously 512x512. [1] https://twitter.com/josevalim/status/1583551565381914624 [2] https://github.com/elixir-nx/nx
In Elixir – HUGE Release Coming Soon
Exciting work is happening in all of these areas... > desktop Elixir Desktop: https://github.com/elixir-desktop/desktop > mobile development LiveView Native: https://www.youtube.com/watch?v=dnDGh_Jmw-s > front end web LiveView? > command line tools Mix.Install: https://thinkingelixir.com/elixir-1-12-and-your-first-mix-in... How about numerical computing / machine learning: https://github.com/elixir-nx/nx/tree/main/nx Embedded: "yes there's Nerves". Exactly?
In Joy of Elixir (2020)
Thank you for sharing, this was a great article! I had to implement autodiff from scratch for Nx (https://github.com/elixir-nx/nx) about 18 months ago and this would have helped me so much! I spent roughly a month chasing a bug because I was not handling the case of duplicated incoming nodes and you outline it very clearly. I will be recommending the article from now on to anyone who needs to understand how autodiff works.
In Differentiable programming from scratch
Most people who want this end up just selecting a regular programming language with a powerful-enough macro system + flexible-enough compile-time parser; and then using said language to define a "more or less complete DSL", by redefining all the primitive syntax features of the language to instead be primitive syntax features of the DSL. For example, the "numerical definition" DSL within Elixir's Nx library (https://github.com/elixir-nx/nx/tree/main/nx#numerical-defin...). Users using this "full" DSL are still using the host language — they're invoking its compiler/runtime and so forth — but they don't necessarily need to care about that. They can still technically access the power of a full-blown programming language, "tucked in" around the edges of the DSL — but you as the DSL's creator, don't have to document that power as being availa
Read the rest
ble. As long as users of the DSL can do everything they need to do without any need for "breaking out" of the DSL's little world, they don't need to be aware that they could e.g. make fully-namespaced calls to regular stdlib functions of your runtime.
In Dear sir, you have built a compiler

Showing the 15 most recent of 27 sources. Enable JavaScript to search and browse every indexed mention.

MAKE YOURSELF AT HOME

A few shortcuts

/
Search the collection
?
Open this guide
Esc
Close dialogs and navigation

Your saved repositories and interests stay in this browser.