mct-nightly 2.1.0.20240811.503__tar.gz → 2.1.0.20240813.442__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.
Files changed (540) hide show
  1. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/PKG-INFO +1 -1
  2. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/mct_nightly.egg-info/PKG-INFO +1 -1
  3. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/mct_nightly.egg-info/SOURCES.txt +2 -0
  4. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/__init__.py +1 -1
  5. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/constants.py +0 -7
  6. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/__init__.py +1 -0
  7. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/common/graph/functional_node.py +1 -1
  8. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/common/mixed_precision/resource_utilization_tools/resource_utilization_data.py +2 -0
  9. mct-nightly-2.1.0.20240813.442/model_compression_toolkit/core/common/quantization/bit_width_config.py +91 -0
  10. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/common/quantization/core_config.py +8 -4
  11. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/common/quantization/quantization_config.py +1 -1
  12. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/common/quantization/set_node_quantization_config.py +88 -22
  13. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/graph_prep_runner.py +16 -9
  14. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/keras/resource_utilization_data_facade.py +4 -3
  15. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/pytorch/resource_utilization_data_facade.py +1 -1
  16. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/runner.py +1 -0
  17. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/data_generation/__init__.py +1 -1
  18. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/data_generation/keras/keras_data_generation.py +7 -3
  19. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/data_generation/pytorch/pytorch_data_generation.py +1 -1
  20. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/exporter/model_exporter/keras/keras_export_facade.py +4 -3
  21. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/exporter/model_exporter/pytorch/fakely_quant_onnx_pytorch_exporter.py +1 -1
  22. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/exporter/model_exporter/pytorch/pytorch_export_facade.py +1 -1
  23. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/exporter/model_wrapper/keras/builder/fully_quantized_model_builder.py +4 -3
  24. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/exporter/model_wrapper/keras/validate_layer.py +4 -3
  25. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/exporter/model_wrapper/pytorch/builder/fully_quantized_model_builder.py +1 -1
  26. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/exporter/model_wrapper/pytorch/validate_layer.py +1 -2
  27. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/gptq/keras/quantization_facade.py +8 -5
  28. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/gptq/keras/quantizer/base_keras_gptq_quantizer.py +4 -3
  29. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/gptq/pytorch/quantization_facade.py +2 -1
  30. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/gptq/pytorch/quantizer/base_pytorch_gptq_quantizer.py +1 -1
  31. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/pruning/keras/pruning_facade.py +6 -3
  32. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/pruning/pytorch/pruning_facade.py +3 -1
  33. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/ptq/keras/quantization_facade.py +5 -3
  34. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/ptq/pytorch/quantization_facade.py +2 -1
  35. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/qat/keras/quantization_facade.py +7 -5
  36. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/qat/keras/quantizer/base_keras_qat_quantizer.py +4 -3
  37. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/qat/pytorch/quantization_facade.py +2 -1
  38. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/qat/pytorch/quantizer/base_pytorch_qat_quantizer.py +1 -1
  39. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/latest/__init__.py +1 -1
  40. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/target_platform_capabilities.py +2 -1
  41. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v1/tpc_keras.py +1 -1
  42. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v1_lut/tpc_keras.py +1 -1
  43. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v1_pot/tpc_keras.py +1 -1
  44. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v2/tpc_keras.py +1 -1
  45. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v2_lut/tpc_keras.py +1 -1
  46. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v3/tpc_keras.py +1 -1
  47. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v3_lut/tpc_keras.py +1 -1
  48. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v4/tp_model.py +1 -0
  49. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v4/tpc_keras.py +5 -3
  50. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v4/tpc_pytorch.py +2 -0
  51. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/target_platform_capabilities/tpc_models/qnnpack_tpc/latest/__init__.py +1 -1
  52. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/target_platform_capabilities/tpc_models/qnnpack_tpc/target_platform_capabilities.py +2 -1
  53. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/target_platform_capabilities/tpc_models/tflite_tpc/latest/__init__.py +1 -1
  54. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/target_platform_capabilities/tpc_models/tflite_tpc/target_platform_capabilities.py +2 -1
  55. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/trainable_infrastructure/keras/base_keras_quantizer.py +4 -3
  56. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/trainable_infrastructure/keras/load_model.py +4 -3
  57. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/trainable_infrastructure/keras/quantize_wrapper.py +4 -3
  58. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/trainable_infrastructure/pytorch/base_pytorch_quantizer.py +1 -1
  59. mct-nightly-2.1.0.20240813.442/model_compression_toolkit/verify_packages.py +33 -0
  60. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/xquant/common/model_folding_utils.py +1 -0
  61. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/xquant/keras/facade_xquant_report.py +4 -3
  62. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/xquant/pytorch/facade_xquant_report.py +1 -1
  63. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/LICENSE.md +0 -0
  64. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/README.md +0 -0
  65. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/mct_nightly.egg-info/dependency_links.txt +0 -0
  66. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/mct_nightly.egg-info/requires.txt +0 -0
  67. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/mct_nightly.egg-info/top_level.txt +0 -0
  68. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/analyzer.py +0 -0
  69. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/common/__init__.py +0 -0
  70. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/common/back2framework/__init__.py +0 -0
  71. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/common/back2framework/base_model_builder.py +0 -0
  72. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/common/base_substitutions.py +0 -0
  73. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/common/collectors/__init__.py +0 -0
  74. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/common/collectors/base_collector.py +0 -0
  75. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/common/collectors/histogram_collector.py +0 -0
  76. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/common/collectors/mean_collector.py +0 -0
  77. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/common/collectors/min_max_per_channel_collector.py +0 -0
  78. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/common/collectors/statistics_collector.py +0 -0
  79. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/common/framework_implementation.py +0 -0
  80. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/common/framework_info.py +0 -0
  81. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/common/fusion/__init__.py +0 -0
  82. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/common/fusion/graph_fuser.py +0 -0
  83. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/common/fusion/layer_fusing.py +0 -0
  84. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/common/graph/__init__.py +0 -0
  85. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/common/graph/base_graph.py +0 -0
  86. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/common/graph/base_node.py +0 -0
  87. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/common/graph/edge.py +0 -0
  88. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/common/graph/graph_matchers.py +0 -0
  89. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/common/graph/graph_searches.py +0 -0
  90. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/common/graph/memory_graph/__init__.py +0 -0
  91. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/common/graph/memory_graph/bipartite_graph.py +0 -0
  92. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/common/graph/memory_graph/compute_graph_max_cut.py +0 -0
  93. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/common/graph/memory_graph/cut.py +0 -0
  94. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/common/graph/memory_graph/max_cut_astar.py +0 -0
  95. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/common/graph/memory_graph/memory_element.py +0 -0
  96. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/common/graph/memory_graph/memory_graph.py +0 -0
  97. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/common/graph/virtual_activation_weights_node.py +0 -0
  98. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/common/hessian/__init__.py +0 -0
  99. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/common/hessian/hessian_info_service.py +0 -0
  100. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/common/hessian/hessian_info_utils.py +0 -0
  101. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/common/hessian/hessian_scores_calculator.py +0 -0
  102. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/common/hessian/hessian_scores_request.py +0 -0
  103. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/common/matchers/__init__.py +0 -0
  104. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/common/matchers/base_graph_filter.py +0 -0
  105. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/common/matchers/base_matcher.py +0 -0
  106. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/common/matchers/edge_matcher.py +0 -0
  107. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/common/matchers/function.py +0 -0
  108. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/common/matchers/node_matcher.py +0 -0
  109. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/common/matchers/walk_matcher.py +0 -0
  110. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/common/memory_computation.py +0 -0
  111. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/common/mixed_precision/__init__.py +0 -0
  112. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/common/mixed_precision/bit_width_setter.py +0 -0
  113. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/common/mixed_precision/configurable_quant_id.py +0 -0
  114. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/common/mixed_precision/configurable_quantizer_utils.py +0 -0
  115. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/common/mixed_precision/distance_weighting.py +0 -0
  116. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/common/mixed_precision/mixed_precision_quantization_config.py +0 -0
  117. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/common/mixed_precision/mixed_precision_search_facade.py +0 -0
  118. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/common/mixed_precision/mixed_precision_search_manager.py +0 -0
  119. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/common/mixed_precision/resource_utilization_tools/__init__.py +0 -0
  120. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/common/mixed_precision/resource_utilization_tools/resource_utilization.py +0 -0
  121. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/common/mixed_precision/resource_utilization_tools/ru_aggregation_methods.py +0 -0
  122. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/common/mixed_precision/resource_utilization_tools/ru_functions_mapping.py +0 -0
  123. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/common/mixed_precision/resource_utilization_tools/ru_methods.py +0 -0
  124. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/common/mixed_precision/search_methods/__init__.py +0 -0
  125. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/common/mixed_precision/search_methods/linear_programming.py +0 -0
  126. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/common/mixed_precision/sensitivity_evaluation.py +0 -0
  127. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/common/mixed_precision/set_layer_to_bitwidth.py +0 -0
  128. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/common/mixed_precision/solution_refinement_procedure.py +0 -0
  129. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/common/model_builder_mode.py +0 -0
  130. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/common/model_collector.py +0 -0
  131. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/common/model_validation.py +0 -0
  132. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/common/network_editors/__init__.py +0 -0
  133. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/common/network_editors/actions.py +0 -0
  134. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/common/network_editors/edit_network.py +0 -0
  135. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/common/network_editors/node_filters.py +0 -0
  136. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/common/node_prior_info.py +0 -0
  137. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/common/pruning/__init__.py +0 -0
  138. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/common/pruning/channels_grouping.py +0 -0
  139. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/common/pruning/greedy_mask_calculator.py +0 -0
  140. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/common/pruning/importance_metrics/__init__.py +0 -0
  141. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/common/pruning/importance_metrics/base_importance_metric.py +0 -0
  142. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/common/pruning/importance_metrics/importance_metric_factory.py +0 -0
  143. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/common/pruning/importance_metrics/lfh_importance_metric.py +0 -0
  144. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/common/pruning/mask/__init__.py +0 -0
  145. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/common/pruning/mask/per_channel_mask.py +0 -0
  146. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/common/pruning/mask/per_simd_group_mask.py +0 -0
  147. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/common/pruning/memory_calculator.py +0 -0
  148. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/common/pruning/prune_graph.py +0 -0
  149. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/common/pruning/pruner.py +0 -0
  150. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/common/pruning/pruning_config.py +0 -0
  151. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/common/pruning/pruning_framework_implementation.py +0 -0
  152. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/common/pruning/pruning_info.py +0 -0
  153. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/common/pruning/pruning_section.py +0 -0
  154. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/common/quantization/__init__.py +0 -0
  155. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/common/quantization/candidate_node_quantization_config.py +0 -0
  156. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/common/quantization/debug_config.py +0 -0
  157. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/common/quantization/filter_nodes_candidates.py +0 -0
  158. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/common/quantization/node_quantization_config.py +0 -0
  159. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/common/quantization/quantization_fn_selection.py +0 -0
  160. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/common/quantization/quantization_params_fn_selection.py +0 -0
  161. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/common/quantization/quantization_params_generation/__init__.py +0 -0
  162. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/common/quantization/quantization_params_generation/error_functions.py +0 -0
  163. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/common/quantization/quantization_params_generation/lut_kmeans_params.py +0 -0
  164. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/common/quantization/quantization_params_generation/outlier_filter.py +0 -0
  165. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/common/quantization/quantization_params_generation/power_of_two_selection.py +0 -0
  166. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/common/quantization/quantization_params_generation/qparams_activations_computation.py +0 -0
  167. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/common/quantization/quantization_params_generation/qparams_computation.py +0 -0
  168. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/common/quantization/quantization_params_generation/qparams_search.py +0 -0
  169. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/common/quantization/quantization_params_generation/qparams_weights_computation.py +0 -0
  170. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/common/quantization/quantization_params_generation/symmetric_selection.py +0 -0
  171. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/common/quantization/quantization_params_generation/uniform_selection.py +0 -0
  172. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/common/quantization/quantize_graph_weights.py +0 -0
  173. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/common/quantization/quantize_node.py +0 -0
  174. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/common/quantization/quantizers/__init__.py +0 -0
  175. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/common/quantization/quantizers/lut_kmeans_quantizer.py +0 -0
  176. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/common/quantization/quantizers/quantizers_helpers.py +0 -0
  177. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/common/quantization/quantizers/uniform_quantizers.py +0 -0
  178. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/common/similarity_analyzer.py +0 -0
  179. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/common/statistics_correction/__init__.py +0 -0
  180. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/common/statistics_correction/apply_bias_correction_to_graph.py +0 -0
  181. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/common/statistics_correction/apply_second_moment_correction_to_graph.py +0 -0
  182. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/common/statistics_correction/compute_bias_correction_of_graph.py +0 -0
  183. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/common/statistics_correction/statistics_correction.py +0 -0
  184. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/common/substitutions/__init__.py +0 -0
  185. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/common/substitutions/apply_substitutions.py +0 -0
  186. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/common/substitutions/batchnorm_folding.py +0 -0
  187. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/common/substitutions/batchnorm_reconstruction.py +0 -0
  188. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/common/substitutions/batchnorm_refusing.py +0 -0
  189. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/common/substitutions/linear_collapsing.py +0 -0
  190. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/common/substitutions/linear_collapsing_substitution.py +0 -0
  191. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/common/substitutions/remove_identity.py +0 -0
  192. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/common/substitutions/residual_collapsing.py +0 -0
  193. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/common/substitutions/scale_equalization.py +0 -0
  194. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/common/substitutions/shift_negative_activation.py +0 -0
  195. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/common/substitutions/softmax_shift.py +0 -0
  196. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/common/substitutions/virtual_activation_weights_composition.py +0 -0
  197. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/common/substitutions/weights_activation_split.py +0 -0
  198. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/common/user_info.py +0 -0
  199. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/common/visualization/__init__.py +0 -0
  200. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/common/visualization/final_config_visualizer.py +0 -0
  201. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/common/visualization/nn_visualizer.py +0 -0
  202. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/common/visualization/tensorboard_writer.py +0 -0
  203. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/keras/__init__.py +0 -0
  204. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/keras/back2framework/__init__.py +0 -0
  205. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/keras/back2framework/factory_model_builder.py +0 -0
  206. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/keras/back2framework/float_model_builder.py +0 -0
  207. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/keras/back2framework/instance_builder.py +0 -0
  208. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/keras/back2framework/keras_model_builder.py +0 -0
  209. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/keras/back2framework/mixed_precision_model_builder.py +0 -0
  210. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/keras/back2framework/quantized_model_builder.py +0 -0
  211. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/keras/constants.py +0 -0
  212. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/keras/custom_layer_validation.py +0 -0
  213. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/keras/default_framework_info.py +0 -0
  214. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/keras/graph_substitutions/__init__.py +0 -0
  215. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/keras/graph_substitutions/substitutions/__init__.py +0 -0
  216. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/keras/graph_substitutions/substitutions/activation_decomposition.py +0 -0
  217. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/keras/graph_substitutions/substitutions/batchnorm_folding.py +0 -0
  218. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/keras/graph_substitutions/substitutions/batchnorm_reconstruction.py +0 -0
  219. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/keras/graph_substitutions/substitutions/batchnorm_refusing.py +0 -0
  220. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/keras/graph_substitutions/substitutions/concat_threshold_update.py +0 -0
  221. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/keras/graph_substitutions/substitutions/dwconv_to_conv.py +0 -0
  222. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/keras/graph_substitutions/substitutions/input_scaling.py +0 -0
  223. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/keras/graph_substitutions/substitutions/linear_collapsing.py +0 -0
  224. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/keras/graph_substitutions/substitutions/matmul_substitution.py +0 -0
  225. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/keras/graph_substitutions/substitutions/multi_head_attention_decomposition.py +0 -0
  226. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/keras/graph_substitutions/substitutions/relu_bound_to_power_of_2.py +0 -0
  227. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/keras/graph_substitutions/substitutions/remove_identity.py +0 -0
  228. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/keras/graph_substitutions/substitutions/residual_collapsing.py +0 -0
  229. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/keras/graph_substitutions/substitutions/scale_equalization.py +0 -0
  230. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/keras/graph_substitutions/substitutions/separableconv_decomposition.py +0 -0
  231. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/keras/graph_substitutions/substitutions/shift_negative_activation.py +0 -0
  232. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/keras/graph_substitutions/substitutions/softmax_shift.py +0 -0
  233. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/keras/graph_substitutions/substitutions/virtual_activation_weights_composition.py +0 -0
  234. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/keras/graph_substitutions/substitutions/weights_activation_split.py +0 -0
  235. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/keras/hessian/__init__.py +0 -0
  236. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/keras/hessian/activation_hessian_scores_calculator_keras.py +0 -0
  237. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/keras/hessian/hessian_scores_calculator_keras.py +0 -0
  238. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/keras/hessian/weights_hessian_scores_calculator_keras.py +0 -0
  239. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/keras/keras_implementation.py +0 -0
  240. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/keras/keras_model_validation.py +0 -0
  241. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/keras/keras_node_prior_info.py +0 -0
  242. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/keras/mixed_precision/__init__.py +0 -0
  243. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/keras/mixed_precision/configurable_activation_quantizer.py +0 -0
  244. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/keras/mixed_precision/configurable_weights_quantizer.py +0 -0
  245. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/keras/pruning/__init__.py +0 -0
  246. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/keras/pruning/pruning_keras_implementation.py +0 -0
  247. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/keras/quantizer/__init__.py +0 -0
  248. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/keras/quantizer/base_quantizer.py +0 -0
  249. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/keras/quantizer/fake_quant_builder.py +0 -0
  250. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/keras/quantizer/lut_fake_quant.py +0 -0
  251. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/keras/reader/__init__.py +0 -0
  252. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/keras/reader/common.py +0 -0
  253. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/keras/reader/connectivity_handler.py +0 -0
  254. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/keras/reader/nested_model/__init__.py +0 -0
  255. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/keras/reader/nested_model/edges_merger.py +0 -0
  256. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/keras/reader/nested_model/nested_model_handler.py +0 -0
  257. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/keras/reader/nested_model/nodes_merger.py +0 -0
  258. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/keras/reader/nested_model/outputs_merger.py +0 -0
  259. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/keras/reader/node_builder.py +0 -0
  260. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/keras/reader/reader.py +0 -0
  261. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/keras/statistics_correction/__init__.py +0 -0
  262. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/keras/statistics_correction/apply_second_moment_correction.py +0 -0
  263. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/keras/tf_tensor_numpy.py +0 -0
  264. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/keras/visualization/__init__.py +0 -0
  265. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/pytorch/__init__.py +0 -0
  266. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/pytorch/back2framework/__init__.py +0 -0
  267. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/pytorch/back2framework/factory_model_builder.py +0 -0
  268. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/pytorch/back2framework/float_model_builder.py +0 -0
  269. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/pytorch/back2framework/instance_builder.py +0 -0
  270. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/pytorch/back2framework/mixed_precision_model_builder.py +0 -0
  271. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/pytorch/back2framework/pytorch_model_builder.py +0 -0
  272. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/pytorch/back2framework/quantization_wrapper/__init__.py +0 -0
  273. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/pytorch/back2framework/quantization_wrapper/quantized_layer_wrapper.py +0 -0
  274. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/pytorch/back2framework/quantization_wrapper/wrapper_quantize_config.py +0 -0
  275. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/pytorch/back2framework/quantized_model_builder.py +0 -0
  276. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/pytorch/constants.py +0 -0
  277. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/pytorch/default_framework_info.py +0 -0
  278. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/pytorch/graph_substitutions/__init__.py +0 -0
  279. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/pytorch/graph_substitutions/substitutions/__init__.py +0 -0
  280. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/pytorch/graph_substitutions/substitutions/batchnorm_folding.py +0 -0
  281. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/pytorch/graph_substitutions/substitutions/batchnorm_reconstruction.py +0 -0
  282. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/pytorch/graph_substitutions/substitutions/batchnorm_refusing.py +0 -0
  283. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/pytorch/graph_substitutions/substitutions/concat_threshold_update.py +0 -0
  284. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/pytorch/graph_substitutions/substitutions/const_holder_conv.py +0 -0
  285. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/pytorch/graph_substitutions/substitutions/functional_batch_norm.py +0 -0
  286. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/pytorch/graph_substitutions/substitutions/functional_layer_norm.py +0 -0
  287. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/pytorch/graph_substitutions/substitutions/linear_collapsing.py +0 -0
  288. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/pytorch/graph_substitutions/substitutions/multi_head_attention_decomposition.py +0 -0
  289. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/pytorch/graph_substitutions/substitutions/relu_bound_to_power_of_2.py +0 -0
  290. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/pytorch/graph_substitutions/substitutions/remove_identity.py +0 -0
  291. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/pytorch/graph_substitutions/substitutions/reshape_with_static_shapes.py +0 -0
  292. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/pytorch/graph_substitutions/substitutions/residual_collapsing.py +0 -0
  293. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/pytorch/graph_substitutions/substitutions/scale_equalization.py +0 -0
  294. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/pytorch/graph_substitutions/substitutions/shift_negative_activation.py +0 -0
  295. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/pytorch/graph_substitutions/substitutions/softmax_shift.py +0 -0
  296. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/pytorch/graph_substitutions/substitutions/transform_function_call_method.py +0 -0
  297. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/pytorch/graph_substitutions/substitutions/virtual_activation_weights_composition.py +0 -0
  298. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/pytorch/graph_substitutions/substitutions/weights_activation_split.py +0 -0
  299. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/pytorch/hessian/__init__.py +0 -0
  300. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/pytorch/hessian/activation_hessian_scores_calculator_pytorch.py +0 -0
  301. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/pytorch/hessian/hessian_scores_calculator_pytorch.py +0 -0
  302. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/pytorch/hessian/weights_hessian_scores_calculator_pytorch.py +0 -0
  303. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/pytorch/mixed_precision/__init__.py +0 -0
  304. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/pytorch/mixed_precision/configurable_activation_quantizer.py +0 -0
  305. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/pytorch/mixed_precision/configurable_weights_quantizer.py +0 -0
  306. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/pytorch/pruning/__init__.py +0 -0
  307. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/pytorch/pruning/pruning_pytorch_implementation.py +0 -0
  308. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/pytorch/pytorch_device_config.py +0 -0
  309. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/pytorch/pytorch_implementation.py +0 -0
  310. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/pytorch/pytorch_node_prior_info.py +0 -0
  311. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/pytorch/quantizer/__init__.py +0 -0
  312. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/pytorch/quantizer/fake_quant_builder.py +0 -0
  313. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/pytorch/quantizer/lut_fake_quant.py +0 -0
  314. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/pytorch/reader/__init__.py +0 -0
  315. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/pytorch/reader/graph_builders.py +0 -0
  316. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/pytorch/reader/node_holders.py +0 -0
  317. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/pytorch/reader/reader.py +0 -0
  318. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/pytorch/statistics_correction/__init__.py +0 -0
  319. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/pytorch/statistics_correction/apply_second_moment_correction.py +0 -0
  320. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/pytorch/utils.py +0 -0
  321. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/core/quantization_prep_runner.py +0 -0
  322. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/data_generation/common/__init__.py +0 -0
  323. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/data_generation/common/constants.py +0 -0
  324. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/data_generation/common/data_generation.py +0 -0
  325. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/data_generation/common/data_generation_config.py +0 -0
  326. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/data_generation/common/enums.py +0 -0
  327. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/data_generation/common/image_pipeline.py +0 -0
  328. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/data_generation/common/model_info_exctractors.py +0 -0
  329. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/data_generation/common/optimization_utils.py +0 -0
  330. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/data_generation/keras/__init__.py +0 -0
  331. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/data_generation/keras/constants.py +0 -0
  332. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/data_generation/keras/image_operations.py +0 -0
  333. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/data_generation/keras/image_pipeline.py +0 -0
  334. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/data_generation/keras/model_info_exctractors.py +0 -0
  335. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/data_generation/keras/optimization_functions/__init__.py +0 -0
  336. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/data_generation/keras/optimization_functions/batchnorm_alignment_functions.py +0 -0
  337. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/data_generation/keras/optimization_functions/bn_layer_weighting_functions.py +0 -0
  338. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/data_generation/keras/optimization_functions/image_initilization.py +0 -0
  339. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/data_generation/keras/optimization_functions/lr_scheduler.py +0 -0
  340. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/data_generation/keras/optimization_functions/output_loss_functions.py +0 -0
  341. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/data_generation/keras/optimization_functions/scheduler_step_functions.py +0 -0
  342. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/data_generation/keras/optimization_utils.py +0 -0
  343. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/data_generation/pytorch/__init__.py +0 -0
  344. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/data_generation/pytorch/constants.py +0 -0
  345. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/data_generation/pytorch/image_operations.py +0 -0
  346. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/data_generation/pytorch/image_pipeline.py +0 -0
  347. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/data_generation/pytorch/model_info_exctractors.py +0 -0
  348. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/data_generation/pytorch/optimization_functions/__init__.py +0 -0
  349. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/data_generation/pytorch/optimization_functions/batchnorm_alignment_functions.py +0 -0
  350. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/data_generation/pytorch/optimization_functions/bn_layer_weighting_functions.py +0 -0
  351. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/data_generation/pytorch/optimization_functions/image_initilization.py +0 -0
  352. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/data_generation/pytorch/optimization_functions/lr_scheduler.py +0 -0
  353. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/data_generation/pytorch/optimization_functions/output_loss_functions.py +0 -0
  354. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/data_generation/pytorch/optimization_functions/scheduler_step_functions.py +0 -0
  355. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/data_generation/pytorch/optimization_utils.py +0 -0
  356. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/defaultdict.py +0 -0
  357. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/exporter/__init__.py +0 -0
  358. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/exporter/model_exporter/__init__.py +0 -0
  359. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/exporter/model_exporter/fw_agonstic/__init__.py +0 -0
  360. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/exporter/model_exporter/fw_agonstic/exporter.py +0 -0
  361. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/exporter/model_exporter/fw_agonstic/quantization_format.py +0 -0
  362. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/exporter/model_exporter/keras/__init__.py +0 -0
  363. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/exporter/model_exporter/keras/base_keras_exporter.py +0 -0
  364. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/exporter/model_exporter/keras/export_serialization_format.py +0 -0
  365. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/exporter/model_exporter/keras/fakely_quant_keras_exporter.py +0 -0
  366. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/exporter/model_exporter/keras/fakely_quant_tflite_exporter.py +0 -0
  367. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/exporter/model_exporter/keras/int8_tflite_exporter.py +0 -0
  368. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/exporter/model_exporter/keras/mctq_keras_exporter.py +0 -0
  369. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/exporter/model_exporter/pytorch/__init__.py +0 -0
  370. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/exporter/model_exporter/pytorch/base_pytorch_exporter.py +0 -0
  371. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/exporter/model_exporter/pytorch/export_serialization_format.py +0 -0
  372. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/exporter/model_exporter/pytorch/fakely_quant_torchscript_pytorch_exporter.py +0 -0
  373. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/exporter/model_wrapper/__init__.py +0 -0
  374. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/exporter/model_wrapper/fw_agnostic/__init__.py +0 -0
  375. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/exporter/model_wrapper/fw_agnostic/get_inferable_quantizers.py +0 -0
  376. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/exporter/model_wrapper/keras/__init__.py +0 -0
  377. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/exporter/model_wrapper/keras/builder/__init__.py +0 -0
  378. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/exporter/model_wrapper/keras/builder/node_to_quantizer.py +0 -0
  379. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/exporter/model_wrapper/pytorch/__init__.py +0 -0
  380. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/exporter/model_wrapper/pytorch/builder/__init__.py +0 -0
  381. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/exporter/model_wrapper/pytorch/builder/node_to_quantizer.py +0 -0
  382. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/gptq/__init__.py +0 -0
  383. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/gptq/common/__init__.py +0 -0
  384. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/gptq/common/gptq_config.py +0 -0
  385. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/gptq/common/gptq_constants.py +0 -0
  386. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/gptq/common/gptq_framework_implementation.py +0 -0
  387. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/gptq/common/gptq_graph.py +0 -0
  388. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/gptq/common/gptq_training.py +0 -0
  389. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/gptq/keras/__init__.py +0 -0
  390. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/gptq/keras/gptq_keras_implementation.py +0 -0
  391. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/gptq/keras/gptq_loss.py +0 -0
  392. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/gptq/keras/gptq_training.py +0 -0
  393. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/gptq/keras/graph_info.py +0 -0
  394. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/gptq/keras/quantizer/__init__.py +0 -0
  395. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/gptq/keras/quantizer/quant_utils.py +0 -0
  396. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/gptq/keras/quantizer/quantization_builder.py +0 -0
  397. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/gptq/keras/quantizer/regularization_factory.py +0 -0
  398. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/gptq/keras/quantizer/soft_rounding/__init__.py +0 -0
  399. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/gptq/keras/quantizer/soft_rounding/soft_quantizer_reg.py +0 -0
  400. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/gptq/keras/quantizer/soft_rounding/symmetric_soft_quantizer.py +0 -0
  401. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/gptq/keras/quantizer/soft_rounding/uniform_soft_quantizer.py +0 -0
  402. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/gptq/keras/quantizer/ste_rounding/__init__.py +0 -0
  403. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/gptq/keras/quantizer/ste_rounding/symmetric_ste.py +0 -0
  404. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/gptq/pytorch/__init__.py +0 -0
  405. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/gptq/pytorch/gptq_loss.py +0 -0
  406. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/gptq/pytorch/gptq_pytorch_implementation.py +0 -0
  407. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/gptq/pytorch/gptq_training.py +0 -0
  408. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/gptq/pytorch/graph_info.py +0 -0
  409. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/gptq/pytorch/quantizer/__init__.py +0 -0
  410. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/gptq/pytorch/quantizer/quant_utils.py +0 -0
  411. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/gptq/pytorch/quantizer/quantization_builder.py +0 -0
  412. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/gptq/pytorch/quantizer/regularization_factory.py +0 -0
  413. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/gptq/pytorch/quantizer/soft_rounding/__init__.py +0 -0
  414. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/gptq/pytorch/quantizer/soft_rounding/soft_quantizer_reg.py +0 -0
  415. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/gptq/pytorch/quantizer/soft_rounding/symmetric_soft_quantizer.py +0 -0
  416. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/gptq/pytorch/quantizer/soft_rounding/uniform_soft_quantizer.py +0 -0
  417. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/gptq/pytorch/quantizer/ste_rounding/__init__.py +0 -0
  418. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/gptq/pytorch/quantizer/ste_rounding/symmetric_ste.py +0 -0
  419. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/gptq/runner.py +0 -0
  420. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/logger.py +0 -0
  421. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/metadata.py +0 -0
  422. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/pruning/__init__.py +0 -0
  423. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/pruning/keras/__init__.py +0 -0
  424. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/pruning/pytorch/__init__.py +0 -0
  425. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/ptq/__init__.py +0 -0
  426. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/ptq/keras/__init__.py +0 -0
  427. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/ptq/pytorch/__init__.py +0 -0
  428. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/ptq/runner.py +0 -0
  429. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/qat/__init__.py +0 -0
  430. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/qat/common/__init__.py +0 -0
  431. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/qat/common/qat_config.py +0 -0
  432. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/qat/keras/__init__.py +0 -0
  433. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/qat/keras/quantizer/__init__.py +0 -0
  434. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/qat/keras/quantizer/lsq/__init__.py +0 -0
  435. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/qat/keras/quantizer/lsq/symmetric_lsq.py +0 -0
  436. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/qat/keras/quantizer/lsq/uniform_lsq.py +0 -0
  437. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/qat/keras/quantizer/quant_utils.py +0 -0
  438. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/qat/keras/quantizer/quantization_builder.py +0 -0
  439. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/qat/keras/quantizer/ste_rounding/__init__.py +0 -0
  440. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/qat/keras/quantizer/ste_rounding/symmetric_ste.py +0 -0
  441. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/qat/keras/quantizer/ste_rounding/uniform_ste.py +0 -0
  442. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/qat/pytorch/__init__.py +0 -0
  443. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/qat/pytorch/quantizer/__init__.py +0 -0
  444. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/qat/pytorch/quantizer/lsq/__init__.py +0 -0
  445. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/qat/pytorch/quantizer/lsq/symmetric_lsq.py +0 -0
  446. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/qat/pytorch/quantizer/lsq/uniform_lsq.py +0 -0
  447. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/qat/pytorch/quantizer/quantization_builder.py +0 -0
  448. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/qat/pytorch/quantizer/quantizer_utils.py +0 -0
  449. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/qat/pytorch/quantizer/ste_rounding/__init__.py +0 -0
  450. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/qat/pytorch/quantizer/ste_rounding/symmetric_ste.py +0 -0
  451. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/qat/pytorch/quantizer/ste_rounding/uniform_ste.py +0 -0
  452. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/target_platform_capabilities/__init__.py +0 -0
  453. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/target_platform_capabilities/constants.py +0 -0
  454. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/target_platform_capabilities/immutable.py +0 -0
  455. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/target_platform_capabilities/target_platform/__init__.py +0 -0
  456. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/target_platform_capabilities/target_platform/current_tp_model.py +0 -0
  457. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/target_platform_capabilities/target_platform/fusing.py +0 -0
  458. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/target_platform_capabilities/target_platform/op_quantization_config.py +0 -0
  459. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/target_platform_capabilities/target_platform/operators.py +0 -0
  460. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/target_platform_capabilities/target_platform/target_platform_model.py +0 -0
  461. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/target_platform_capabilities/target_platform/target_platform_model_component.py +0 -0
  462. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/target_platform_capabilities/target_platform/targetplatform2framework/__init__.py +0 -0
  463. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/target_platform_capabilities/target_platform/targetplatform2framework/attribute_filter.py +0 -0
  464. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/target_platform_capabilities/target_platform/targetplatform2framework/current_tpc.py +0 -0
  465. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/target_platform_capabilities/target_platform/targetplatform2framework/layer_filter_params.py +0 -0
  466. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/target_platform_capabilities/target_platform/targetplatform2framework/operations_to_layers.py +0 -0
  467. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/target_platform_capabilities/target_platform/targetplatform2framework/target_platform_capabilities.py +0 -0
  468. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/target_platform_capabilities/target_platform/targetplatform2framework/target_platform_capabilities_component.py +0 -0
  469. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/target_platform_capabilities/tpc_models/__init__.py +0 -0
  470. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/target_platform_capabilities/tpc_models/get_target_platform_capabilities.py +0 -0
  471. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/__init__.py +0 -0
  472. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v1/__init__.py +0 -0
  473. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v1/tp_model.py +0 -0
  474. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v1/tpc_pytorch.py +0 -0
  475. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v1_lut/__init__.py +0 -0
  476. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v1_lut/tp_model.py +0 -0
  477. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v1_lut/tpc_pytorch.py +0 -0
  478. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v1_pot/__init__.py +0 -0
  479. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v1_pot/tp_model.py +0 -0
  480. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v1_pot/tpc_pytorch.py +0 -0
  481. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v2/__init__.py +0 -0
  482. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v2/tp_model.py +0 -0
  483. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v2/tpc_pytorch.py +0 -0
  484. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v2_lut/__init__.py +0 -0
  485. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v2_lut/tp_model.py +0 -0
  486. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v2_lut/tpc_pytorch.py +0 -0
  487. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v3/__init__.py +0 -0
  488. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v3/tp_model.py +0 -0
  489. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v3/tpc_pytorch.py +0 -0
  490. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v3_lut/__init__.py +0 -0
  491. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v3_lut/tp_model.py +0 -0
  492. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v3_lut/tpc_pytorch.py +0 -0
  493. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v4/__init__.py +0 -0
  494. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/target_platform_capabilities/tpc_models/qnnpack_tpc/__init__.py +0 -0
  495. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/target_platform_capabilities/tpc_models/qnnpack_tpc/v1/__init__.py +0 -0
  496. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/target_platform_capabilities/tpc_models/qnnpack_tpc/v1/tp_model.py +0 -0
  497. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/target_platform_capabilities/tpc_models/qnnpack_tpc/v1/tpc_keras.py +0 -0
  498. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/target_platform_capabilities/tpc_models/qnnpack_tpc/v1/tpc_pytorch.py +0 -0
  499. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/target_platform_capabilities/tpc_models/tflite_tpc/__init__.py +0 -0
  500. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/target_platform_capabilities/tpc_models/tflite_tpc/v1/__init__.py +0 -0
  501. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/target_platform_capabilities/tpc_models/tflite_tpc/v1/tp_model.py +0 -0
  502. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/target_platform_capabilities/tpc_models/tflite_tpc/v1/tpc_keras.py +0 -0
  503. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/target_platform_capabilities/tpc_models/tflite_tpc/v1/tpc_pytorch.py +0 -0
  504. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/trainable_infrastructure/__init__.py +0 -0
  505. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/trainable_infrastructure/common/__init__.py +0 -0
  506. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/trainable_infrastructure/common/base_trainable_quantizer.py +0 -0
  507. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/trainable_infrastructure/common/constants.py +0 -0
  508. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/trainable_infrastructure/common/get_quantizer_config.py +0 -0
  509. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/trainable_infrastructure/common/get_quantizers.py +0 -0
  510. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/trainable_infrastructure/common/quant_utils.py +0 -0
  511. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/trainable_infrastructure/common/trainable_quantizer_config.py +0 -0
  512. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/trainable_infrastructure/keras/__init__.py +0 -0
  513. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/trainable_infrastructure/keras/config_serialization.py +0 -0
  514. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/trainable_infrastructure/keras/quantizer_utils.py +0 -0
  515. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/trainable_infrastructure/pytorch/__init__.py +0 -0
  516. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/xquant/__init__.py +0 -0
  517. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/xquant/common/__init__.py +0 -0
  518. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/xquant/common/constants.py +0 -0
  519. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/xquant/common/core_report_generator.py +0 -0
  520. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/xquant/common/dataset_utils.py +0 -0
  521. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/xquant/common/framework_report_utils.py +0 -0
  522. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/xquant/common/model_analyzer.py +0 -0
  523. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/xquant/common/similarity_calculator.py +0 -0
  524. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/xquant/common/similarity_functions.py +0 -0
  525. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/xquant/common/tensorboard_utils.py +0 -0
  526. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/xquant/common/xquant_config.py +0 -0
  527. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/xquant/keras/__init__.py +0 -0
  528. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/xquant/keras/dataset_utils.py +0 -0
  529. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/xquant/keras/keras_report_utils.py +0 -0
  530. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/xquant/keras/model_analyzer.py +0 -0
  531. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/xquant/keras/similarity_functions.py +0 -0
  532. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/xquant/keras/tensorboard_utils.py +0 -0
  533. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/xquant/pytorch/__init__.py +0 -0
  534. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/xquant/pytorch/dataset_utils.py +0 -0
  535. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/xquant/pytorch/model_analyzer.py +0 -0
  536. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/xquant/pytorch/pytorch_report_utils.py +0 -0
  537. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/xquant/pytorch/similarity_functions.py +0 -0
  538. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/model_compression_toolkit/xquant/pytorch/tensorboard_utils.py +0 -0
  539. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/setup.cfg +0 -0
  540. {mct-nightly-2.1.0.20240811.503 → mct-nightly-2.1.0.20240813.442}/setup.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: mct-nightly
3
- Version: 2.1.0.20240811.503
3
+ Version: 2.1.0.20240813.442
4
4
  Summary: A Model Compression Toolkit for neural networks
5
5
  Home-page: UNKNOWN
6
6
  License: UNKNOWN
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: mct-nightly
3
- Version: 2.1.0.20240811.503
3
+ Version: 2.1.0.20240813.442
4
4
  Summary: A Model Compression Toolkit for neural networks
5
5
  Home-page: UNKNOWN
6
6
  License: UNKNOWN
@@ -12,6 +12,7 @@ model_compression_toolkit/constants.py
12
12
  model_compression_toolkit/defaultdict.py
13
13
  model_compression_toolkit/logger.py
14
14
  model_compression_toolkit/metadata.py
15
+ model_compression_toolkit/verify_packages.py
15
16
  model_compression_toolkit/core/__init__.py
16
17
  model_compression_toolkit/core/analyzer.py
17
18
  model_compression_toolkit/core/graph_prep_runner.py
@@ -107,6 +108,7 @@ model_compression_toolkit/core/common/pruning/mask/__init__.py
107
108
  model_compression_toolkit/core/common/pruning/mask/per_channel_mask.py
108
109
  model_compression_toolkit/core/common/pruning/mask/per_simd_group_mask.py
109
110
  model_compression_toolkit/core/common/quantization/__init__.py
111
+ model_compression_toolkit/core/common/quantization/bit_width_config.py
110
112
  model_compression_toolkit/core/common/quantization/candidate_node_quantization_config.py
111
113
  model_compression_toolkit/core/common/quantization/core_config.py
112
114
  model_compression_toolkit/core/common/quantization/debug_config.py
@@ -27,4 +27,4 @@ from model_compression_toolkit import data_generation
27
27
  from model_compression_toolkit import pruning
28
28
  from model_compression_toolkit.trainable_infrastructure.keras.load_model import keras_load_quantized_model
29
29
 
30
- __version__ = "2.1.0.20240811.000503"
30
+ __version__ = "2.1.0.20240813.000442"
@@ -13,17 +13,10 @@
13
13
  # limitations under the License.
14
14
  # ==============================================================================
15
15
 
16
- import importlib
17
16
 
18
17
  # Supported frameworks in MCT:
19
18
  TENSORFLOW = 'tensorflow'
20
19
  PYTORCH = 'pytorch'
21
- FOUND_TF = importlib.util.find_spec(TENSORFLOW) is not None
22
- FOUND_TORCH = importlib.util.find_spec("torch") is not None
23
- FOUND_TORCHVISION = importlib.util.find_spec("torchvision") is not None
24
- FOUND_ONNX = importlib.util.find_spec("onnx") is not None
25
- FOUND_ONNXRUNTIME = importlib.util.find_spec("onnxruntime") is not None
26
- FOUND_SONY_CUSTOM_LAYERS = importlib.util.find_spec('sony_custom_layers') is not None
27
20
 
28
21
  # Metadata fields
29
22
  MCT_VERSION = 'mct_version'
@@ -19,6 +19,7 @@ from model_compression_toolkit.core.common.quantization.debug_config import Debu
19
19
  from model_compression_toolkit.core.common.quantization import quantization_config
20
20
  from model_compression_toolkit.core.common.mixed_precision import mixed_precision_quantization_config
21
21
  from model_compression_toolkit.core.common.quantization.quantization_config import QuantizationConfig, QuantizationErrorMethod, DEFAULTCONFIG
22
+ from model_compression_toolkit.core.common.quantization.bit_width_config import BitWidthConfig
22
23
  from model_compression_toolkit.core.common.quantization.core_config import CoreConfig
23
24
  from model_compression_toolkit.core.common.mixed_precision.resource_utilization_tools.resource_utilization import ResourceUtilization
24
25
  from model_compression_toolkit.core.common.mixed_precision.mixed_precision_quantization_config import MixedPrecisionQuantizationConfig
@@ -1,6 +1,6 @@
1
1
  from typing import Dict, Any, Tuple, Type, List, Union
2
2
 
3
- from model_compression_toolkit.constants import FOUND_TF
3
+ from model_compression_toolkit.verify_packages import FOUND_TF
4
4
  from model_compression_toolkit.core.common.graph.base_node import BaseNode
5
5
  import numpy as np
6
6
 
@@ -67,6 +67,7 @@ def compute_resource_utilization_data(in_model: Any,
67
67
  fw_info,
68
68
  fw_impl,
69
69
  tpc,
70
+ bit_width_config=core_config.bit_width_config,
70
71
  mixed_precision_enable=mixed_precision_enable)
71
72
 
72
73
  # Compute parameters sum
@@ -227,6 +228,7 @@ def requires_mixed_precision(in_model: Any,
227
228
  fw_info,
228
229
  fw_impl,
229
230
  tpc,
231
+ bit_width_config=core_config.bit_width_config,
230
232
  mixed_precision_enable=False)
231
233
  # Compute max weights memory in bytes
232
234
  weights_memory_by_layer_bytes, _ = compute_nodes_weights_params(transformed_graph, fw_info)
@@ -0,0 +1,91 @@
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
+ from typing import List, Union, Dict
16
+
17
+ from model_compression_toolkit.core.common import Graph
18
+ from model_compression_toolkit.core.common.matchers.node_matcher import BaseNodeMatcher
19
+ from model_compression_toolkit.logger import Logger
20
+
21
+
22
+ class ManualBitWidthSelection:
23
+ """
24
+ Class to encapsulate the manual bit width selection configuration for a specific filter.
25
+
26
+ Attributes:
27
+ filter (BaseNodeMatcher): The filter used to select nodes for bit width manipulation.
28
+ bit_width (int): The bit width to be applied to the selected nodes.
29
+ """
30
+ def __init__(self,
31
+ filter: BaseNodeMatcher,
32
+ bit_width: int):
33
+ self.filter = filter
34
+ self.bit_width = bit_width
35
+
36
+
37
+ class BitWidthConfig:
38
+ """
39
+ Class to manage manual bit-width configurations.
40
+
41
+ Attributes:
42
+ manual_activation_bit_width_selection_list (List[ManualBitWidthSelection]): A list of ManualBitWidthSelection objects defining manual bit-width configurations.
43
+ """
44
+ def __init__(self,
45
+ manual_activation_bit_width_selection_list: List[ManualBitWidthSelection] = None):
46
+ self.manual_activation_bit_width_selection_list = [] if manual_activation_bit_width_selection_list is None else manual_activation_bit_width_selection_list
47
+
48
+ def __repr__(self):
49
+ # Used for debugging, thus no cover.
50
+ return str(self.__dict__) # pragma: no cover
51
+
52
+ def set_manual_activation_bit_width(self,
53
+ filters: Union[List[BaseNodeMatcher], BaseNodeMatcher],
54
+ bit_widths: Union[List[int], int]):
55
+ """
56
+ Add a manual bit-width selection to the configuration.
57
+
58
+ Args:
59
+ filter (Union[List[BaseNodeMatcher], BaseNodeMatcher]): The filters used to select nodes for bit-width manipulation.
60
+ bit_width (Union[List[int], int]): The bit widths to be applied to the selected nodes.
61
+ If a single value is given it will be applied to all the filters
62
+ """
63
+ filters = [filters] if not isinstance(filters, list) else filters
64
+ bit_widths = [bit_widths] if not isinstance(bit_widths, list) else bit_widths
65
+ if len(bit_widths) > 1 and len(bit_widths) != len(filters):
66
+ Logger.critical(f"Configuration Error: The number of provided bit_width values {len(bit_widths)} "
67
+ f"must match the number of filters {len(filters)}, or a single bit_width value "
68
+ f"should be provided for all filters.")
69
+ elif len(bit_widths) == 1 and len(filters) > 1:
70
+ bit_widths = [bit_widths[0] for f in filters]
71
+ for bit_width, filter in zip (bit_widths, filters):
72
+ self.manual_activation_bit_width_selection_list += [ManualBitWidthSelection(filter, bit_width)]
73
+
74
+ def get_nodes_to_manipulate_bit_widths(self, graph: Graph) -> Dict:
75
+ """
76
+ Retrieve nodes from the graph that need their bit-widths changed according to the manual bit-width selections.
77
+
78
+ Args:
79
+ graph (Graph): The graph containing the nodes to be filtered and manipulated.
80
+
81
+ Returns:
82
+ Dict: A dictionary mapping nodes to their new bit-widths.
83
+ """
84
+ nodes_to_change_bit_width = {}
85
+ for manual_bit_width_selection in self.manual_activation_bit_width_selection_list:
86
+ filtered_nodes = graph.filter(manual_bit_width_selection.filter)
87
+ if len(filtered_nodes) == 0:
88
+ Logger.critical(f"Node Filtering Error: No nodes found in the graph for filter {manual_bit_width_selection.filter.__dict__} "
89
+ f"to change their bit width to {manual_bit_width_selection.bit_width}.")
90
+ nodes_to_change_bit_width.update({n: manual_bit_width_selection.bit_width for n in filtered_nodes})
91
+ return nodes_to_change_bit_width
@@ -12,6 +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.core.common.quantization.bit_width_config import BitWidthConfig
15
16
  from model_compression_toolkit.core.common.quantization.quantization_config import QuantizationConfig
16
17
  from model_compression_toolkit.core.common.quantization.debug_config import DebugConfig
17
18
  from model_compression_toolkit.core.common.mixed_precision.mixed_precision_quantization_config import MixedPrecisionQuantizationConfig
@@ -22,9 +23,10 @@ class CoreConfig:
22
23
  A class to hold the configurations classes of the MCT-core.
23
24
  """
24
25
  def __init__(self,
25
- quantization_config: QuantizationConfig = QuantizationConfig(),
26
+ quantization_config: QuantizationConfig = None,
26
27
  mixed_precision_config: MixedPrecisionQuantizationConfig = None,
27
- debug_config: DebugConfig = DebugConfig()
28
+ bit_width_config: BitWidthConfig = None,
29
+ debug_config: DebugConfig = None
28
30
  ):
29
31
  """
30
32
 
@@ -32,10 +34,12 @@ class CoreConfig:
32
34
  quantization_config (QuantizationConfig): Config for quantization.
33
35
  mixed_precision_config (MixedPrecisionQuantizationConfig): Config for mixed precision quantization.
34
36
  If None, a default MixedPrecisionQuantizationConfig is used.
37
+ bit_width_config (BitWidthConfig): Config for manual bit-width selection.
35
38
  debug_config (DebugConfig): Config for debugging and editing the network quantization process.
36
39
  """
37
- self.quantization_config = quantization_config
38
- self.debug_config = debug_config
40
+ self.quantization_config = QuantizationConfig() if quantization_config is None else quantization_config
41
+ self.bit_width_config = BitWidthConfig() if bit_width_config is None else bit_width_config
42
+ self.debug_config = DebugConfig() if debug_config is None else debug_config
39
43
 
40
44
  if mixed_precision_config is None:
41
45
  self.mixed_precision_config = MixedPrecisionQuantizationConfig()
@@ -56,7 +56,7 @@ class QuantizationConfig:
56
56
  weights_second_moment_correction: bool = False,
57
57
  input_scaling: bool = False,
58
58
  softmax_shift: bool = False,
59
- shift_negative_activation_correction: bool = False,
59
+ shift_negative_activation_correction: bool = True,
60
60
  activation_channel_equalization: bool = False,
61
61
  z_threshold: float = math.inf,
62
62
  min_threshold: float = MIN_THRESHOLD,
@@ -15,9 +15,11 @@
15
15
 
16
16
 
17
17
  import copy
18
- from typing import List, Tuple
18
+ from typing import List, Tuple, Optional
19
19
 
20
+ from mct_quantizers.common.constants import ACTIVATION_N_BITS
20
21
  from model_compression_toolkit.core.common import BaseNode
22
+ from model_compression_toolkit.core.common.quantization.bit_width_config import BitWidthConfig
21
23
  from model_compression_toolkit.logger import Logger
22
24
  from model_compression_toolkit.core.common.framework_info import FrameworkInfo
23
25
  from model_compression_toolkit.core.common.graph.base_graph import Graph
@@ -37,19 +39,21 @@ from model_compression_toolkit.target_platform_capabilities.target_platform.op_q
37
39
 
38
40
  def set_quantization_configuration_to_graph(graph: Graph,
39
41
  quant_config: QuantizationConfig,
42
+ bit_width_config: BitWidthConfig = None,
40
43
  mixed_precision_enable: bool = False,
41
44
  running_gptq: bool = False) -> Graph:
42
45
  """
43
46
  Add quantization configuration for each graph node.
44
47
 
45
48
  Args:
46
- graph: Graph for which to add quantization info to each node.
47
- quant_config: Quantization configuration containing parameters for how the graph should be quantized.
48
- mixed_precision_enable: is mixed precision enabled.
49
- running_gptq: Whether or not a GPTQ optimization is planned to run after the PTQ process.
49
+ graph (Graph): Graph for which to add quantization info to each node.
50
+ quant_config (QuantizationConfig): Quantization configuration containing parameters for how the graph should be quantized.
51
+ bit_width_config (BitWidthConfig): Configuration for manual bit width selection. Defaults to None.
52
+ mixed_precision_enable (bool): Whether mixed precision is enabled. Defaults to False.
53
+ running_gptq (bool): Whether or not a GPTQ optimization is planned to run after the PTQ process. Defaults to False.
50
54
 
51
55
  Returns:
52
- The graph with quantization configurations attached to each node in it.
56
+ Graph: The graph with quantization configurations attached to each node in it.
53
57
  """
54
58
 
55
59
  if quant_config.weights_error_method == QuantizationErrorMethod.HMSE:
@@ -62,13 +66,16 @@ def set_quantization_configuration_to_graph(graph: Graph,
62
66
  Logger.warning("Using the HMSE error method for weights quantization parameters search. "
63
67
  "Note: This method may significantly increase runtime during the parameter search process.")
64
68
 
69
+ nodes_to_manipulate_bit_widths = {} if bit_width_config is None else bit_width_config.get_nodes_to_manipulate_bit_widths(graph)
70
+
65
71
  for n in graph.nodes:
66
72
  set_quantization_configs_to_node(node=n,
67
73
  graph=graph,
68
74
  quant_config=quant_config,
69
75
  fw_info=graph.fw_info,
70
76
  tpc=graph.tpc,
71
- mixed_precision_enable=mixed_precision_enable)
77
+ mixed_precision_enable=mixed_precision_enable,
78
+ manual_bit_width_override=nodes_to_manipulate_bit_widths.get(n))
72
79
  return graph
73
80
 
74
81
 
@@ -77,21 +84,32 @@ def set_quantization_configs_to_node(node: BaseNode,
77
84
  quant_config: QuantizationConfig,
78
85
  fw_info: FrameworkInfo,
79
86
  tpc: TargetPlatformCapabilities,
80
- mixed_precision_enable: bool = False):
87
+ mixed_precision_enable: bool = False,
88
+ manual_bit_width_override: Optional[int] = None):
81
89
  """
82
90
  Create and set quantization configurations to a node (for both weights and activation).
83
91
 
84
92
  Args:
85
- node: Node to set its quantization configurations.
86
- graph: Model's internal representation graph.
87
- quant_config: Quantization configuration to generate the node's configurations from.
88
- fw_info: Information needed for quantization about the specific framework.
89
- tpc: TargetPlatformCapabilities to get default OpQuantizationConfig.
90
- mixed_precision_enable: is mixed precision enabled.
93
+ node (BaseNode): Node to set its quantization configurations.
94
+ graph (Graph): Model's internal representation graph.
95
+ quant_config (QuantizationConfig): Quantization configuration to generate the node's configurations from.
96
+ fw_info (FrameworkInfo): Information needed for quantization about the specific framework.
97
+ tpc (TargetPlatformCapabilities): TargetPlatformCapabilities to get default OpQuantizationConfig.
98
+ mixed_precision_enable (bool): Whether mixed precision is enabled. Defaults to False.
99
+ manual_bit_width_override (Optional[int]): Specifies a custom bit-width to override the node's activation bit-width. Defaults to None.
91
100
  """
92
101
  node_qc_options = node.get_qco(tpc)
93
102
  base_config, node_qc_options_list = node.filter_node_qco_by_graph(tpc, graph.get_next_nodes(node), node_qc_options)
94
103
 
104
+ # If a manual_bit_width_override is given, filter node_qc_options_list to retain only the options with activation bits equal to manual_bit_width_override,
105
+ # and update base_config accordingly.
106
+ base_config, node_qc_options_list = filter_qc_options_with_manual_bit_width(
107
+ node=node,
108
+ node_qc_options_list=node_qc_options_list,
109
+ base_config=base_config,
110
+ manual_bit_width_override=manual_bit_width_override,
111
+ mixed_precision_enable=mixed_precision_enable)
112
+
95
113
  # Create QC candidates for weights and activation combined
96
114
  weight_channel_axis = fw_info.kernel_channels_mapping.get(node.type)
97
115
  node.candidates_quantization_cfg = _create_node_candidates_qc(quant_config,
@@ -199,16 +217,16 @@ def _create_node_candidates_qc(qc: QuantizationConfig,
199
217
  Create a list of candidates of weights and activation quantization configurations for a node.
200
218
 
201
219
  Args:
202
- qc: Quantization configuration the quantization process should follow.
203
- fw_info: Framework information (e.g., which layers should have their kernels' quantized).
204
- weight_channel_axis: (Output, Input) channel index of the node's kernel.
205
- node_qc_options_list: List of quantization configs of node.
206
- base_config: Base quantization config for node.
207
- node: A node to set quantization configuration candidates to.
208
- mixed_precision_enable: is mixed precision enabled
220
+ qc (QuantizationConfig): Quantization configuration the quantization process should follow.
221
+ fw_info (FrameworkInfo): Framework information (e.g., which layers should have their kernels quantized).
222
+ weight_channel_axis (Tuple[int, int]): (Output, Input) channel index of the node's kernel.
223
+ node_qc_options_list (List[OpQuantizationConfig]): List of quantization configs of node.
224
+ base_config (OpQuantizationConfig): Base quantization config for node.
225
+ node (BaseNode): A node to set quantization configuration candidates to.
226
+ mixed_precision_enable (bool): Whether mixed precision is enabled. Defaults to False.
209
227
 
210
228
  Returns:
211
- List of candidates of weights quantization configurations to set for a node.
229
+ List[CandidateNodeQuantizationConfig]: List of candidates of weights quantization configurations to set for a node.
212
230
  """
213
231
 
214
232
  candidates = []
@@ -231,3 +249,51 @@ def _create_node_candidates_qc(qc: QuantizationConfig,
231
249
  node_attrs_list))
232
250
 
233
251
  return candidates
252
+
253
+
254
+ def filter_qc_options_with_manual_bit_width(
255
+ node: BaseNode,
256
+ node_qc_options_list: List[OpQuantizationConfig],
257
+ base_config: OpQuantizationConfig,
258
+ manual_bit_width_override: Optional[int],
259
+ mixed_precision_enable: bool) -> Tuple[OpQuantizationConfig, List[OpQuantizationConfig]]:
260
+ """
261
+ Update the quantization configurations for a node, allowing manual bit-width overrides if specified.
262
+
263
+ Args:
264
+ node (BaseNode): A node to set quantization configuration candidates to.
265
+ node_qc_options_list (List[OpQuantizationConfig]): List of quantization configs for the node.
266
+ base_config (OpQuantizationConfig): Base quantization config for the node.
267
+ manual_bit_width_override (Optional[int]): Specifies a custom bit-width to override the node's activation bit-width.
268
+ mixed_precision_enable (bool): Whether mixed precision is enabled.
269
+
270
+ Returns:
271
+ Tuple[OpQuantizationConfig, List[OpQuantizationConfig]]: The updated base configuration and the filtered list of quantization configs.
272
+ """
273
+ if manual_bit_width_override is None:
274
+ return base_config, node_qc_options_list
275
+
276
+ # Filter node_qc_options_list to retain only the options with activation bits equal to manual_bit_width_override.
277
+ node_qc_options_list = [op_cfg for op_cfg in node_qc_options_list if
278
+ manual_bit_width_override == op_cfg.activation_n_bits]
279
+
280
+ if len(node_qc_options_list) == 0:
281
+ Logger.critical(f"Manually selected activation bit-width {manual_bit_width_override} is invalid for node {node}.")
282
+ else:
283
+ # Update the base_config to one of the values from the filtered node_qc_options_list.
284
+ # First, check if a configuration similar to the original base_config but with activation bits equal to manual_bit_width_override exists.
285
+ # If it does, use it as the base_config. If not, choose a different configuration from node_qc_options_list.
286
+ Logger.info(f"Setting node {node} bit-width to manually selected bit-width: {manual_bit_width_override} bits.")
287
+ updated_base_config = base_config.clone_and_edit({ACTIVATION_N_BITS, manual_bit_width_override})
288
+ if updated_base_config in node_qc_options_list:
289
+ # If a base_config with the specified manual_bit_width_override exists in the node_qc_options_list,
290
+ # point the base_config to this option.
291
+ base_config = node_qc_options_list[node_qc_options_list.index(updated_base_config)]
292
+ else:
293
+ # Choose a different configuration from node_qc_options_list. If multiple options exist, issue a warning.
294
+ base_config = node_qc_options_list[0]
295
+ if len(node_qc_options_list) > 0 and not mixed_precision_enable:
296
+ Logger.info(
297
+ f"Request received to select {manual_bit_width_override} activation bits. However, the base configuration for layer type {node.type} is missing in the node_qc_options_list."
298
+ f" Overriding base_config with an option that uses {manual_bit_width_override} bit activations.") # pragma: no cover
299
+ return base_config, node_qc_options_list
@@ -20,6 +20,7 @@ from model_compression_toolkit.core.common import FrameworkInfo
20
20
  from model_compression_toolkit.core.common.framework_implementation import FrameworkImplementation
21
21
  from model_compression_toolkit.core.common.fusion.layer_fusing import fusion
22
22
  from model_compression_toolkit.core.common.graph.base_graph import Graph
23
+ from model_compression_toolkit.core.common.quantization.bit_width_config import BitWidthConfig
23
24
  from model_compression_toolkit.core.common.quantization.filter_nodes_candidates import filter_nodes_candidates
24
25
  from model_compression_toolkit.core.common.quantization.quantization_config import DEFAULTCONFIG
25
26
  from model_compression_toolkit.core.common.quantization.quantization_config import QuantizationConfig
@@ -38,6 +39,7 @@ def graph_preparation_runner(in_model: Any,
38
39
  fw_info: FrameworkInfo,
39
40
  fw_impl: FrameworkImplementation,
40
41
  tpc: TargetPlatformCapabilities,
42
+ bit_width_config: BitWidthConfig = None,
41
43
  tb_w: TensorboardWriter = None,
42
44
  mixed_precision_enable: bool = False,
43
45
  running_gptq: bool = False) -> Graph:
@@ -50,17 +52,18 @@ def graph_preparation_runner(in_model: Any,
50
52
  - Apply all necessary substitutions to finalize the graph for quantization.
51
53
 
52
54
  Args:
53
- in_model: Model to quantize.
54
- representative_data_gen: Dataset used for calibration.
55
- quantization_config: QuantizationConfig containing parameters of how the model should be quantized.
56
- fw_info: Information needed for quantization about the specific framework (e.g., kernel channels indices,
55
+ in_model (Any): Model to quantize.
56
+ representative_data_gen (Callable): Dataset used for calibration.
57
+ quantization_config (QuantizationConfig): QuantizationConfig containing parameters of how the model should be quantized.
58
+ fw_info (FrameworkInfo): Information needed for quantization about the specific framework (e.g., kernel channels indices,
57
59
  groups of layers by how they should be quantized, etc.).
58
- fw_impl: FrameworkImplementation object with a specific framework methods implementation.
59
- tpc: TargetPlatformCapabilities object that models the inference target platform and
60
+ fw_impl (FrameworkImplementation): FrameworkImplementation object with a specific framework methods implementation.
61
+ tpc (TargetPlatformCapabilities): TargetPlatformCapabilities object that models the inference target platform and
60
62
  the attached framework operator's information.
61
- tb_w: TensorboardWriter object for logging.
62
- mixed_precision_enable: is mixed precision enabled.
63
- running_gptq: Whether or not a GPTQ optimization is planned to run after the PTQ process.
63
+ bit_width_config (BitWidthConfig): Config for bit-width selection. Defaults to None.
64
+ tb_w (TensorboardWriter): TensorboardWriter object for logging.
65
+ mixed_precision_enable (bool): is mixed precision enabled.
66
+ running_gptq (bool): Whether or not a GPTQ optimization is planned to run after the PTQ process.
64
67
 
65
68
  Returns:
66
69
  An internal graph representation of the input model.
@@ -78,6 +81,7 @@ def graph_preparation_runner(in_model: Any,
78
81
  transformed_graph = get_finalized_graph(graph,
79
82
  tpc,
80
83
  quantization_config,
84
+ bit_width_config,
81
85
  fw_info,
82
86
  tb_w,
83
87
  fw_impl,
@@ -90,6 +94,7 @@ def graph_preparation_runner(in_model: Any,
90
94
  def get_finalized_graph(initial_graph: Graph,
91
95
  tpc: TargetPlatformCapabilities,
92
96
  quant_config: QuantizationConfig = DEFAULTCONFIG,
97
+ bit_width_config: BitWidthConfig = None,
93
98
  fw_info: FrameworkInfo = None,
94
99
  tb_w: TensorboardWriter = None,
95
100
  fw_impl: FrameworkImplementation = None,
@@ -104,6 +109,7 @@ def get_finalized_graph(initial_graph: Graph,
104
109
  tpc (TargetPlatformCapabilities): TargetPlatformCapabilities object that describes the desired inference target platform (includes fusing patterns MCT should handle).
105
110
  quant_config (QuantizationConfig): QuantizationConfig containing parameters of how the model should be
106
111
  quantized.
112
+ bit_width_config (BitWidthConfig): Config for bit-width selection. Defaults to None.
107
113
  fw_info (FrameworkInfo): Information needed for quantization about the specific framework (e.g.,
108
114
  kernel channels indices, groups of layers by how they should be quantized, etc.)
109
115
  tb_w (TensorboardWriter): TensorboardWriter object to use for logging events such as graphs, histograms, etc.
@@ -147,6 +153,7 @@ def get_finalized_graph(initial_graph: Graph,
147
153
  ######################################
148
154
  transformed_graph = set_quantization_configuration_to_graph(graph=transformed_graph,
149
155
  quant_config=quant_config,
156
+ bit_width_config=bit_width_config,
150
157
  mixed_precision_enable=mixed_precision_enable,
151
158
  running_gptq=running_gptq)
152
159
 
@@ -20,7 +20,7 @@ from model_compression_toolkit.logger import Logger
20
20
  from model_compression_toolkit.constants import TENSORFLOW
21
21
  from model_compression_toolkit.target_platform_capabilities.target_platform import TargetPlatformCapabilities
22
22
  from model_compression_toolkit.core.common.mixed_precision.resource_utilization_tools.resource_utilization_data import compute_resource_utilization_data
23
- from model_compression_toolkit.constants import FOUND_TF
23
+ from model_compression_toolkit.verify_packages import FOUND_TF
24
24
 
25
25
  if FOUND_TF:
26
26
  from model_compression_toolkit.target_platform_capabilities.constants import DEFAULT_TP_MODEL
@@ -89,5 +89,6 @@ else:
89
89
  # If tensorflow is not installed,
90
90
  # we raise an exception when trying to use this function.
91
91
  def keras_resource_utilization_data(*args, **kwargs):
92
- Logger.critical("Tensorflow must be installed to use keras_resource_utilization_data. "
93
- "The 'tensorflow' package is missing.") # pragma: no cover
92
+ Logger.critical("Tensorflow must be installed with a version of 2.15 or lower to use "
93
+ "keras_resource_utilization_data. The 'tensorflow' package is either not installed or is "
94
+ "installed with a version higher than 2.15.") # pragma: no cover
@@ -23,7 +23,7 @@ from model_compression_toolkit.core.common.framework_info import FrameworkInfo
23
23
  from model_compression_toolkit.core.common.mixed_precision.resource_utilization_tools.resource_utilization_data import compute_resource_utilization_data
24
24
  from model_compression_toolkit.core.common.quantization.core_config import CoreConfig
25
25
  from model_compression_toolkit.core.common.mixed_precision.mixed_precision_quantization_config import MixedPrecisionQuantizationConfig
26
- from model_compression_toolkit.constants import FOUND_TORCH
26
+ from model_compression_toolkit.verify_packages import FOUND_TORCH
27
27
 
28
28
  if FOUND_TORCH:
29
29
  from model_compression_toolkit.core.pytorch.default_framework_info import DEFAULT_PYTORCH_INFO
@@ -115,6 +115,7 @@ def core_runner(in_model: Any,
115
115
  fw_info,
116
116
  fw_impl,
117
117
  tpc,
118
+ core_config.bit_width_config,
118
119
  tb_w,
119
120
  mixed_precision_enable=core_config.mixed_precision_enable,
120
121
  running_gptq=running_gptq)
@@ -13,7 +13,7 @@
13
13
  # limitations under the License.
14
14
  # ==============================================================================
15
15
 
16
- from model_compression_toolkit.constants import FOUND_TORCH, FOUND_TF, FOUND_TORCHVISION
16
+ from model_compression_toolkit.verify_packages import FOUND_TORCHVISION, FOUND_TORCH, FOUND_TF
17
17
  from model_compression_toolkit.data_generation.common.data_generation_config import DataGenerationConfig
18
18
  from model_compression_toolkit.data_generation.common.enums import ImageGranularity, DataInitType, SchedulerType, BNLayerWeightingType, OutputLossType, BatchNormAlignemntLossType, ImagePipelineType, ImageNormalizationType
19
19
 
@@ -16,7 +16,7 @@ import time
16
16
  from typing import Callable, Tuple, List, Dict, Union
17
17
  from tqdm import tqdm
18
18
 
19
- from model_compression_toolkit.constants import FOUND_TF
19
+ from model_compression_toolkit.verify_packages import FOUND_TF
20
20
  from model_compression_toolkit.data_generation.common.constants import DEFAULT_N_ITER, DEFAULT_DATA_GEN_BS
21
21
  from model_compression_toolkit.data_generation.common.data_generation import get_data_generation_classes
22
22
  from model_compression_toolkit.data_generation.common.image_pipeline import image_normalization_dict
@@ -349,8 +349,12 @@ if FOUND_TF:
349
349
  else:
350
350
  def get_keras_data_generation_config(*args, **kwargs):
351
351
  Logger.critical(
352
- "Tensorflow must be installed to use get_tensorflow_data_generation_config. The 'tensorflow' package is missing.") # pragma: no cover
352
+ "Tensorflow must be installed with a version of 2.15 or lower to use "
353
+ "get_tensorflow_data_generation_config. The 'tensorflow' package is missing or is installed with a "
354
+ "version higher than 2.15.") # pragma: no cover
353
355
 
354
356
 
355
357
  def keras_data_generation_experimental(*args, **kwargs):
356
- Logger.critical("Tensorflow must be installed to use tensorflow_data_generation_experimental. The 'tensorflow' package is missing.") # pragma: no cover
358
+ Logger.critical("Tensorflow must be installed with a version of 2.15 or lower to use "
359
+ "tensorflow_data_generation_experimental. The 'tensorflow' package is missing or is installed "
360
+ "with a version higher than 2.15.") # pragma: no cover
@@ -17,7 +17,7 @@ from typing import Callable, Any, Tuple, List, Union
17
17
 
18
18
  from tqdm import tqdm
19
19
 
20
- from model_compression_toolkit.constants import FOUND_TORCH, FOUND_TORCHVISION
20
+ from model_compression_toolkit.verify_packages import FOUND_TORCHVISION, FOUND_TORCH
21
21
  from model_compression_toolkit.core.pytorch.utils import set_model
22
22
  from model_compression_toolkit.data_generation.common.constants import DEFAULT_N_ITER, DEFAULT_DATA_GEN_BS
23
23
  from model_compression_toolkit.data_generation.common.data_generation import get_data_generation_classes
@@ -14,7 +14,7 @@
14
14
  # ==============================================================================
15
15
  from typing import Callable, 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.exporter.model_exporter.fw_agonstic.quantization_format import QuantizationFormat
19
19
  from model_compression_toolkit.logger import Logger
20
20
 
@@ -101,5 +101,6 @@ if FOUND_TF:
101
101
  return exporter.get_custom_objects()
102
102
  else:
103
103
  def keras_export_model(*args, **kwargs):
104
- Logger.critical("Tensorflow must be installed to use keras_export_model. "
105
- "The 'tensorflow' package is missing.") # pragma: no cover
104
+ Logger.critical("Tensorflow must be installed with a version of 2.15 or lower to use keras_export_model."
105
+ "The 'tensorflow' package is missing or is installed "
106
+ "with a version higher than 2.15.") # pragma: no cover
@@ -18,7 +18,7 @@ from io import BytesIO
18
18
  import torch.nn
19
19
 
20
20
  from mct_quantizers import PytorchActivationQuantizationHolder, PytorchQuantizationWrapper
21
- from model_compression_toolkit.constants import FOUND_ONNX
21
+ from model_compression_toolkit.verify_packages import FOUND_ONNX
22
22
  from model_compression_toolkit.logger import Logger
23
23
  from model_compression_toolkit.core.pytorch.utils import to_torch_tensor
24
24
  from model_compression_toolkit.exporter.model_exporter.pytorch.base_pytorch_exporter import BasePyTorchExporter
@@ -14,7 +14,7 @@
14
14
  # ==============================================================================
15
15
  from typing import Callable
16
16
 
17
- from model_compression_toolkit.constants import FOUND_TORCH
17
+ from model_compression_toolkit.verify_packages import FOUND_TORCH
18
18
  from model_compression_toolkit.exporter.model_exporter.fw_agonstic.quantization_format import QuantizationFormat
19
19
  from model_compression_toolkit.exporter.model_exporter.pytorch.export_serialization_format import \
20
20
  PytorchExportSerializationFormat
@@ -16,7 +16,7 @@
16
16
  from typing import Tuple, Callable
17
17
  from model_compression_toolkit.core import common
18
18
  from model_compression_toolkit.core.common import Graph
19
- from model_compression_toolkit.constants import FOUND_TF
19
+ from model_compression_toolkit.verify_packages import FOUND_TF
20
20
  from model_compression_toolkit.core.common.user_info import UserInformation
21
21
  from model_compression_toolkit.logger import Logger
22
22
  import model_compression_toolkit.core as C
@@ -101,5 +101,6 @@ if FOUND_TF:
101
101
  return exportable_model, user_info
102
102
  else:
103
103
  def get_exportable_keras_model(*args, **kwargs): # pragma: no cover
104
- Logger.critical("Tensorflow must be installed to use get_exportable_keras_model. "
105
- "The 'tensorflow' package is missing.") # pragma: no cover
104
+ Logger.critical("Tensorflow must be installed with a version of 2.15 or lower to use "
105
+ "get_exportable_keras_model. The 'tensorflow' package is missing or is installed with a "
106
+ "version higher than 2.15.") # pragma: no cover