Keras 3.1.0
New features
- Add support for
int8
inference. Just callmodel.quantize("int8")
to do an in-place conversion of a bfloat16 or float32 model to an int8 model. Note that onlyDense
andEinsumDense
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 toimage_dataset_from_directory
. - Add
keras.random.binomial
andkeras.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 inexpand_dims
andsqueeze
New Contributors
- @mykolaskrynnyk made their first contribution in #19190
- @chicham made their first contribution in #19201
- @joycebrum made their first contribution in #19214
- @EtiNL made their first contribution in #19228
Full Changelog: v3.0.5...v3.1.0