Skip to content

Releases: keras-team/keras

Keras 3.1.0

11 Mar 16:04
Compare
Choose a tag to compare

New features

  • Add support for int8 inference. Just call model.quantize("int8") to do an in-place conversion of a bfloat16 or float32 model to an int8 model. Note that only Dense and EinsumDense layers will be converted (this covers LLMs and all Transformers in general). We may add more supported layers over time.
  • Add keras.config.set_backend(backend) utility to reload a different backend.
  • Add keras.layers.MelSpectrogram layer for turning raw audio data into Mel spectrogram representation.
  • Add keras.ops.custom_gradient decorator (only for JAX and TensorFlow).
  • Add keras.ops.image.crop_images.
  • Add pad_to_aspect_ratio argument to image_dataset_from_directory.
  • Add keras.random.binomial and keras.random.beta functions.
  • Enable keras.ops.einsum to run with int8 x int8 inputs and int32 output.
  • Add verbose argument in all dataset-creation utilities.

Notable fixes

  • Fix Functional model slicing
  • Fix for TF XLA compilation error for SpectralNormalization
  • Refactor axis logic across all backends and add support for multiple axes in expand_dims and squeeze

New Contributors

Full Changelog: v3.0.5...v3.1.0

Keras 3.0.5

14 Feb 22:35
Compare
Choose a tag to compare

This release brings many bug fixes and performance improvements, new linear algebra ops, and sparse tensor support for the JAX backend.

Highlights

  • Add support for sparse tensors with the JAX backend.
  • Add support for saving/loading in bfloat16.
  • Add linear algebra ops in keras.ops.linalg.
  • Support nested structures in while_loop op.
  • Add erfinv op.
  • Add normalize op.
  • Add support for IterableDataset to TorchDataLoaderAdapter.

New Contributors

Full Changelog: v3.0.4...v3.0.5

Keras 3.0.4

20 Jan 20:12
Compare
Choose a tag to compare

This is a minor release with improvements to the LoRA API required by the next release of KerasNLP.

Full Changelog: v3.0.3...v3.0.4

Keras 3.0.3 release

20 Jan 01:45
096b848
Compare
Choose a tag to compare

This is a minor Keras release.

What's Changed

  • Add built-in LoRA (low-rank adaptation) API to all relevant layers (Dense, EinsumDense, Embedding).
  • Add SwapEMAWeights callback to make it easier to evaluate model metrics using EMA weights during training.
  • All DataAdapters now create a native iterator for each backend, improving performance.
  • Add built-in prefetching for JAX, improving performance.
  • The bfloat16 dtype is now allowed in the global set_dtype configuration utility.
  • Bug fixes and performance improvements.

New Contributors

Full Changelog: v3.0.2...v3.0.3

Keras 3.0.2

21 Dec 19:22
fe2f54a
Compare
Choose a tag to compare

Breaking changes

There are no known breaking changes in this release compared to 3.0.1.

API changes

  • Add keras.random.binomial and keras.random.beta RNG functions.
  • Add masking support to BatchNormalization.
  • Add keras.losses.CTC (loss function for sequence-to-sequence tasks) as well as the lower-level operation keras.ops.ctc_loss.
  • Add ops.random.alpha_dropout and layers.AlphaDropout.
  • Add gradient accumulation support for all backends, and enable optimizer EMA for JAX and torch

Full Changelog: v3.0.1...v3.0.2

Keras 3.0.1

06 Dec 21:12
Compare
Choose a tag to compare

This is a minor release focused on bug fixes and performance improvements.

What's Changed

  • Bug fixes and performance improvements.
  • Add stop_evaluating and stop_predicting model attributes for callbacks, similar to stop_training.
  • Add keras.device() scope for managing device placement in a multi-backend way.
  • Support dict items in PyDataset.
  • Add hard_swish activation and op.
  • Fix cuDNN LSTM performance on TensorFlow backend.
  • Add a force_download arg to get_file to force cache invalidation.

Full Changelog: v3.0.0...v3.0.1

Keras 3.0.0

28 Nov 01:07
9c675a9
Compare
Choose a tag to compare

Major updates

See the release announcement for a detailed list of major changes. Main highlights compared to Keras 2 are:

  • Keras can now be run on top of JAX, PyTorch, TensorFlow, and even NumPy (note that the NumPy backend is inference-only).
  • New low-level keras.ops API for building cross-framework components.
  • New large-scale model distribution keras.distribution based on JAX.
  • New stateless API for layers, models, optimizers, and metrics.

Breaking changes

See this thread for a complete list of breaking changes, as well as the Keras 3 migration guide.

Keras Release 2.15.0

12 Dec 17:31
601488f
Compare
Choose a tag to compare

What's Changed

  • Typofixes for StringLookup documentation by @cw118 in #18333
  • Fix ModelCheckpoint trained-on batch counting when using steps_per_execution>1 by @jasnyj in #17632
  • Fix legacy optimizer handling in compile_from_config(). by @nkovela1 in #18492
  • Remove options arg from ModelCheckpoint callback for Keras V3 saving, streamline ModelCheckpoint saving flow. Parameterize associated tests. by @nkovela1 in #18545
  • Use TENSORFLOW_VERSION when available during pip_build script by @sampathweb in #18739

New Contributors

Full Changelog: v2.14.0...v2.15.0

Keras Release 2.14.0

12 Sep 16:19
68f9af4
Compare
Choose a tag to compare

What's Changed

New Contributors

Full Changelog: v2.13.1...v2.14.0

Keras Release 2.14.0 RC0

03 Aug 20:57
bb9d7ff
Compare
Choose a tag to compare
Pre-release

What's Changed

New Contributors

Full Changelog: v2.13.1...v2.14.0-rc0