keras-nightly 3.14.0.dev2026012704__tar.gz → 3.14.0.dev2026012904__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/PKG-INFO +1 -1
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/api/_tf_keras/keras/dtype_policies/__init__.py +3 -0
- {keras_nightly-3.14.0.dev2026012704/keras/api → keras_nightly-3.14.0.dev2026012904/keras/api/_tf_keras/keras}/ops/__init__.py +1 -0
- {keras_nightly-3.14.0.dev2026012704/keras/api → keras_nightly-3.14.0.dev2026012904/keras/api/_tf_keras/keras}/ops/numpy/__init__.py +1 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/api/_tf_keras/keras/quantizers/__init__.py +3 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/api/dtype_policies/__init__.py +3 -0
- {keras_nightly-3.14.0.dev2026012704/keras/api/_tf_keras/keras → keras_nightly-3.14.0.dev2026012904/keras/api}/ops/__init__.py +1 -0
- {keras_nightly-3.14.0.dev2026012704/keras/api/_tf_keras/keras → keras_nightly-3.14.0.dev2026012904/keras/api}/ops/numpy/__init__.py +1 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/api/quantizers/__init__.py +3 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/backend/jax/core.py +12 -2
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/backend/jax/numpy.py +5 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/backend/numpy/numpy.py +5 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/backend/openvino/numpy.py +6 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/backend/tensorflow/numpy.py +21 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/backend/torch/numpy.py +10 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/callbacks/orbax_checkpoint.py +41 -8
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/dtype_policies/__init__.py +2 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/dtype_policies/dtype_policy.py +80 -1
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/layers/core/dense.py +278 -95
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/layers/core/einsum_dense.py +350 -181
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/layers/core/embedding.py +236 -49
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/layers/core/reversible_embedding.py +177 -35
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/layers/preprocessing/discretization.py +30 -1
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/ops/numpy.py +54 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/quantizers/__init__.py +6 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/quantizers/quantization_config.py +98 -4
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/quantizers/quantizers.py +262 -32
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/saving/file_editor.py +7 -1
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/saving/saving_api.py +66 -2
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/saving/saving_lib.py +46 -47
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/version.py +1 -1
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras_nightly.egg-info/PKG-INFO +1 -1
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/README.md +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/api/__init__.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/api/_tf_keras/__init__.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/api/_tf_keras/keras/__init__.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/api/_tf_keras/keras/activations/__init__.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/api/_tf_keras/keras/applications/__init__.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/api/_tf_keras/keras/applications/convnext/__init__.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/api/_tf_keras/keras/applications/densenet/__init__.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/api/_tf_keras/keras/applications/efficientnet/__init__.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/api/_tf_keras/keras/applications/efficientnet_v2/__init__.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/api/_tf_keras/keras/applications/imagenet_utils/__init__.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/api/_tf_keras/keras/applications/inception_resnet_v2/__init__.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/api/_tf_keras/keras/applications/inception_v3/__init__.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/api/_tf_keras/keras/applications/mobilenet/__init__.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/api/_tf_keras/keras/applications/mobilenet_v2/__init__.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/api/_tf_keras/keras/applications/mobilenet_v3/__init__.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/api/_tf_keras/keras/applications/nasnet/__init__.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/api/_tf_keras/keras/applications/resnet/__init__.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/api/_tf_keras/keras/applications/resnet50/__init__.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/api/_tf_keras/keras/applications/resnet_v2/__init__.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/api/_tf_keras/keras/applications/vgg16/__init__.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/api/_tf_keras/keras/applications/vgg19/__init__.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/api/_tf_keras/keras/applications/xception/__init__.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/api/_tf_keras/keras/backend/__init__.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/api/_tf_keras/keras/callbacks/__init__.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/api/_tf_keras/keras/config/__init__.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/api/_tf_keras/keras/constraints/__init__.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/api/_tf_keras/keras/datasets/__init__.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/api/_tf_keras/keras/datasets/boston_housing/__init__.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/api/_tf_keras/keras/datasets/california_housing/__init__.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/api/_tf_keras/keras/datasets/cifar10/__init__.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/api/_tf_keras/keras/datasets/cifar100/__init__.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/api/_tf_keras/keras/datasets/fashion_mnist/__init__.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/api/_tf_keras/keras/datasets/imdb/__init__.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/api/_tf_keras/keras/datasets/mnist/__init__.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/api/_tf_keras/keras/datasets/reuters/__init__.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/api/_tf_keras/keras/distillation/__init__.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/api/_tf_keras/keras/distribution/__init__.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/api/_tf_keras/keras/export/__init__.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/api/_tf_keras/keras/initializers/__init__.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/api/_tf_keras/keras/layers/__init__.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/api/_tf_keras/keras/legacy/__init__.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/api/_tf_keras/keras/legacy/saving/__init__.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/api/_tf_keras/keras/losses/__init__.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/api/_tf_keras/keras/metrics/__init__.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/api/_tf_keras/keras/mixed_precision/__init__.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/api/_tf_keras/keras/models/__init__.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/api/_tf_keras/keras/ops/image/__init__.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/api/_tf_keras/keras/ops/linalg/__init__.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/api/_tf_keras/keras/ops/nn/__init__.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/api/_tf_keras/keras/optimizers/__init__.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/api/_tf_keras/keras/optimizers/legacy/__init__.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/api/_tf_keras/keras/optimizers/schedules/__init__.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/api/_tf_keras/keras/preprocessing/__init__.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/api/_tf_keras/keras/preprocessing/image/__init__.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/api/_tf_keras/keras/preprocessing/sequence/__init__.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/api/_tf_keras/keras/preprocessing/text/__init__.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/api/_tf_keras/keras/random/__init__.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/api/_tf_keras/keras/regularizers/__init__.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/api/_tf_keras/keras/saving/__init__.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/api/_tf_keras/keras/tree/__init__.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/api/_tf_keras/keras/utils/__init__.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/api/_tf_keras/keras/utils/bounding_boxes/__init__.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/api/_tf_keras/keras/utils/legacy/__init__.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/api/_tf_keras/keras/visualization/__init__.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/api/_tf_keras/keras/wrappers/__init__.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/api/activations/__init__.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/api/applications/__init__.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/api/applications/convnext/__init__.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/api/applications/densenet/__init__.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/api/applications/efficientnet/__init__.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/api/applications/efficientnet_v2/__init__.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/api/applications/imagenet_utils/__init__.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/api/applications/inception_resnet_v2/__init__.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/api/applications/inception_v3/__init__.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/api/applications/mobilenet/__init__.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/api/applications/mobilenet_v2/__init__.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/api/applications/mobilenet_v3/__init__.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/api/applications/nasnet/__init__.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/api/applications/resnet/__init__.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/api/applications/resnet50/__init__.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/api/applications/resnet_v2/__init__.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/api/applications/vgg16/__init__.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/api/applications/vgg19/__init__.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/api/applications/xception/__init__.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/api/backend/__init__.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/api/callbacks/__init__.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/api/config/__init__.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/api/constraints/__init__.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/api/datasets/__init__.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/api/datasets/boston_housing/__init__.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/api/datasets/california_housing/__init__.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/api/datasets/cifar10/__init__.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/api/datasets/cifar100/__init__.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/api/datasets/fashion_mnist/__init__.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/api/datasets/imdb/__init__.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/api/datasets/mnist/__init__.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/api/datasets/reuters/__init__.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/api/distillation/__init__.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/api/distribution/__init__.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/api/export/__init__.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/api/initializers/__init__.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/api/layers/__init__.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/api/legacy/__init__.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/api/legacy/saving/__init__.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/api/losses/__init__.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/api/metrics/__init__.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/api/mixed_precision/__init__.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/api/models/__init__.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/api/ops/image/__init__.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/api/ops/linalg/__init__.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/api/ops/nn/__init__.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/api/optimizers/__init__.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/api/optimizers/legacy/__init__.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/api/optimizers/schedules/__init__.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/api/preprocessing/__init__.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/api/preprocessing/image/__init__.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/api/preprocessing/sequence/__init__.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/api/random/__init__.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/api/regularizers/__init__.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/api/saving/__init__.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/api/tree/__init__.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/api/utils/__init__.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/api/utils/bounding_boxes/__init__.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/api/utils/legacy/__init__.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/api/visualization/__init__.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/api/wrappers/__init__.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/__init__.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/activations/__init__.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/activations/activations.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/api_export.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/applications/__init__.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/applications/convnext.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/applications/densenet.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/applications/efficientnet.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/applications/efficientnet_v2.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/applications/imagenet_utils.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/applications/inception_resnet_v2.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/applications/inception_v3.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/applications/mobilenet.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/applications/mobilenet_v2.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/applications/mobilenet_v3.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/applications/nasnet.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/applications/resnet.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/applications/resnet_v2.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/applications/vgg16.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/applications/vgg19.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/applications/xception.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/backend/__init__.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/backend/common/__init__.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/backend/common/backend_utils.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/backend/common/dtypes.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/backend/common/global_state.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/backend/common/keras_tensor.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/backend/common/masking.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/backend/common/name_scope.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/backend/common/remat.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/backend/common/stateless_scope.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/backend/common/symbolic_scope.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/backend/common/tensor_attributes.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/backend/common/variables.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/backend/config.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/backend/jax/__init__.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/backend/jax/distribution_lib.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/backend/jax/export.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/backend/jax/image.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/backend/jax/layer.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/backend/jax/linalg.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/backend/jax/math.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/backend/jax/nn.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/backend/jax/optimizer.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/backend/jax/random.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/backend/jax/rnn.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/backend/jax/sparse.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/backend/jax/tensorboard.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/backend/jax/trainer.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/backend/numpy/__init__.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/backend/numpy/core.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/backend/numpy/export.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/backend/numpy/image.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/backend/numpy/layer.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/backend/numpy/linalg.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/backend/numpy/math.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/backend/numpy/nn.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/backend/numpy/random.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/backend/numpy/rnn.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/backend/numpy/trainer.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/backend/openvino/__init__.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/backend/openvino/core.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/backend/openvino/export.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/backend/openvino/image.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/backend/openvino/layer.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/backend/openvino/linalg.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/backend/openvino/math.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/backend/openvino/nn.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/backend/openvino/random.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/backend/openvino/rnn.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/backend/openvino/trainer.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/backend/tensorflow/__init__.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/backend/tensorflow/core.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/backend/tensorflow/distribution_lib.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/backend/tensorflow/export.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/backend/tensorflow/image.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/backend/tensorflow/layer.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/backend/tensorflow/linalg.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/backend/tensorflow/math.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/backend/tensorflow/nn.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/backend/tensorflow/optimizer.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/backend/tensorflow/random.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/backend/tensorflow/rnn.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/backend/tensorflow/sparse.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/backend/tensorflow/tensorboard.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/backend/tensorflow/trackable.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/backend/tensorflow/trainer.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/backend/torch/__init__.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/backend/torch/core.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/backend/torch/export.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/backend/torch/image.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/backend/torch/layer.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/backend/torch/linalg.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/backend/torch/math.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/backend/torch/nn.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/backend/torch/optimizers/__init__.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/backend/torch/optimizers/torch_adadelta.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/backend/torch/optimizers/torch_adagrad.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/backend/torch/optimizers/torch_adam.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/backend/torch/optimizers/torch_adamax.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/backend/torch/optimizers/torch_adamw.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/backend/torch/optimizers/torch_lion.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/backend/torch/optimizers/torch_nadam.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/backend/torch/optimizers/torch_optimizer.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/backend/torch/optimizers/torch_parallel_optimizer.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/backend/torch/optimizers/torch_rmsprop.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/backend/torch/optimizers/torch_sgd.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/backend/torch/random.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/backend/torch/rnn.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/backend/torch/trainer.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/callbacks/__init__.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/callbacks/backup_and_restore.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/callbacks/callback.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/callbacks/callback_list.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/callbacks/csv_logger.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/callbacks/early_stopping.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/callbacks/history.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/callbacks/lambda_callback.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/callbacks/learning_rate_scheduler.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/callbacks/model_checkpoint.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/callbacks/monitor_callback.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/callbacks/progbar_logger.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/callbacks/reduce_lr_on_plateau.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/callbacks/remote_monitor.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/callbacks/swap_ema_weights.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/callbacks/tensorboard.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/callbacks/terminate_on_nan.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/constraints/__init__.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/constraints/constraints.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/datasets/__init__.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/datasets/boston_housing.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/datasets/california_housing.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/datasets/cifar.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/datasets/cifar10.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/datasets/cifar100.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/datasets/fashion_mnist.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/datasets/imdb.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/datasets/mnist.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/datasets/reuters.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/distillation/__init__.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/distillation/distillation_loss.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/distillation/distiller.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/distribution/__init__.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/distribution/distribution_lib.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/dtype_policies/dtype_policy_map.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/export/__init__.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/export/export_utils.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/export/litert.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/export/onnx.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/export/openvino.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/export/saved_model.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/export/tf2onnx_lib.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/export/tfsm_layer.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/initializers/__init__.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/initializers/constant_initializers.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/initializers/initializer.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/initializers/random_initializers.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/layers/__init__.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/layers/activations/__init__.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/layers/activations/activation.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/layers/activations/elu.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/layers/activations/leaky_relu.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/layers/activations/prelu.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/layers/activations/relu.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/layers/activations/softmax.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/layers/attention/__init__.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/layers/attention/additive_attention.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/layers/attention/attention.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/layers/attention/grouped_query_attention.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/layers/attention/multi_head_attention.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/layers/convolutional/__init__.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/layers/convolutional/base_conv.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/layers/convolutional/base_conv_transpose.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/layers/convolutional/base_depthwise_conv.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/layers/convolutional/base_separable_conv.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/layers/convolutional/conv1d.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/layers/convolutional/conv1d_transpose.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/layers/convolutional/conv2d.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/layers/convolutional/conv2d_transpose.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/layers/convolutional/conv3d.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/layers/convolutional/conv3d_transpose.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/layers/convolutional/depthwise_conv1d.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/layers/convolutional/depthwise_conv2d.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/layers/convolutional/separable_conv1d.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/layers/convolutional/separable_conv2d.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/layers/core/__init__.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/layers/core/identity.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/layers/core/input_layer.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/layers/core/lambda_layer.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/layers/core/masking.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/layers/core/wrapper.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/layers/input_spec.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/layers/layer.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/layers/merging/__init__.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/layers/merging/add.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/layers/merging/average.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/layers/merging/base_merge.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/layers/merging/concatenate.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/layers/merging/dot.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/layers/merging/maximum.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/layers/merging/minimum.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/layers/merging/multiply.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/layers/merging/subtract.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/layers/normalization/__init__.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/layers/normalization/batch_normalization.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/layers/normalization/group_normalization.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/layers/normalization/layer_normalization.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/layers/normalization/rms_normalization.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/layers/normalization/spectral_normalization.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/layers/normalization/unit_normalization.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/layers/pooling/__init__.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/layers/pooling/adaptive_average_pooling1d.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/layers/pooling/adaptive_average_pooling2d.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/layers/pooling/adaptive_average_pooling3d.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/layers/pooling/adaptive_max_pooling1d.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/layers/pooling/adaptive_max_pooling2d.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/layers/pooling/adaptive_max_pooling3d.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/layers/pooling/average_pooling1d.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/layers/pooling/average_pooling2d.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/layers/pooling/average_pooling3d.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/layers/pooling/base_adaptive_pooling.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/layers/pooling/base_global_pooling.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/layers/pooling/base_pooling.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/layers/pooling/global_average_pooling1d.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/layers/pooling/global_average_pooling2d.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/layers/pooling/global_average_pooling3d.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/layers/pooling/global_max_pooling1d.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/layers/pooling/global_max_pooling2d.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/layers/pooling/global_max_pooling3d.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/layers/pooling/max_pooling1d.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/layers/pooling/max_pooling2d.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/layers/pooling/max_pooling3d.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/layers/preprocessing/__init__.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/layers/preprocessing/category_encoding.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/layers/preprocessing/data_layer.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/layers/preprocessing/feature_space.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/layers/preprocessing/hashed_crossing.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/layers/preprocessing/hashing.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/layers/preprocessing/image_preprocessing/__init__.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/layers/preprocessing/image_preprocessing/aug_mix.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/layers/preprocessing/image_preprocessing/auto_contrast.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/layers/preprocessing/image_preprocessing/base_image_preprocessing_layer.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/layers/preprocessing/image_preprocessing/bounding_boxes/__init__.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/layers/preprocessing/image_preprocessing/bounding_boxes/bounding_box.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/layers/preprocessing/image_preprocessing/bounding_boxes/converters.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/layers/preprocessing/image_preprocessing/bounding_boxes/formats.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/layers/preprocessing/image_preprocessing/bounding_boxes/iou.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/layers/preprocessing/image_preprocessing/bounding_boxes/validation.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/layers/preprocessing/image_preprocessing/center_crop.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/layers/preprocessing/image_preprocessing/cut_mix.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/layers/preprocessing/image_preprocessing/equalization.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/layers/preprocessing/image_preprocessing/max_num_bounding_box.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/layers/preprocessing/image_preprocessing/mix_up.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/layers/preprocessing/image_preprocessing/rand_augment.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/layers/preprocessing/image_preprocessing/random_brightness.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/layers/preprocessing/image_preprocessing/random_color_degeneration.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/layers/preprocessing/image_preprocessing/random_color_jitter.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/layers/preprocessing/image_preprocessing/random_contrast.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/layers/preprocessing/image_preprocessing/random_crop.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/layers/preprocessing/image_preprocessing/random_elastic_transform.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/layers/preprocessing/image_preprocessing/random_erasing.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/layers/preprocessing/image_preprocessing/random_flip.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/layers/preprocessing/image_preprocessing/random_gaussian_blur.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/layers/preprocessing/image_preprocessing/random_grayscale.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/layers/preprocessing/image_preprocessing/random_hue.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/layers/preprocessing/image_preprocessing/random_invert.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/layers/preprocessing/image_preprocessing/random_perspective.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/layers/preprocessing/image_preprocessing/random_posterization.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/layers/preprocessing/image_preprocessing/random_rotation.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/layers/preprocessing/image_preprocessing/random_saturation.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/layers/preprocessing/image_preprocessing/random_sharpness.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/layers/preprocessing/image_preprocessing/random_shear.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/layers/preprocessing/image_preprocessing/random_translation.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/layers/preprocessing/image_preprocessing/random_zoom.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/layers/preprocessing/image_preprocessing/resizing.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/layers/preprocessing/image_preprocessing/solarization.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/layers/preprocessing/index_lookup.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/layers/preprocessing/integer_lookup.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/layers/preprocessing/mel_spectrogram.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/layers/preprocessing/normalization.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/layers/preprocessing/pipeline.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/layers/preprocessing/rescaling.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/layers/preprocessing/stft_spectrogram.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/layers/preprocessing/string_lookup.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/layers/preprocessing/text_vectorization.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/layers/regularization/__init__.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/layers/regularization/activity_regularization.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/layers/regularization/alpha_dropout.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/layers/regularization/dropout.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/layers/regularization/gaussian_dropout.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/layers/regularization/gaussian_noise.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/layers/regularization/spatial_dropout.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/layers/reshaping/__init__.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/layers/reshaping/cropping1d.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/layers/reshaping/cropping2d.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/layers/reshaping/cropping3d.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/layers/reshaping/flatten.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/layers/reshaping/permute.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/layers/reshaping/repeat_vector.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/layers/reshaping/reshape.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/layers/reshaping/up_sampling1d.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/layers/reshaping/up_sampling2d.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/layers/reshaping/up_sampling3d.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/layers/reshaping/zero_padding1d.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/layers/reshaping/zero_padding2d.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/layers/reshaping/zero_padding3d.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/layers/rnn/__init__.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/layers/rnn/bidirectional.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/layers/rnn/conv_lstm.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/layers/rnn/conv_lstm1d.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/layers/rnn/conv_lstm2d.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/layers/rnn/conv_lstm3d.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/layers/rnn/dropout_rnn_cell.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/layers/rnn/gru.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/layers/rnn/lstm.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/layers/rnn/rnn.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/layers/rnn/simple_rnn.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/layers/rnn/stacked_rnn_cells.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/layers/rnn/time_distributed.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/legacy/__init__.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/legacy/backend.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/legacy/layers.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/legacy/losses.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/legacy/preprocessing/__init__.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/legacy/preprocessing/image.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/legacy/preprocessing/sequence.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/legacy/preprocessing/text.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/legacy/saving/__init__.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/legacy/saving/json_utils.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/legacy/saving/legacy_h5_format.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/legacy/saving/saving_options.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/legacy/saving/saving_utils.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/legacy/saving/serialization.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/losses/__init__.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/losses/loss.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/losses/losses.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/metrics/__init__.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/metrics/accuracy_metrics.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/metrics/confusion_metrics.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/metrics/correlation_metrics.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/metrics/f_score_metrics.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/metrics/hinge_metrics.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/metrics/iou_metrics.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/metrics/metric.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/metrics/metrics_utils.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/metrics/probabilistic_metrics.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/metrics/reduction_metrics.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/metrics/regression_metrics.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/models/__init__.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/models/cloning.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/models/functional.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/models/model.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/models/sequential.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/models/variable_mapping.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/ops/__init__.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/ops/core.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/ops/einops.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/ops/function.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/ops/image.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/ops/linalg.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/ops/math.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/ops/nn.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/ops/node.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/ops/operation.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/ops/operation_utils.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/ops/symbolic_arguments.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/optimizers/__init__.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/optimizers/adadelta.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/optimizers/adafactor.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/optimizers/adagrad.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/optimizers/adam.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/optimizers/adamax.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/optimizers/adamw.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/optimizers/base_optimizer.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/optimizers/ftrl.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/optimizers/lamb.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/optimizers/lion.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/optimizers/loss_scale_optimizer.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/optimizers/muon.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/optimizers/nadam.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/optimizers/optimizer.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/optimizers/rmsprop.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/optimizers/schedules/__init__.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/optimizers/schedules/learning_rate_schedule.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/optimizers/sgd.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/quantizers/awq.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/quantizers/awq_config.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/quantizers/awq_core.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/quantizers/gptq.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/quantizers/gptq_config.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/quantizers/gptq_core.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/quantizers/utils.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/random/__init__.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/random/random.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/random/seed_generator.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/regularizers/__init__.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/regularizers/regularizers.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/saving/__init__.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/saving/keras_saveable.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/saving/object_registration.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/saving/orbax_util.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/saving/serialization_lib.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/testing/__init__.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/testing/test_case.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/testing/test_utils.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/trainers/__init__.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/trainers/compile_utils.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/trainers/data_adapters/__init__.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/trainers/data_adapters/array_data_adapter.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/trainers/data_adapters/array_slicing.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/trainers/data_adapters/data_adapter.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/trainers/data_adapters/data_adapter_utils.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/trainers/data_adapters/generator_data_adapter.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/trainers/data_adapters/grain_dataset_adapter.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/trainers/data_adapters/py_dataset_adapter.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/trainers/data_adapters/tf_dataset_adapter.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/trainers/data_adapters/torch_data_loader_adapter.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/trainers/epoch_iterator.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/trainers/trainer.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/tree/__init__.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/tree/dmtree_impl.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/tree/optree_impl.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/tree/torchtree_impl.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/tree/tree_api.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/utils/__init__.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/utils/argument_validation.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/utils/audio_dataset_utils.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/utils/backend_utils.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/utils/code_stats.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/utils/config.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/utils/dataset_utils.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/utils/dtype_utils.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/utils/file_utils.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/utils/grain_utils.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/utils/image_dataset_utils.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/utils/image_utils.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/utils/io_utils.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/utils/jax_layer.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/utils/jax_utils.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/utils/model_visualization.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/utils/module_utils.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/utils/naming.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/utils/numerical_utils.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/utils/progbar.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/utils/python_utils.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/utils/rng_utils.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/utils/sequence_utils.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/utils/summary_utils.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/utils/text_dataset_utils.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/utils/tf_utils.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/utils/timeseries_dataset_utils.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/utils/torch_utils.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/utils/traceback_utils.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/utils/tracking.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/visualization/__init__.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/visualization/draw_bounding_boxes.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/visualization/draw_segmentation_masks.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/visualization/plot_bounding_box_gallery.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/visualization/plot_image_gallery.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/visualization/plot_segmentation_mask_gallery.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/wrappers/__init__.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/wrappers/fixes.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/wrappers/sklearn_wrapper.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras/src/wrappers/utils.py +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras_nightly.egg-info/SOURCES.txt +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras_nightly.egg-info/dependency_links.txt +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras_nightly.egg-info/requires.txt +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/keras_nightly.egg-info/top_level.txt +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/pyproject.toml +0 -0
- {keras_nightly-3.14.0.dev2026012704 → keras_nightly-3.14.0.dev2026012904}/setup.cfg +0 -0
|
@@ -17,6 +17,9 @@ from keras.src.dtype_policies.dtype_policy import (
|
|
|
17
17
|
from keras.src.dtype_policies.dtype_policy import (
|
|
18
18
|
GPTQDTypePolicy as GPTQDTypePolicy,
|
|
19
19
|
)
|
|
20
|
+
from keras.src.dtype_policies.dtype_policy import (
|
|
21
|
+
Int4DTypePolicy as Int4DTypePolicy,
|
|
22
|
+
)
|
|
20
23
|
from keras.src.dtype_policies.dtype_policy import (
|
|
21
24
|
QuantizedDTypePolicy as QuantizedDTypePolicy,
|
|
22
25
|
)
|
|
@@ -246,6 +246,7 @@ from keras.src.ops.numpy import moveaxis as moveaxis
|
|
|
246
246
|
from keras.src.ops.numpy import multiply as multiply
|
|
247
247
|
from keras.src.ops.numpy import nan_to_num as nan_to_num
|
|
248
248
|
from keras.src.ops.numpy import nanmax as nanmax
|
|
249
|
+
from keras.src.ops.numpy import nanmean as nanmean
|
|
249
250
|
from keras.src.ops.numpy import nanmin as nanmin
|
|
250
251
|
from keras.src.ops.numpy import nansum as nansum
|
|
251
252
|
from keras.src.ops.numpy import ndim as ndim
|
|
@@ -130,6 +130,7 @@ from keras.src.ops.numpy import moveaxis as moveaxis
|
|
|
130
130
|
from keras.src.ops.numpy import multiply as multiply
|
|
131
131
|
from keras.src.ops.numpy import nan_to_num as nan_to_num
|
|
132
132
|
from keras.src.ops.numpy import nanmax as nanmax
|
|
133
|
+
from keras.src.ops.numpy import nanmean as nanmean
|
|
133
134
|
from keras.src.ops.numpy import nanmin as nanmin
|
|
134
135
|
from keras.src.ops.numpy import nansum as nansum
|
|
135
136
|
from keras.src.ops.numpy import ndim as ndim
|
|
@@ -24,6 +24,9 @@ from keras.src.quantizers.quantization_config import (
|
|
|
24
24
|
from keras.src.quantizers.quantizers import AbsMaxQuantizer as AbsMaxQuantizer
|
|
25
25
|
from keras.src.quantizers.quantizers import Quantizer as Quantizer
|
|
26
26
|
from keras.src.quantizers.quantizers import abs_max_quantize as abs_max_quantize
|
|
27
|
+
from keras.src.quantizers.quantizers import (
|
|
28
|
+
abs_max_quantize_grouped_with_zero_point as abs_max_quantize_grouped_with_zero_point,
|
|
29
|
+
)
|
|
27
30
|
from keras.src.quantizers.quantizers import (
|
|
28
31
|
compute_float8_amax_history as compute_float8_amax_history,
|
|
29
32
|
)
|
|
@@ -17,6 +17,9 @@ from keras.src.dtype_policies.dtype_policy import (
|
|
|
17
17
|
from keras.src.dtype_policies.dtype_policy import (
|
|
18
18
|
GPTQDTypePolicy as GPTQDTypePolicy,
|
|
19
19
|
)
|
|
20
|
+
from keras.src.dtype_policies.dtype_policy import (
|
|
21
|
+
Int4DTypePolicy as Int4DTypePolicy,
|
|
22
|
+
)
|
|
20
23
|
from keras.src.dtype_policies.dtype_policy import (
|
|
21
24
|
QuantizedDTypePolicy as QuantizedDTypePolicy,
|
|
22
25
|
)
|
|
@@ -246,6 +246,7 @@ from keras.src.ops.numpy import moveaxis as moveaxis
|
|
|
246
246
|
from keras.src.ops.numpy import multiply as multiply
|
|
247
247
|
from keras.src.ops.numpy import nan_to_num as nan_to_num
|
|
248
248
|
from keras.src.ops.numpy import nanmax as nanmax
|
|
249
|
+
from keras.src.ops.numpy import nanmean as nanmean
|
|
249
250
|
from keras.src.ops.numpy import nanmin as nanmin
|
|
250
251
|
from keras.src.ops.numpy import nansum as nansum
|
|
251
252
|
from keras.src.ops.numpy import ndim as ndim
|
|
@@ -130,6 +130,7 @@ from keras.src.ops.numpy import moveaxis as moveaxis
|
|
|
130
130
|
from keras.src.ops.numpy import multiply as multiply
|
|
131
131
|
from keras.src.ops.numpy import nan_to_num as nan_to_num
|
|
132
132
|
from keras.src.ops.numpy import nanmax as nanmax
|
|
133
|
+
from keras.src.ops.numpy import nanmean as nanmean
|
|
133
134
|
from keras.src.ops.numpy import nanmin as nanmin
|
|
134
135
|
from keras.src.ops.numpy import nansum as nansum
|
|
135
136
|
from keras.src.ops.numpy import ndim as ndim
|
|
@@ -24,6 +24,9 @@ from keras.src.quantizers.quantization_config import (
|
|
|
24
24
|
from keras.src.quantizers.quantizers import AbsMaxQuantizer as AbsMaxQuantizer
|
|
25
25
|
from keras.src.quantizers.quantizers import Quantizer as Quantizer
|
|
26
26
|
from keras.src.quantizers.quantizers import abs_max_quantize as abs_max_quantize
|
|
27
|
+
from keras.src.quantizers.quantizers import (
|
|
28
|
+
abs_max_quantize_grouped_with_zero_point as abs_max_quantize_grouped_with_zero_point,
|
|
29
|
+
)
|
|
27
30
|
from keras.src.quantizers.quantizers import (
|
|
28
31
|
compute_float8_amax_history as compute_float8_amax_history,
|
|
29
32
|
)
|
|
@@ -98,7 +98,7 @@ if config.is_nnx_enabled():
|
|
|
98
98
|
):
|
|
99
99
|
# Ensure 'mutable' is in nnx_metadata, but explicit 'mutable'
|
|
100
100
|
# param takes precedence.
|
|
101
|
-
nnx_metadata["mutable"] =
|
|
101
|
+
nnx_metadata["mutable"] = True if mutable is None else mutable
|
|
102
102
|
|
|
103
103
|
# First, initialize a basic nnx.Variable with a dummy value
|
|
104
104
|
# This sets up the NNX variable structure
|
|
@@ -603,7 +603,17 @@ def random_seed_dtype():
|
|
|
603
603
|
|
|
604
604
|
|
|
605
605
|
def custom_gradient(fun):
|
|
606
|
-
|
|
606
|
+
fun_with_custom_gradient = jax.custom_gradient(fun=fun)
|
|
607
|
+
|
|
608
|
+
# Add a wrapper to unwrap variables, otherwise custom_gradient will fail
|
|
609
|
+
def fun_with_custom_gradient_wrapper(*args, **kwargs):
|
|
610
|
+
args, kwargs = tree.map_shape_structure(
|
|
611
|
+
lambda x: x.value if isinstance(x, KerasVariable) else x,
|
|
612
|
+
(args, kwargs),
|
|
613
|
+
)
|
|
614
|
+
return fun_with_custom_gradient(*args, **kwargs)
|
|
615
|
+
|
|
616
|
+
return fun_with_custom_gradient_wrapper
|
|
607
617
|
|
|
608
618
|
|
|
609
619
|
def remat(f):
|
|
@@ -1018,6 +1018,11 @@ def nanmax(x, axis=None, keepdims=False):
|
|
|
1018
1018
|
return jnp.nanmax(x, axis=axis, keepdims=keepdims)
|
|
1019
1019
|
|
|
1020
1020
|
|
|
1021
|
+
def nanmean(x, axis=None, keepdims=False):
|
|
1022
|
+
x = convert_to_tensor(x)
|
|
1023
|
+
return jnp.nanmean(x, axis=axis, keepdims=keepdims)
|
|
1024
|
+
|
|
1025
|
+
|
|
1021
1026
|
def nanmin(x, axis=None, keepdims=False):
|
|
1022
1027
|
x = convert_to_tensor(x)
|
|
1023
1028
|
return jnp.nanmin(x, axis=axis, keepdims=keepdims)
|
|
@@ -964,6 +964,11 @@ def nanmax(x, axis=None, keepdims=False):
|
|
|
964
964
|
return np.nanmax(x, axis=axis, keepdims=keepdims)
|
|
965
965
|
|
|
966
966
|
|
|
967
|
+
def nanmean(x, axis=None, keepdims=False):
|
|
968
|
+
dtype = dtypes.result_type(standardize_dtype(x.dtype), float)
|
|
969
|
+
return np.nanmean(x, axis=axis, keepdims=keepdims).astype(dtype)
|
|
970
|
+
|
|
971
|
+
|
|
967
972
|
def nanmin(x, axis=None, keepdims=False):
|
|
968
973
|
return np.nanmin(x, axis=axis, keepdims=keepdims)
|
|
969
974
|
|
|
@@ -2111,6 +2111,12 @@ def nanmax(x, axis=None, keepdims=False):
|
|
|
2111
2111
|
raise NotImplementedError("`nanmax` is not supported with openvino backend")
|
|
2112
2112
|
|
|
2113
2113
|
|
|
2114
|
+
def nanmean(x, axis=None, keepdims=False):
|
|
2115
|
+
raise NotImplementedError(
|
|
2116
|
+
"`nanmean` is not supported with openvino backend"
|
|
2117
|
+
)
|
|
2118
|
+
|
|
2119
|
+
|
|
2114
2120
|
def nanmin(x, axis=None, keepdims=False):
|
|
2115
2121
|
raise NotImplementedError("`nanmin` is not supported with openvino backend")
|
|
2116
2122
|
|
|
@@ -2145,6 +2145,27 @@ def nanmax(x, axis=None, keepdims=False):
|
|
|
2145
2145
|
)
|
|
2146
2146
|
|
|
2147
2147
|
|
|
2148
|
+
def nanmean(x, axis=None, keepdims=False):
|
|
2149
|
+
x = convert_to_tensor(x)
|
|
2150
|
+
|
|
2151
|
+
if axis == () or axis == []:
|
|
2152
|
+
return x
|
|
2153
|
+
|
|
2154
|
+
if not x.dtype.is_floating:
|
|
2155
|
+
return tf.reduce_mean(
|
|
2156
|
+
tf.cast(x, "float32"), axis=axis, keepdims=keepdims
|
|
2157
|
+
)
|
|
2158
|
+
|
|
2159
|
+
dtype = dtypes.result_type(standardize_dtype(x.dtype), float)
|
|
2160
|
+
total_sum = cast(nansum(x, axis=axis, keepdims=keepdims), dtype)
|
|
2161
|
+
normalizer = tf.reduce_sum(
|
|
2162
|
+
cast(~tf.math.is_nan(x), dtype),
|
|
2163
|
+
axis=axis,
|
|
2164
|
+
keepdims=keepdims,
|
|
2165
|
+
)
|
|
2166
|
+
return tf.divide(total_sum, normalizer)
|
|
2167
|
+
|
|
2168
|
+
|
|
2148
2169
|
def nanmin(x, axis=None, keepdims=False):
|
|
2149
2170
|
x = convert_to_tensor(x)
|
|
2150
2171
|
|
|
@@ -1290,6 +1290,16 @@ def nanmax(x, axis=None, keepdims=False):
|
|
|
1290
1290
|
)
|
|
1291
1291
|
|
|
1292
1292
|
|
|
1293
|
+
def nanmean(x, axis=None, keepdims=False):
|
|
1294
|
+
x = convert_to_tensor(x)
|
|
1295
|
+
|
|
1296
|
+
if axis == () or axis == []:
|
|
1297
|
+
return x
|
|
1298
|
+
|
|
1299
|
+
dtype = dtypes.result_type(standardize_dtype(x.dtype), float)
|
|
1300
|
+
return torch.nanmean(cast(x, dtype), dim=axis, keepdim=keepdims)
|
|
1301
|
+
|
|
1302
|
+
|
|
1293
1303
|
def nanmin(x, axis=None, keepdims=False):
|
|
1294
1304
|
x = convert_to_tensor(x)
|
|
1295
1305
|
if not torch.is_floating_point(x):
|
|
@@ -8,6 +8,7 @@ from keras.src.api_export import keras_export
|
|
|
8
8
|
from keras.src.callbacks.monitor_callback import (
|
|
9
9
|
MonitorCallback, # For metric monitoring logic
|
|
10
10
|
)
|
|
11
|
+
from keras.src.saving import saving_lib
|
|
11
12
|
from keras.src.utils.module_utils import ocp
|
|
12
13
|
|
|
13
14
|
# Context and AsyncOptions are accessed through the lazy-loaded ocp module
|
|
@@ -117,6 +118,7 @@ class OrbaxCheckpoint(MonitorCallback):
|
|
|
117
118
|
initial_value_threshold=None,
|
|
118
119
|
max_to_keep=1,
|
|
119
120
|
save_on_background=True,
|
|
121
|
+
save_weights_only=False,
|
|
120
122
|
):
|
|
121
123
|
# Ensure orbax is available
|
|
122
124
|
ocp.initialize()
|
|
@@ -131,10 +133,12 @@ class OrbaxCheckpoint(MonitorCallback):
|
|
|
131
133
|
self.save_freq = save_freq
|
|
132
134
|
self.max_to_keep = max_to_keep
|
|
133
135
|
self.save_on_background = save_on_background
|
|
136
|
+
self.save_weights_only = save_weights_only
|
|
134
137
|
self._batches_seen_since_last_saving = 0
|
|
135
138
|
self._last_batch_seen = 0
|
|
136
139
|
self._current_epoch = 0 # Keep track of epoch
|
|
137
140
|
self._total_batches_seen = 0 # Global batch counter for step tracking
|
|
141
|
+
self._async_futures = [] # Track async save futures
|
|
138
142
|
|
|
139
143
|
# Multi-host support
|
|
140
144
|
self._multihost_initialized = self._is_multihost_initialized()
|
|
@@ -167,9 +171,14 @@ class OrbaxCheckpoint(MonitorCallback):
|
|
|
167
171
|
|
|
168
172
|
# Create the V1 Checkpointer with direct parameter passing
|
|
169
173
|
# Orbax will handle directory creation on all processes as needed
|
|
174
|
+
# save_decision_policy is required for proper coordination of
|
|
175
|
+
# rapid async saves
|
|
170
176
|
self.checkpointer = ocp.training.Checkpointer(
|
|
171
177
|
directory=directory,
|
|
172
178
|
preservation_policy=preservation_policy,
|
|
179
|
+
save_decision_policy=ocp.training.save_decision_policies.FixedIntervalPolicy(
|
|
180
|
+
1
|
|
181
|
+
),
|
|
173
182
|
)
|
|
174
183
|
|
|
175
184
|
def _is_multihost_initialized(self):
|
|
@@ -246,15 +255,35 @@ class OrbaxCheckpoint(MonitorCallback):
|
|
|
246
255
|
|
|
247
256
|
# Save the nested state structures directly (preserving layer
|
|
248
257
|
# names and structure)
|
|
249
|
-
|
|
258
|
+
if self.save_weights_only:
|
|
259
|
+
composite_state = {
|
|
260
|
+
"trainable_variables": state_tree["trainable_variables"],
|
|
261
|
+
"non_trainable_variables": state_tree[
|
|
262
|
+
"non_trainable_variables"
|
|
263
|
+
],
|
|
264
|
+
}
|
|
265
|
+
else:
|
|
266
|
+
composite_state = state_tree
|
|
267
|
+
# Include model configuration for full model restoration
|
|
268
|
+
# Use saving_lib helper to properly handle shared objects
|
|
269
|
+
config_json, _ = saving_lib._serialize_model_as_json(self.model)
|
|
270
|
+
composite_state["model_config"] = config_json
|
|
250
271
|
|
|
251
272
|
# Use a single with statement. If context_options is empty,
|
|
252
273
|
# Context() uses defaults.
|
|
253
274
|
with ocp.Context():
|
|
254
|
-
|
|
255
|
-
|
|
256
|
-
|
|
275
|
+
# Determine sync vs async based on save_on_background setting
|
|
276
|
+
use_sync = not self.save_on_background
|
|
277
|
+
|
|
278
|
+
if use_sync:
|
|
279
|
+
# Synchronous save
|
|
257
280
|
self.checkpointer.save_pytree(step, composite_state)
|
|
281
|
+
else:
|
|
282
|
+
# Async save
|
|
283
|
+
future = self.checkpointer.save_pytree_async(
|
|
284
|
+
step, composite_state
|
|
285
|
+
)
|
|
286
|
+
self._async_futures.append(future)
|
|
258
287
|
|
|
259
288
|
def on_train_batch_end(self, batch, logs=None):
|
|
260
289
|
if self._should_save_on_batch(batch):
|
|
@@ -306,12 +335,11 @@ class OrbaxCheckpoint(MonitorCallback):
|
|
|
306
335
|
|
|
307
336
|
if should_save:
|
|
308
337
|
# Use epoch number as the step for Orbax save
|
|
309
|
-
# Keras has already made the save decision - Checkpointer will
|
|
310
|
-
# save unconditionally
|
|
311
338
|
self._save_checkpoint(step=epoch, logs=logs)
|
|
312
339
|
|
|
313
340
|
def on_train_end(self, logs=None):
|
|
314
|
-
# Close the Checkpointer
|
|
341
|
+
# Close the Checkpointer - this waits for any pending async saves
|
|
342
|
+
# to complete before closing
|
|
315
343
|
try:
|
|
316
344
|
self.checkpointer.close()
|
|
317
345
|
except Exception:
|
|
@@ -325,7 +353,12 @@ class OrbaxCheckpoint(MonitorCallback):
|
|
|
325
353
|
This method blocks until all asynchronous checkpoint save operations
|
|
326
354
|
have completed across all hosts in a multi-host setup.
|
|
327
355
|
"""
|
|
328
|
-
# Wait for
|
|
356
|
+
# Wait for all tracked async futures to complete
|
|
357
|
+
for future in self._async_futures:
|
|
358
|
+
future.result() # Wait for completion
|
|
359
|
+
self._async_futures.clear() # Clear completed futures
|
|
360
|
+
|
|
361
|
+
# Wait for any remaining async operations to complete on this host
|
|
329
362
|
self.checkpointer.wait()
|
|
330
363
|
|
|
331
364
|
# Multi-host synchronization: ensure all hosts complete
|
|
@@ -6,6 +6,7 @@ from keras.src.dtype_policies.dtype_policy import AWQDTypePolicy
|
|
|
6
6
|
from keras.src.dtype_policies.dtype_policy import DTypePolicy
|
|
7
7
|
from keras.src.dtype_policies.dtype_policy import FloatDTypePolicy
|
|
8
8
|
from keras.src.dtype_policies.dtype_policy import GPTQDTypePolicy
|
|
9
|
+
from keras.src.dtype_policies.dtype_policy import Int4DTypePolicy
|
|
9
10
|
from keras.src.dtype_policies.dtype_policy import QuantizedDTypePolicy
|
|
10
11
|
from keras.src.dtype_policies.dtype_policy import QuantizedFloat8DTypePolicy
|
|
11
12
|
from keras.src.dtype_policies.dtype_policy_map import DTypePolicyMap
|
|
@@ -18,6 +19,7 @@ ALL_OBJECTS = {
|
|
|
18
19
|
QuantizedFloat8DTypePolicy,
|
|
19
20
|
DTypePolicyMap,
|
|
20
21
|
GPTQDTypePolicy,
|
|
22
|
+
Int4DTypePolicy,
|
|
21
23
|
}
|
|
22
24
|
ALL_OBJECTS_DICT = {cls.__name__: cls for cls in ALL_OBJECTS}
|
|
23
25
|
|
|
@@ -288,6 +288,79 @@ class QuantizedFloat8DTypePolicy(QuantizedDTypePolicy):
|
|
|
288
288
|
return config
|
|
289
289
|
|
|
290
290
|
|
|
291
|
+
@keras_export("keras.dtype_policies.Int4DTypePolicy")
|
|
292
|
+
class Int4DTypePolicy(QuantizedDTypePolicy):
|
|
293
|
+
"""Quantized dtype policy for int4 quantization.
|
|
294
|
+
|
|
295
|
+
This policy helps propagate quantization settings for int4 sub-channel
|
|
296
|
+
quantization when loading a quantized model in Keras format.
|
|
297
|
+
|
|
298
|
+
Args:
|
|
299
|
+
mode: The quantization mode. This should be a string in the format
|
|
300
|
+
`"int4/<block_size>"`.
|
|
301
|
+
- `"int4"`: The identifier for the quantization algorithm.
|
|
302
|
+
- `<block_size>`: The block size for sub-channel quantization.
|
|
303
|
+
Use -1 for per-channel (legacy) quantization. Any positive
|
|
304
|
+
integer enables sub-channel quantization with that block size.
|
|
305
|
+
Example: `"int4/128"` for sub-channel with 128-element groups.
|
|
306
|
+
source_name: The source dtype policy name, e.g. "float32".
|
|
307
|
+
"""
|
|
308
|
+
|
|
309
|
+
def __init__(
|
|
310
|
+
self,
|
|
311
|
+
mode,
|
|
312
|
+
source_name=None,
|
|
313
|
+
):
|
|
314
|
+
parts = mode.split("/")
|
|
315
|
+
expected_format = "'int4/<block_size>'"
|
|
316
|
+
|
|
317
|
+
# Validate format
|
|
318
|
+
if len(parts) != 2 or parts[0] != "int4":
|
|
319
|
+
raise ValueError(
|
|
320
|
+
"Invalid mode for Int4DTypePolicy. Expected format "
|
|
321
|
+
f"{expected_format}, but got '{mode}'."
|
|
322
|
+
)
|
|
323
|
+
|
|
324
|
+
# Validate and cast block_size
|
|
325
|
+
try:
|
|
326
|
+
block_size = int(parts[1])
|
|
327
|
+
except ValueError:
|
|
328
|
+
raise ValueError(
|
|
329
|
+
"Invalid mode for Int4DTypePolicy. <block_size> must be an "
|
|
330
|
+
f"integer. Expected format {expected_format}, but got '{mode}'."
|
|
331
|
+
)
|
|
332
|
+
|
|
333
|
+
# Validate supported values
|
|
334
|
+
if block_size < -1 or block_size == 0:
|
|
335
|
+
raise ValueError(
|
|
336
|
+
"Invalid block_size in mode. Supported values are "
|
|
337
|
+
"-1 (per-channel) or a positive integer (sub-channel), "
|
|
338
|
+
f"but got {block_size} from '{mode}'."
|
|
339
|
+
)
|
|
340
|
+
|
|
341
|
+
base_mode = parts[0]
|
|
342
|
+
super().__init__(
|
|
343
|
+
mode=base_mode,
|
|
344
|
+
source_name=source_name,
|
|
345
|
+
)
|
|
346
|
+
|
|
347
|
+
self._name = f"{mode}_from_{source_name}"
|
|
348
|
+
self.mode = base_mode
|
|
349
|
+
self.block_size = block_size
|
|
350
|
+
|
|
351
|
+
def __eq__(self, other):
|
|
352
|
+
if super().__eq__(other) is False:
|
|
353
|
+
return False
|
|
354
|
+
return self.block_size == other.block_size
|
|
355
|
+
|
|
356
|
+
def get_config(self):
|
|
357
|
+
config = super().get_config()
|
|
358
|
+
# Reconstruct the full mode string for serialization
|
|
359
|
+
mode = f"{self.mode}/{self.block_size}"
|
|
360
|
+
config.update({"mode": mode})
|
|
361
|
+
return config
|
|
362
|
+
|
|
363
|
+
|
|
291
364
|
@keras_export("keras.dtype_policies.GPTQDTypePolicy")
|
|
292
365
|
class GPTQDTypePolicy(QuantizedDTypePolicy):
|
|
293
366
|
"""Quantized dtype policy for GPTQ quantization.
|
|
@@ -525,8 +598,14 @@ def _get_quantized_dtype_policy_by_str(policy):
|
|
|
525
598
|
f"Received: policy={policy}"
|
|
526
599
|
)
|
|
527
600
|
mode, source_name = split_name
|
|
528
|
-
if policy.startswith("int8")
|
|
601
|
+
if policy.startswith("int8"):
|
|
529
602
|
return QuantizedDTypePolicy(mode, source_name)
|
|
603
|
+
elif policy.startswith("int4"):
|
|
604
|
+
# Check if mode has block_size component (e.g., "int4/128")
|
|
605
|
+
if "/" in mode:
|
|
606
|
+
return Int4DTypePolicy(mode, source_name)
|
|
607
|
+
else:
|
|
608
|
+
return QuantizedDTypePolicy(mode, source_name)
|
|
530
609
|
elif policy.startswith("gptq"):
|
|
531
610
|
return GPTQDTypePolicy(mode, source_name)
|
|
532
611
|
elif policy.startswith("awq"):
|