A 12-week, 24-lesson beginner AI curriculum from Microsoft covering symbolic AI, neural networks, computer vision, NLP and ethics, with notebooks in PyTorch and TensorFlow.
keras-team/keras
Keras 3 is a deep learning framework that runs on JAX, TensorFlow, PyTorch, or OpenVINO for inference.
- Stars
- 64,376
- Forks
- 19,805
- Open issues
- 248
- Last commit
- 6 hours ago
What is it?
Keras 3 is a high-level deep learning framework for building and training models in computer vision, natural language processing, audio, time series forecasting and recommender systems. Its main idea is that one Keras codebase can run on several backends: JAX, TensorFlow, PyTorch, and OpenVINO, which is limited to inference.
The backend is selected with the KERAS_BACKEND environment variable or a config file, so users can pick the runtime that suits their model and hardware. Keras 3 is positioned as a drop-in replacement for tf.keras when using the TensorFlow backend, and custom layers, models and metrics can be reused inside native PyTorch modules or JAX model functions. Training can use tf.data datasets or PyTorch DataLoaders, and GPU and TPU setups are supported through separate CUDA requirement files.
Installation is via pip as the keras package on Linux and macOS, with WSL2 recommended on Windows. Keras 2 remains available as the tf-keras package.
Key features
- 01Runs the same Keras code on JAX, TensorFlow, PyTorch, or OpenVINO.
- 02Switches backends through the KERAS_BACKEND setting.
- 03Works as a drop-in replacement for tf.keras with the TensorFlow backend.
- 04Lets Keras models be used inside native PyTorch modules or JAX functions.
- 05Accepts tf.data datasets and PyTorch DataLoaders for training.
- 06Provides separate CUDA requirement files for GPU setups.
Use cases
- Building computer vision or NLP models with a high-level API across frameworks.
- Moving an existing tf.keras project to JAX or PyTorch without rewriting it.
- Reusing custom layers in a PyTorch or JAX training loop.
- Deploying a trained model for inference through OpenVINO.
Quick start
- 1
Install Keras from PyPI
pip install keras --upgrade - 2
Install a backend such as tensorflow, jax, or torch
- 3
Select the backend by setting the environment variable
export KERAS_BACKEND="jax"
Things to know
- Requires installing a separate backend such as TensorFlow, JAX, or PyTorch.
- The OpenVINO backend supports inference only.
- Windows is not directly supported; the README recommends WSL2.
Topics
FAQ
- What is keras?
- Keras 3 is a deep learning framework that runs on JAX, TensorFlow, PyTorch, or OpenVINO for inference. Keras 3 is a high-level deep learning framework for building and training models in computer vision, natural language processing, audio, time series forecasting and recommender systems. Its main idea is that one Keras codebase can run on several backends: JAX, TensorFlow, PyTorch, and OpenVINO, which is limited to inference.
- Is keras free to use? What license does it have?
- keras is open source under the Apache-2.0 license. Check the license terms before using it in commercial products.
- Is keras still maintained?
- Actively maintained. The last commit to keras was on Oct 20, 2026.
- What can I use keras for?
- Building computer vision or NLP models with a high-level API across frameworks. Moving an existing tf.keras project to JAX or PyTorch without rewriting it. Reusing custom layers in a PyTorch or JAX training loop. Deploying a trained model for inference through OpenVINO.
- How do I install keras?
- Install Keras from PyPI: pip install keras --upgrade Install a backend such as tensorflow, jax, or torch Select the backend by setting the environment variable: export KERAS_BACKEND="jax"
- Where can I get keras?
- The source code and installation instructions are on GitHub: https://github.com/keras-team/keras
Summary generated by AI from the project's README. GitHub stats refresh daily.
Related projects
Ray is a unified framework for scaling Python and AI applications from a laptop to a cluster, with a distributed runtime and AI libraries.
Python package for quickly building and sharing web demos and UIs for machine learning models, APIs, or any Python function.
Viewer for neural network, deep learning and machine learning models, supporting ONNX, TensorFlow, PyTorch, Core ML and many other formats.
Open-source AI training tracking and visualization platform for logging metrics, hyperparameters and hardware stats, with cloud or self-hosted deployment.
Python library that turns scripts into interactive web apps for data dashboards, reports and chat apps.