mct-nightly 2.1.0.20240811.503__py3-none-any.whl → 2.1.0.20240813.442__py3-none-any.whl

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.
Files changed (64) hide show
  1. {mct_nightly-2.1.0.20240811.503.dist-info → mct_nightly-2.1.0.20240813.442.dist-info}/METADATA +1 -1
  2. {mct_nightly-2.1.0.20240811.503.dist-info → mct_nightly-2.1.0.20240813.442.dist-info}/RECORD +64 -62
  3. model_compression_toolkit/__init__.py +1 -1
  4. model_compression_toolkit/constants.py +0 -7
  5. model_compression_toolkit/core/__init__.py +1 -0
  6. model_compression_toolkit/core/common/graph/functional_node.py +1 -1
  7. model_compression_toolkit/core/common/mixed_precision/resource_utilization_tools/resource_utilization_data.py +2 -0
  8. model_compression_toolkit/core/common/quantization/bit_width_config.py +91 -0
  9. model_compression_toolkit/core/common/quantization/core_config.py +8 -4
  10. model_compression_toolkit/core/common/quantization/quantization_config.py +1 -1
  11. model_compression_toolkit/core/common/quantization/set_node_quantization_config.py +88 -22
  12. model_compression_toolkit/core/graph_prep_runner.py +16 -9
  13. model_compression_toolkit/core/keras/resource_utilization_data_facade.py +4 -3
  14. model_compression_toolkit/core/pytorch/resource_utilization_data_facade.py +1 -1
  15. model_compression_toolkit/core/runner.py +1 -0
  16. model_compression_toolkit/data_generation/__init__.py +1 -1
  17. model_compression_toolkit/data_generation/keras/keras_data_generation.py +7 -3
  18. model_compression_toolkit/data_generation/pytorch/pytorch_data_generation.py +1 -1
  19. model_compression_toolkit/exporter/model_exporter/keras/keras_export_facade.py +4 -3
  20. model_compression_toolkit/exporter/model_exporter/pytorch/fakely_quant_onnx_pytorch_exporter.py +1 -1
  21. model_compression_toolkit/exporter/model_exporter/pytorch/pytorch_export_facade.py +1 -1
  22. model_compression_toolkit/exporter/model_wrapper/keras/builder/fully_quantized_model_builder.py +4 -3
  23. model_compression_toolkit/exporter/model_wrapper/keras/validate_layer.py +4 -3
  24. model_compression_toolkit/exporter/model_wrapper/pytorch/builder/fully_quantized_model_builder.py +1 -1
  25. model_compression_toolkit/exporter/model_wrapper/pytorch/validate_layer.py +1 -2
  26. model_compression_toolkit/gptq/keras/quantization_facade.py +8 -5
  27. model_compression_toolkit/gptq/keras/quantizer/base_keras_gptq_quantizer.py +4 -3
  28. model_compression_toolkit/gptq/pytorch/quantization_facade.py +2 -1
  29. model_compression_toolkit/gptq/pytorch/quantizer/base_pytorch_gptq_quantizer.py +1 -1
  30. model_compression_toolkit/pruning/keras/pruning_facade.py +6 -3
  31. model_compression_toolkit/pruning/pytorch/pruning_facade.py +3 -1
  32. model_compression_toolkit/ptq/keras/quantization_facade.py +5 -3
  33. model_compression_toolkit/ptq/pytorch/quantization_facade.py +2 -1
  34. model_compression_toolkit/qat/keras/quantization_facade.py +7 -5
  35. model_compression_toolkit/qat/keras/quantizer/base_keras_qat_quantizer.py +4 -3
  36. model_compression_toolkit/qat/pytorch/quantization_facade.py +2 -1
  37. model_compression_toolkit/qat/pytorch/quantizer/base_pytorch_qat_quantizer.py +1 -1
  38. model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/latest/__init__.py +1 -1
  39. model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/target_platform_capabilities.py +2 -1
  40. model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v1/tpc_keras.py +1 -1
  41. model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v1_lut/tpc_keras.py +1 -1
  42. model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v1_pot/tpc_keras.py +1 -1
  43. model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v2/tpc_keras.py +1 -1
  44. model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v2_lut/tpc_keras.py +1 -1
  45. model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v3/tpc_keras.py +1 -1
  46. model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v3_lut/tpc_keras.py +1 -1
  47. model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v4/tp_model.py +1 -0
  48. model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v4/tpc_keras.py +5 -3
  49. model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v4/tpc_pytorch.py +2 -0
  50. model_compression_toolkit/target_platform_capabilities/tpc_models/qnnpack_tpc/latest/__init__.py +1 -1
  51. model_compression_toolkit/target_platform_capabilities/tpc_models/qnnpack_tpc/target_platform_capabilities.py +2 -1
  52. model_compression_toolkit/target_platform_capabilities/tpc_models/tflite_tpc/latest/__init__.py +1 -1
  53. model_compression_toolkit/target_platform_capabilities/tpc_models/tflite_tpc/target_platform_capabilities.py +2 -1
  54. model_compression_toolkit/trainable_infrastructure/keras/base_keras_quantizer.py +4 -3
  55. model_compression_toolkit/trainable_infrastructure/keras/load_model.py +4 -3
  56. model_compression_toolkit/trainable_infrastructure/keras/quantize_wrapper.py +4 -3
  57. model_compression_toolkit/trainable_infrastructure/pytorch/base_pytorch_quantizer.py +1 -1
  58. model_compression_toolkit/verify_packages.py +33 -0
  59. model_compression_toolkit/xquant/common/model_folding_utils.py +1 -0
  60. model_compression_toolkit/xquant/keras/facade_xquant_report.py +4 -3
  61. model_compression_toolkit/xquant/pytorch/facade_xquant_report.py +1 -1
  62. {mct_nightly-2.1.0.20240811.503.dist-info → mct_nightly-2.1.0.20240813.442.dist-info}/LICENSE.md +0 -0
  63. {mct_nightly-2.1.0.20240811.503.dist-info → mct_nightly-2.1.0.20240813.442.dist-info}/WHEEL +0 -0
  64. {mct_nightly-2.1.0.20240811.503.dist-info → mct_nightly-2.1.0.20240813.442.dist-info}/top_level.txt +0 -0
@@ -16,7 +16,8 @@ import copy
16
16
  from typing import Callable
17
17
  from functools import partial
18
18
 
19
- from model_compression_toolkit.constants import FOUND_TORCH, PYTORCH
19
+ from model_compression_toolkit.constants import PYTORCH
20
+ from model_compression_toolkit.verify_packages import FOUND_TORCH
20
21
 
21
22
  from model_compression_toolkit.core import CoreConfig
22
23
  from model_compression_toolkit.core import common
@@ -15,7 +15,7 @@
15
15
  from typing import Union
16
16
 
17
17
  from model_compression_toolkit.logger import Logger
18
- from model_compression_toolkit.constants import FOUND_TORCH
18
+ from model_compression_toolkit.verify_packages import FOUND_TORCH
19
19
 
20
20
  from model_compression_toolkit.trainable_infrastructure import TrainableQuantizerWeightsConfig, \
21
21
  TrainableQuantizerActivationConfig
@@ -12,7 +12,7 @@
12
12
  # See the License for the specific language governing permissions and
13
13
  # limitations under the License.
14
14
  # ==============================================================================
15
- from model_compression_toolkit.constants import FOUND_TF, FOUND_TORCH
15
+ from model_compression_toolkit.verify_packages import FOUND_TORCH, FOUND_TF
16
16
  from model_compression_toolkit.target_platform_capabilities.tpc_models.imx500_tpc.v1.tp_model import get_tp_model, generate_tp_model, \
17
17
  get_op_quantization_configs
18
18
  if FOUND_TF:
@@ -14,7 +14,8 @@
14
14
  # ==============================================================================
15
15
  from model_compression_toolkit.logger import Logger
16
16
 
17
- from model_compression_toolkit.constants import FOUND_TF, FOUND_TORCH, TENSORFLOW, PYTORCH
17
+ from model_compression_toolkit.constants import TENSORFLOW, PYTORCH
18
+ from model_compression_toolkit.verify_packages import FOUND_TORCH, FOUND_TF
18
19
  from model_compression_toolkit.target_platform_capabilities.constants import LATEST
19
20
 
20
21
 
@@ -16,7 +16,7 @@ import tensorflow as tf
16
16
  from packaging import version
17
17
 
18
18
  from model_compression_toolkit.defaultdict import DefaultDict
19
- from model_compression_toolkit.constants import FOUND_SONY_CUSTOM_LAYERS
19
+ from model_compression_toolkit.verify_packages import FOUND_SONY_CUSTOM_LAYERS
20
20
  from model_compression_toolkit.target_platform_capabilities.constants import KERNEL_ATTR, KERAS_DEPTHWISE_KERNEL, \
21
21
  KERAS_KERNEL, BIAS_ATTR, BIAS
22
22
 
@@ -16,7 +16,7 @@ import tensorflow as tf
16
16
  from packaging import version
17
17
 
18
18
  from model_compression_toolkit.defaultdict import DefaultDict
19
- from model_compression_toolkit.constants import FOUND_SONY_CUSTOM_LAYERS
19
+ from model_compression_toolkit.verify_packages import FOUND_SONY_CUSTOM_LAYERS
20
20
  from model_compression_toolkit.target_platform_capabilities.constants import KERNEL_ATTR, KERAS_KERNEL, BIAS_ATTR, \
21
21
  KERAS_DEPTHWISE_KERNEL, BIAS
22
22
 
@@ -16,7 +16,7 @@ import tensorflow as tf
16
16
  from packaging import version
17
17
 
18
18
  from model_compression_toolkit.defaultdict import DefaultDict
19
- from model_compression_toolkit.constants import FOUND_SONY_CUSTOM_LAYERS
19
+ from model_compression_toolkit.verify_packages import FOUND_SONY_CUSTOM_LAYERS
20
20
  from model_compression_toolkit.target_platform_capabilities.constants import KERNEL_ATTR, KERAS_DEPTHWISE_KERNEL, \
21
21
  KERAS_KERNEL, BIAS_ATTR, BIAS
22
22
 
@@ -16,7 +16,7 @@ import tensorflow as tf
16
16
  from packaging import version
17
17
 
18
18
  from model_compression_toolkit.defaultdict import DefaultDict
19
- from model_compression_toolkit.constants import FOUND_SONY_CUSTOM_LAYERS
19
+ from model_compression_toolkit.verify_packages import FOUND_SONY_CUSTOM_LAYERS
20
20
  from model_compression_toolkit.target_platform_capabilities.constants import KERNEL_ATTR, KERAS_DEPTHWISE_KERNEL, \
21
21
  KERAS_KERNEL, BIAS_ATTR, BIAS
22
22
 
@@ -16,7 +16,7 @@ import tensorflow as tf
16
16
  from packaging import version
17
17
 
18
18
  from model_compression_toolkit.defaultdict import DefaultDict
19
- from model_compression_toolkit.constants import FOUND_SONY_CUSTOM_LAYERS
19
+ from model_compression_toolkit.verify_packages import FOUND_SONY_CUSTOM_LAYERS
20
20
  from model_compression_toolkit.target_platform_capabilities.constants import KERNEL_ATTR, KERAS_KERNEL, BIAS_ATTR, \
21
21
  KERAS_DEPTHWISE_KERNEL, BIAS
22
22
 
@@ -16,7 +16,7 @@ import tensorflow as tf
16
16
  from packaging import version
17
17
 
18
18
  from model_compression_toolkit.defaultdict import DefaultDict
19
- from model_compression_toolkit.constants import FOUND_SONY_CUSTOM_LAYERS
19
+ from model_compression_toolkit.verify_packages import FOUND_SONY_CUSTOM_LAYERS
20
20
  from model_compression_toolkit.target_platform_capabilities.constants import KERNEL_ATTR, KERAS_DEPTHWISE_KERNEL, \
21
21
  KERAS_KERNEL, BIAS_ATTR, BIAS
22
22
 
@@ -16,7 +16,7 @@ import tensorflow as tf
16
16
  from packaging import version
17
17
 
18
18
  from model_compression_toolkit.defaultdict import DefaultDict
19
- from model_compression_toolkit.constants import FOUND_SONY_CUSTOM_LAYERS
19
+ from model_compression_toolkit.verify_packages import FOUND_SONY_CUSTOM_LAYERS
20
20
  from model_compression_toolkit.target_platform_capabilities.constants import KERNEL_ATTR, KERAS_KERNEL, BIAS_ATTR, \
21
21
  KERAS_DEPTHWISE_KERNEL, BIAS
22
22
 
@@ -199,6 +199,7 @@ def generate_tp_model(default_config: OpQuantizationConfig,
199
199
  default_qco.clone_and_edit(enable_activation_quantization=False,
200
200
  supported_input_activation_n_bits=(8, 16))
201
201
  .clone_and_edit_weight_attribute(enable_weights_quantization=False))
202
+ tp.OperatorsSet("Default16BitInout", const_configuration_options_inout16)
202
203
 
203
204
  # Create Mixed-Precision quantization configuration options from the given list of OpQuantizationConfig objects
204
205
  mixed_precision_configuration_options = tp.QuantizationConfigOptions(mixed_precision_cfg_list,
@@ -16,7 +16,7 @@ import tensorflow as tf
16
16
  from packaging import version
17
17
 
18
18
  from model_compression_toolkit.defaultdict import DefaultDict
19
- from model_compression_toolkit.constants import FOUND_SONY_CUSTOM_LAYERS
19
+ from model_compression_toolkit.verify_packages import FOUND_SONY_CUSTOM_LAYERS
20
20
  from model_compression_toolkit.target_platform_capabilities.constants import KERNEL_ATTR, KERAS_DEPTHWISE_KERNEL, \
21
21
  KERAS_KERNEL, BIAS_ATTR, BIAS
22
22
 
@@ -26,11 +26,11 @@ if FOUND_SONY_CUSTOM_LAYERS:
26
26
  if version.parse(tf.__version__) >= version.parse("2.13"):
27
27
  from keras.src.layers import Conv2D, DepthwiseConv2D, Dense, Reshape, ZeroPadding2D, Dropout, \
28
28
  MaxPooling2D, Activation, ReLU, Add, Subtract, Multiply, PReLU, Flatten, Cropping2D, LeakyReLU, Permute, \
29
- Conv2DTranspose, Identity
29
+ Conv2DTranspose, Identity, Concatenate
30
30
  else:
31
31
  from keras.layers import Conv2D, DepthwiseConv2D, Dense, Reshape, ZeroPadding2D, Dropout, \
32
32
  MaxPooling2D, Activation, ReLU, Add, Subtract, Multiply, PReLU, Flatten, Cropping2D, LeakyReLU, Permute, \
33
- Conv2DTranspose, Identity
33
+ Conv2DTranspose, Identity, Concatenate
34
34
 
35
35
  from model_compression_toolkit.target_platform_capabilities.tpc_models.imx500_tpc.v4.tp_model import get_tp_model
36
36
  import model_compression_toolkit as mct
@@ -93,6 +93,8 @@ def generate_keras_tpc(name: str, tp_model: tp.TargetPlatformModel):
93
93
 
94
94
  with keras_tpc:
95
95
  tp.OperationsSetToLayers("NoQuantization", no_quant_list)
96
+ tp.OperationsSetToLayers("Default16BitInout", [tf.stack,
97
+ tf.concat, Concatenate])
96
98
  tp.OperationsSetToLayers("Conv",
97
99
  [Conv2D,
98
100
  DepthwiseConv2D,
@@ -85,6 +85,8 @@ def generate_pytorch_tpc(name: str, tp_model: tp.TargetPlatformModel):
85
85
  topk,
86
86
  squeeze,
87
87
  MaxPool2d])
88
+ tp.OperationsSetToLayers("Default16BitInout",
89
+ [torch.stack, torch.cat, torch.concat, torch.concatenate])
88
90
 
89
91
  tp.OperationsSetToLayers("Conv", [Conv2d, ConvTranspose2d],
90
92
  attr_mapping=pytorch_linear_attr_mapping)
@@ -12,7 +12,7 @@
12
12
  # See the License for the specific language governing permissions and
13
13
  # limitations under the License.
14
14
  # ==============================================================================
15
- from model_compression_toolkit.constants import FOUND_TF, FOUND_TORCH
15
+ from model_compression_toolkit.verify_packages import FOUND_TORCH, FOUND_TF
16
16
  from model_compression_toolkit.target_platform_capabilities.tpc_models.qnnpack_tpc.v1.tp_model import get_tp_model, generate_tp_model, get_op_quantization_configs
17
17
  if FOUND_TF:
18
18
  from model_compression_toolkit.target_platform_capabilities.tpc_models.qnnpack_tpc.v1.tpc_keras import get_keras_tpc as get_keras_tpc_latest
@@ -13,7 +13,8 @@
13
13
  # limitations under the License.
14
14
  # ==============================================================================
15
15
 
16
- from model_compression_toolkit.constants import FOUND_TF, FOUND_TORCH, TENSORFLOW, PYTORCH
16
+ from model_compression_toolkit.constants import TENSORFLOW, PYTORCH
17
+ from model_compression_toolkit.verify_packages import FOUND_TORCH, FOUND_TF
17
18
  from model_compression_toolkit.logger import Logger
18
19
  from model_compression_toolkit.target_platform_capabilities.constants import LATEST
19
20
 
@@ -12,7 +12,7 @@
12
12
  # See the License for the specific language governing permissions and
13
13
  # limitations under the License.
14
14
  # ==============================================================================
15
- from model_compression_toolkit.constants import FOUND_TF, FOUND_TORCH
15
+ from model_compression_toolkit.verify_packages import FOUND_TORCH, FOUND_TF
16
16
  from model_compression_toolkit.target_platform_capabilities.tpc_models.tflite_tpc.v1.tp_model import get_tp_model, generate_tp_model, get_op_quantization_configs
17
17
  if FOUND_TF:
18
18
  from model_compression_toolkit.target_platform_capabilities.tpc_models.tflite_tpc.v1.tpc_keras import get_keras_tpc as get_keras_tpc_latest
@@ -13,7 +13,8 @@
13
13
  # limitations under the License.
14
14
  # ==============================================================================
15
15
 
16
- from model_compression_toolkit.constants import FOUND_TF, FOUND_TORCH, TENSORFLOW, PYTORCH
16
+ from model_compression_toolkit.constants import TENSORFLOW, PYTORCH
17
+ from model_compression_toolkit.verify_packages import FOUND_TORCH, FOUND_TF
17
18
  from model_compression_toolkit.logger import Logger
18
19
  from model_compression_toolkit.target_platform_capabilities.constants import LATEST
19
20
 
@@ -15,7 +15,7 @@
15
15
  from typing import Dict, Any, Union, List
16
16
 
17
17
  from model_compression_toolkit.logger import Logger
18
- from model_compression_toolkit.constants import FOUND_TF
18
+ from model_compression_toolkit.verify_packages import FOUND_TF
19
19
  from model_compression_toolkit.trainable_infrastructure.common.base_trainable_quantizer import VariableGroup
20
20
  from model_compression_toolkit.trainable_infrastructure.common.base_trainable_quantizer import BaseTrainableQuantizer, VAR, GROUP
21
21
  from model_compression_toolkit.trainable_infrastructure import TrainableQuantizerWeightsConfig, \
@@ -83,5 +83,6 @@ if FOUND_TF:
83
83
  else:
84
84
  class BaseKerasTrainableQuantizer(BaseTrainableQuantizer):
85
85
  def __init__(self, *args, **kwargs):
86
- Logger.critical("Tensorflow must be installed to use BaseKerasTrainableQuantizer. "
87
- "The 'tensorflow' package is missing.") # pragma: no cover
86
+ Logger.critical("Tensorflow must be installed with a version of 2.15 or lower to use "
87
+ "BaseKerasTrainableQuantizer. The 'tensorflow' package is missing "
88
+ "or is installed with a version higher than 2.15.") # pragma: no cover
@@ -17,7 +17,7 @@ from typing import Any
17
17
  import mct_quantizers
18
18
  from mct_quantizers.common.get_all_subclasses import get_all_subclasses
19
19
 
20
- from model_compression_toolkit.constants import FOUND_TF
20
+ from model_compression_toolkit.verify_packages import FOUND_TF
21
21
  from model_compression_toolkit.logger import Logger
22
22
 
23
23
  if FOUND_TF:
@@ -72,5 +72,6 @@ else:
72
72
  Returns: A keras Model
73
73
 
74
74
  """
75
- Logger.critical("Tensorflow must be installed to use keras_load_quantized_model. "
76
- "The 'tensorflow' package is missing.") # pragma: no cover
75
+ Logger.critical("Tensorflow must be installed with a version of 2.15 or lower to use "
76
+ "keras_load_quantized_model. The 'tensorflow' package is missing "
77
+ "or is installed with a version higher than 2.15.") # pragma: no cover
@@ -14,7 +14,7 @@
14
14
  # ==============================================================================
15
15
  from typing import Dict
16
16
 
17
- from model_compression_toolkit.constants import FOUND_TF
17
+ from model_compression_toolkit.verify_packages import FOUND_TF
18
18
  from model_compression_toolkit.logger import Logger
19
19
  from model_compression_toolkit.trainable_infrastructure.common.base_trainable_quantizer import BaseTrainableQuantizer
20
20
 
@@ -110,5 +110,6 @@ else:
110
110
  layer: A keras layer.
111
111
  weights_quantizers: A dictionary between a weight's name to its quantizer.
112
112
  """
113
- Logger.critical("Tensorflow must be installed to use KerasTrainableQuantizationWrapper. "
114
- "The 'tensorflow' package is missing.") # pragma: no cover
113
+ Logger.critical("Tensorflow must be installed with a version of 2.15 or lower to use "
114
+ "KerasTrainableQuantizationWrapper. The 'tensorflow' package is missing "
115
+ "or is installed with a version higher than 2.15.") # pragma: no cover
@@ -15,7 +15,7 @@
15
15
  from typing import Union, List
16
16
 
17
17
  from model_compression_toolkit.logger import Logger
18
- from model_compression_toolkit.constants import FOUND_TORCH
18
+ from model_compression_toolkit.verify_packages import FOUND_TORCH
19
19
  from model_compression_toolkit.trainable_infrastructure.common.base_trainable_quantizer import VariableGroup
20
20
  from model_compression_toolkit.trainable_infrastructure.common.base_trainable_quantizer import BaseTrainableQuantizer, VAR, GROUP
21
21
  from model_compression_toolkit.trainable_infrastructure import TrainableQuantizerWeightsConfig, \
@@ -0,0 +1,33 @@
1
+ # Copyright 2024 Sony Semiconductor Israel, Inc. All rights reserved.
2
+ #
3
+ # Licensed under the Apache License, Version 2.0 (the "License");
4
+ # you may not use this file except in compliance with the License.
5
+ # You may obtain a copy of the License at
6
+ #
7
+ # http://www.apache.org/licenses/LICENSE-2.0
8
+ #
9
+ # Unless required by applicable law or agreed to in writing, software
10
+ # distributed under the License is distributed on an "AS IS" BASIS,
11
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
+ # See the License for the specific language governing permissions and
13
+ # limitations under the License.
14
+ # ==============================================================================
15
+
16
+ import importlib
17
+ from packaging import version
18
+
19
+ from model_compression_toolkit.constants import TENSORFLOW
20
+
21
+ FOUND_TF = importlib.util.find_spec(TENSORFLOW) is not None
22
+
23
+ if FOUND_TF:
24
+ import tensorflow as tf
25
+ # MCT doesn't support TensorFlow version 2.16 or higher
26
+ if version.parse(tf.__version__) >= version.parse("2.16"):
27
+ FOUND_TF = False
28
+
29
+ FOUND_TORCH = importlib.util.find_spec("torch") is not None
30
+ FOUND_TORCHVISION = importlib.util.find_spec("torchvision") is not None
31
+ FOUND_ONNX = importlib.util.find_spec("onnx") is not None
32
+ FOUND_ONNXRUNTIME = importlib.util.find_spec("onnxruntime") is not None
33
+ FOUND_SONY_CUSTOM_LAYERS = importlib.util.find_spec('sony_custom_layers') is not None
@@ -16,6 +16,7 @@ from model_compression_toolkit.core.common.framework_implementation import Frame
16
16
  from model_compression_toolkit.core.common.framework_info import FrameworkInfo
17
17
 
18
18
  from model_compression_toolkit.core.common.model_builder_mode import ModelBuilderMode
19
+ from model_compression_toolkit.core.common.quantization.bit_width_config import BitWidthConfig
19
20
  from model_compression_toolkit.core.common.quantization.quantization_config import DEFAULTCONFIG
20
21
 
21
22
  from model_compression_toolkit.core.graph_prep_runner import graph_preparation_runner
@@ -15,7 +15,7 @@
15
15
 
16
16
  from typing import Callable, Dict, Any
17
17
 
18
- from model_compression_toolkit.constants import FOUND_TF
18
+ from model_compression_toolkit.verify_packages import FOUND_TF
19
19
  from model_compression_toolkit.xquant.common.core_report_generator import core_report_generator
20
20
  from model_compression_toolkit.xquant import XQuantConfig
21
21
  from model_compression_toolkit.logger import Logger
@@ -61,5 +61,6 @@ if FOUND_TF:
61
61
  return _collected_data
62
62
  else:
63
63
  def xquant_report_keras_experimental(*args, **kwargs):
64
- Logger.critical("Tensorflow must be installed to use xquant_report_keras_experimental. "
65
- "The 'tensorflow' package is missing.") # pragma: no cover
64
+ Logger.critical("Tensorflow must be installed with a version of 2.15 or lower to use "
65
+ "xquant_report_keras_experimental. The 'tensorflow' package is missing "
66
+ "or is installed with a version higher than 2.15.") # pragma: no cover
@@ -15,7 +15,7 @@
15
15
 
16
16
  from typing import Callable
17
17
 
18
- from model_compression_toolkit.constants import FOUND_TORCH
18
+ from model_compression_toolkit.verify_packages import FOUND_TORCH
19
19
  from model_compression_toolkit.xquant.common.core_report_generator import core_report_generator
20
20
  from model_compression_toolkit.xquant import XQuantConfig
21
21
  from model_compression_toolkit.logger import Logger