The Elegant Machine Learning Stack

Flux is a 100% pure-Julia stack and provides lightweight abstractions on top of Julia's native GPU and AD support. It makes the easy things easy while remaining fully hackable.


Flux has features that sets it apart among ML systems.
Compiled Eager Code

Flux provides a single, intuitive way to define models, just like mathematical notation. Julia transparently compiles your code, optimising and fusing kernels for the GPU, for the best performance.

Differentiable Programming

Existing Julia libraries are differentiable and can be incorporated directly into Flux models. Cutting edge models such as Neural ODEs are first class, and Zygote enables overhead-free gradients.

First-class GPU support

GPU kernels can be written directly in Julia via CUDA.jl. Flux is uniquely hackable and any part can be tweaked, from GPU code to custom gradients and layers.

The Model Zoo

A rich collection of Flux scripts to learn from, or tweak to your own data. Trained Flux models can be used from TextAnalysis or Metalhead.

TPUs & Colab

Flux models can be compiled to TPUs for cloud supercomputing, and run from Google Colab notebooks.

Ecosystem See all

Flux has a diverse ecosystem that includes models available for reuse and other useful packages.
Probabilistic Programming

The Turing.jl and Stheno libraries enable probabilistic programming, bayesian inference and Gaussian processes on top of Flux.


GeometricFlux.jl is a geometric deep learning library for Flux and has support of CUDA GPU acceleration with CUDA.


Metalhead includes many state-of-the-art computer vision models which can easily be used for transfer learning.


The SciML ecosystem uses Flux and Zygote to mix neural nets with differential equations, to get the best of black box and mechanistic modelling.


Transformers.jl provides components for Transformer models for NLP, as well as providing several trained models out of the box.


DiffEqFlux.jl provides tools for creating Neural Differential Equations.


Get in touch with the Flux community.
Community team

Join the group of community maintainers supporting the FluxML ecosystem.

Discourse forum

Machine Learning in Julia community.


Official Julia Slack for casual conversation.


Zulip server for the Julia programming language community.

Why Flux?

Researchers, users, and developers of Flux