Keras
High-level deep learning API created by François Chollet in 2015. Since Keras 3 (November 2023) it is multi-backend: the same code runs on JAX, TensorFlow, and PyTorch.
Keras is an open-source, high-level API for building, training, and deploying deep learning models. François Chollet wrote that Keras began in March 2015; in his essay on API design, he explains that software has human users and argues for readable code, low cognitive load, clear documentation, and useful error messages. With Keras 3.0.0, released on November 28, 2023, the project adopted a multi-backend architecture: models made entirely from built-in layers work directly on JAX, TensorFlow, or PyTorch; custom components must use backend-agnostic APIs such as keras.ops to preserve the same code.
What it solves
Deep learning frameworks demand plenty of boilerplate: defining layers, writing the training loop, saving and restoring models. Keras condenses those chores into a declarative interface made of reusable parts — layers, models, loss functions, optimizers, and callbacks — that snap together like building blocks. With methods such as fit(), evaluate(), and predict(), training a neural network fits into a few readable lines. That simplicity made it the standard on-ramp to deep learning for students and teachers, and a rapid-prototyping tool for research and engineering teams that need to test ideas before investing in optimization.
Keras 3 and the multi-backend shift
Keras began life as an interface running on other engines: first Theano, then TensorFlow. TensorFlow 2.0 was released on September 30, 2019 with Keras tightly integrated; Google maintains it as TensorFlow's high-level API. Keras 3 is a complete rewrite, published as version 3.0.0 in November 2023: it lets developers choose JAX, TensorFlow, or PyTorch, but its own announcement says performance varies by model and makes portability of custom code conditional on backend-agnostic APIs. Since version 3.8, Intel's OpenVINO joins the list as an inference-only backend. The keras.ops module implements the NumPy API so custom layers and metrics behave identically across backends, and keras.distribution handles data and model parallelism, initially on JAX. As of mid-2026, the stable release is 3.15, published in June, which adds export of Keras models to native PyTorch modules.
When to choose it
Keras fits whenever the goal is to go from idea to working model quickly: courses and training, research experimentation, and products that benefit from short, maintainable code. It is not confined to prototypes: a Keras 3 model can be exported as a TensorFlow SavedModel, instantiated as a PyTorch module, or turned into a stateless JAX function, opening a path to production through any of the three ecosystems. The project's official site notes that organizations such as CERN, NASA, and Waymo use it. Teams that need low-level control over every operation will still prefer raw PyTorch or JAX; for most workflows, Keras now offers the shortest — and the most portable — route.
Pieces using this term
- Gemma 3: Google's open model that runs on a single GPU (2025-03-12)
- Recommended Books (I) (2023-01-12)
This article was produced with artificial intelligence under human editorial oversight.