Skip to content

Commit

Permalink
Update docs for v2.3.0 (#1355)
Browse files Browse the repository at this point in the history
Co-authored-by: reuvenp <[email protected]>
  • Loading branch information
reuvenperetz and reuvenp authored Feb 12, 2025
1 parent d9530b1 commit 9578f3c
Show file tree
Hide file tree
Showing 66 changed files with 973 additions and 751 deletions.
2 changes: 1 addition & 1 deletion docs/.buildinfo
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
# Sphinx build info version 1
# This file hashes the configuration used when building these files. When it is not found, a full rebuild will be done.
config: 463b5d411b812fb296a8f7bff970d1cf
config: e8534f6a2f0b425ce862dbeb0800af00
tags: 645f666f9bcd5a90fca523b33c5a78b7
21 changes: 20 additions & 1 deletion docs/_sources/api/api_docs/classes/GradientPTQConfig.rst.txt
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ GradientPTQConfig Class
=================================


**The following API can be used to create a GradientPTQConfig instance which can be used for post training quantization using knowledge distillation from a teacher (float Keras model) to a student (the quantized Keras model)**
**The following API can be used to create a GradientPTQConfig instance which can be used for post training quantization using knowledge distillation from a teacher (float model) to a student (the quantized model)**

.. autoclass:: model_compression_toolkit.gptq.GradientPTQConfig
:members:
Expand All @@ -30,3 +30,22 @@ RoundingType

.. autoclass:: model_compression_toolkit.gptq.RoundingType
:members:


=====================================
GradualActivationQuantizationConfig
=====================================

**The following API can be used to configure the gradual activation quantization when using GPTQ.**

.. autoclass:: model_compression_toolkit.gptq.GradualActivationQuantizationConfig
:members:


=====================================
QFractionLinearAnnealingConfig
=====================================

.. autoclass:: model_compression_toolkit.gptq.QFractionLinearAnnealingConfig
:members:

6 changes: 3 additions & 3 deletions docs/_sources/api/api_docs/index.rst.txt
Original file line number Diff line number Diff line change
Expand Up @@ -106,9 +106,9 @@ keras_load_quantized_model
- :ref:`keras_load_quantized_model<ug-keras_load_quantized_model>`: A function to load a quantized keras model.


target_platform
================
- :ref:`target_platform<ug-target_platform>`: Module to create and model hardware-related settings to optimize the model according to, by the hardware the optimized model will use during inference.
target_platform_capabilities
==============================
- :ref:`target_platform_capabilities<ug-target_platform_capabilities>`: Module to create and model hardware-related settings to optimize the model according to, by the hardware the optimized model will use during inference.
- :ref:`get_target_platform_capabilities<ug-get_target_platform_capabilities>`: A function to get a target platform model for Tensorflow and Pytorch.
- :ref:`DefaultDict<ug-DefaultDict>`: Util class for creating a TargetPlatformCapabilities.

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@


=======================================
Get TargetPlatformCapabilities
Get FrameworkQuantizationCapabilities
=======================================

.. autofunction:: model_compression_toolkit.get_target_platform_capabilities
Expand Down
14 changes: 7 additions & 7 deletions docs/_sources/api/api_docs/modules/layer_filters.rst.txt
Original file line number Diff line number Diff line change
Expand Up @@ -15,30 +15,30 @@ one may use the next filters to check if a layer configuration holds the created
Attribute Filters
==================

.. autoclass:: model_compression_toolkit.target_platform.AttributeFilter
.. autoclass:: model_compression_toolkit.target_platform_capabilities.AttributeFilter

|
.. autoclass:: model_compression_toolkit.target_platform.Eq
.. autoclass:: model_compression_toolkit.target_platform_capabilities.Eq

|
.. autoclass:: model_compression_toolkit.target_platform.NotEq
.. autoclass:: model_compression_toolkit.target_platform_capabilities.NotEq

|
.. autoclass:: model_compression_toolkit.target_platform.Greater
.. autoclass:: model_compression_toolkit.target_platform_capabilities.Greater

|

.. autoclass:: model_compression_toolkit.target_platform.GreaterEq
.. autoclass:: model_compression_toolkit.target_platform_capabilities.GreaterEq

|

.. autoclass:: model_compression_toolkit.target_platform.Smaller
.. autoclass:: model_compression_toolkit.target_platform_capabilities.Smaller

|
.. autoclass:: model_compression_toolkit.target_platform.SmallerEq
.. autoclass:: model_compression_toolkit.target_platform_capabilities.SmallerEq
5 changes: 1 addition & 4 deletions docs/_sources/api/api_docs/modules/qat_config.rst.txt
Original file line number Diff line number Diff line change
Expand Up @@ -10,10 +10,7 @@ qat_config Module

TrainingMethod
================================
**Select a QAT training method:**

.. autoclass:: model_compression_toolkit.qat.TrainingMethod

In order to select a training method, please visit the :ref:`trainable_infrastructure API.<ug-trainable_infrastructure>`

|
Expand Down
Original file line number Diff line number Diff line change
@@ -1,11 +1,11 @@
:orphan:

.. _ug-target_platform:
.. _ug-target_platform_capabilities:


=================================
target_platform Module
=================================
=====================================
target_platform_capabilities Module
=====================================

MCT can be configured to quantize and optimize models for different hardware settings.
For example, when using qnnpack backend for Pytorch model inference, Pytorch `quantization
Expand All @@ -14,7 +14,7 @@ uses `per-tensor weights quantization <https://github.com/pytorch/pytorch/blob/m
for Conv2d, while when using tflite modeling, Tensorflow uses `per-channel weights quantization for
Conv2D <https://www.tensorflow.org/lite/performance/quantization_spec#per-axis_vs_per-tensor>`_.

This can be addressed in MCT by using the target_platform module, that can configure different
This can be addressed in MCT by using the target_platform_capabilities module, that can configure different
parameters that are hardware-related, and the optimization process will use this to optimize the model accordingly.
Models for IMX500, TFLite and qnnpack can be observed `here <https://github.com/sony/model_optimization/tree/main/model_compression_toolkit/target_platform_capabilities>`_, and can be used using :ref:`get_target_platform_capabilities function<ug-get_target_platform_capabilities>`.

Expand All @@ -27,7 +27,7 @@ Models for IMX500, TFLite and qnnpack can be observed `here <https://github.com/
The object MCT should get called TargetPlatformCapabilities (or shortly TPC).
This diagram demonstrates the main components:

.. image:: ../../../../images/tpc.jpg
.. image:: ../../../../images/tpc_diagram.png
:scale: 80%

Now, we will detail about the different components.
Expand All @@ -36,68 +36,43 @@ Now, we will detail about the different components.

QuantizationMethod
==========================
.. autoclass:: model_compression_toolkit.target_platform.QuantizationMethod
.. autoclass:: model_compression_toolkit.target_platform_capabilities.QuantizationMethod



OpQuantizationConfig
======================
.. autoclass:: model_compression_toolkit.target_platform.OpQuantizationConfig
.. autoclass:: model_compression_toolkit.target_platform_capabilities.schema.mct_current_schema.OpQuantizationConfig



AttributeQuantizationConfig
============================
.. autoclass:: model_compression_toolkit.target_platform.AttributeQuantizationConfig
.. autoclass:: model_compression_toolkit.target_platform_capabilities.schema.mct_current_schema.AttributeQuantizationConfig


QuantizationConfigOptions
============================
.. autoclass:: model_compression_toolkit.target_platform.QuantizationConfigOptions
.. autoclass:: model_compression_toolkit.target_platform_capabilities.schema.mct_current_schema.QuantizationConfigOptions


TargetPlatformModel
=======================
.. autoclass:: model_compression_toolkit.target_platform.TargetPlatformModel
TargetPlatformCapabilities
============================
.. autoclass:: model_compression_toolkit.target_platform_capabilities.schema.mct_current_schema.TargetPlatformCapabilities


OperatorsSet
================
.. autoclass:: model_compression_toolkit.target_platform.OperatorsSet
.. autoclass:: model_compression_toolkit.target_platform_capabilities.schema.mct_current_schema.OperatorsSet



Fusing
==============
.. autoclass:: model_compression_toolkit.target_platform.Fusing
.. autoclass:: model_compression_toolkit.target_platform_capabilities.schema.mct_current_schema.Fusing



OperatorSetConcat
OperatorSetGroup
====================
.. autoclass:: model_compression_toolkit.target_platform.OperatorSetConcat


OperationsToLayers
=====================
.. autoclass:: model_compression_toolkit.target_platform.OperationsToLayers


OperationsSetToLayers
=========================
.. autoclass:: model_compression_toolkit.target_platform.OperationsSetToLayers


LayerFilterParams
=========================
.. autoclass:: model_compression_toolkit.target_platform.LayerFilterParams

More filters and usage examples are detailed :ref:`here<ug-layer_filters>`.


TargetPlatformCapabilities
=============================
.. autoclass:: model_compression_toolkit.target_platform.TargetPlatformCapabilities



.. autoclass:: model_compression_toolkit.target_platform_capabilities.schema.mct_current_schema.OperatorSetGroup
Original file line number Diff line number Diff line change
Expand Up @@ -36,6 +36,15 @@ It adds to the base quantizer a get_config and from_config functions to enable l

.. autoclass:: model_compression_toolkit.trainable_infrastructure.BasePytorchTrainableQuantizer



TrainingMethod
================================
**Select a training method:**

.. autoclass:: model_compression_toolkit.trainable_infrastructure.TrainingMethod


TrainableQuantizerWeightsConfig
=================================
This configuration object contains the necessary attributes for configuring a weights trainable quantizer.
Expand All @@ -46,7 +55,7 @@ For example, we can set a trainable weights quantizer with the following configu

.. code-block:: python
from model_compression_toolkit.target_platform_capabilities.target_platform import QuantizationMethod
from model_compression_toolkit.target_platform_capabilities.target_platform_capabilities import QuantizationMethod
from model_compression_toolkit.constants import THRESHOLD, MIN_THRESHOLD
TrainableQuantizerWeightsConfig(weights_quantization_method=QuantizationMethod.SYMMETRIC,
Expand All @@ -70,7 +79,7 @@ For example, we can set a trainable activation quantizer with the following conf

.. code-block:: python
from model_compression_toolkit.target_platform_capabilities.target_platform import QuantizationMethod
from model_compression_toolkit.target_platform_capabilities.target_platform_capabilities import QuantizationMethod
from model_compression_toolkit.constants import THRESHOLD, MIN_THRESHOLD
TrainableQuantizerActivationConfig(activation_quantization_method=QuantizationMethod.UNIFORM,
Expand Down
4 changes: 2 additions & 2 deletions docs/_sources/api/api_docs/notes/tpc_note.rst.txt
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@

.. note::
For now, some fields of :class:`~model_compression_toolkit.target_platform.OpQuantizationConfig` are ignored during
For now, some fields of :class:`~model_compression_toolkit.target_platform_capabilities.OpQuantizationConfig` are ignored during
the optimization process such as quantization_preserving, fixed_scale, and fixed_zero_point.

- MCT will use more information from :class:`~model_compression_toolkit.target_platform.OpQuantizationConfig`, in the future.
- MCT will use more information from :class:`~model_compression_toolkit.target_platform_capabilities.OpQuantizationConfig`, in the future.

8 changes: 4 additions & 4 deletions docs/api/api_docs/classes/BitWidthConfig.html
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" /><meta name="generator" content="Docutils 0.18.1: http://docutils.sourceforge.net/" />

<title>BitWidthConfig &#8212; MCT Documentation: ver 2.2.0</title>
<title>BitWidthConfig &#8212; MCT Documentation: ver 2.3.0</title>
<link rel="stylesheet" type="text/css" href="../../../static/pygments.css" />
<link rel="stylesheet" type="text/css" href="../../../static/bizstyle.css" />
<link rel="stylesheet" type="text/css" href="../../../static/css/custom.css" />
Expand All @@ -31,7 +31,7 @@ <h3>Navigation</h3>
<li class="right" style="margin-right: 10px">
<a href="../../../genindex.html" title="General Index"
accesskey="I">index</a></li>
<li class="nav-item nav-item-0"><a href="../../../index.html">MCT Documentation: ver 2.2.0</a> &#187;</li>
<li class="nav-item nav-item-0"><a href="../../../index.html">MCT Documentation: ver 2.3.0</a> &#187;</li>
<li class="nav-item nav-item-this"><a href="">BitWidthConfig</a></li>
</ul>
</div>
Expand All @@ -45,7 +45,7 @@ <h3>Navigation</h3>
<span id="ug-bitwidthconfig"></span><h1>BitWidthConfig<a class="headerlink" href="#bitwidthconfig" title="Permalink to this heading"></a></h1>
<dl class="py class">
<dt class="sig sig-object py" id="model_compression_toolkit.core.BitWidthConfig">
<em class="property"><span class="pre">class</span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">model_compression_toolkit.core.</span></span><span class="sig-name descname"><span class="pre">BitWidthConfig</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">manual_activation_bit_width_selection_list</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#model_compression_toolkit.core.BitWidthConfig" title="Permalink to this definition"></a></dt>
<em class="property"><span class="pre">class</span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">model_compression_toolkit.core.</span></span><span class="sig-name descname"><span class="pre">BitWidthConfig</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">manual_activation_bit_width_selection_list=&lt;factory&gt;</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#model_compression_toolkit.core.BitWidthConfig" title="Permalink to this definition"></a></dt>
<dd><p>Class to manage manual bit-width configurations.</p>
<dl class="py attribute">
<dt class="sig sig-object py" id="model_compression_toolkit.core.BitWidthConfig.manual_activation_bit_width_selection_list">
Expand Down Expand Up @@ -128,7 +128,7 @@ <h3>Navigation</h3>
<li class="right" style="margin-right: 10px">
<a href="../../../genindex.html" title="General Index"
>index</a></li>
<li class="nav-item nav-item-0"><a href="../../../index.html">MCT Documentation: ver 2.2.0</a> &#187;</li>
<li class="nav-item nav-item-0"><a href="../../../index.html">MCT Documentation: ver 2.3.0</a> &#187;</li>
<li class="nav-item nav-item-this"><a href="">BitWidthConfig</a></li>
</ul>
</div>
Expand Down
6 changes: 3 additions & 3 deletions docs/api/api_docs/classes/DataGenerationConfig.html
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" /><meta name="generator" content="Docutils 0.18.1: http://docutils.sourceforge.net/" />

<title>Data Generation Configuration &#8212; MCT Documentation: ver 2.2.0</title>
<title>Data Generation Configuration &#8212; MCT Documentation: ver 2.3.0</title>
<link rel="stylesheet" type="text/css" href="../../../static/pygments.css" />
<link rel="stylesheet" type="text/css" href="../../../static/bizstyle.css" />
<link rel="stylesheet" type="text/css" href="../../../static/css/custom.css" />
Expand All @@ -31,7 +31,7 @@ <h3>Navigation</h3>
<li class="right" style="margin-right: 10px">
<a href="../../../genindex.html" title="General Index"
accesskey="I">index</a></li>
<li class="nav-item nav-item-0"><a href="../../../index.html">MCT Documentation: ver 2.2.0</a> &#187;</li>
<li class="nav-item nav-item-0"><a href="../../../index.html">MCT Documentation: ver 2.3.0</a> &#187;</li>
<li class="nav-item nav-item-this"><a href="">Data Generation Configuration</a></li>
</ul>
</div>
Expand Down Expand Up @@ -211,7 +211,7 @@ <h3>Navigation</h3>
<li class="right" style="margin-right: 10px">
<a href="../../../genindex.html" title="General Index"
>index</a></li>
<li class="nav-item nav-item-0"><a href="../../../index.html">MCT Documentation: ver 2.2.0</a> &#187;</li>
<li class="nav-item nav-item-0"><a href="../../../index.html">MCT Documentation: ver 2.3.0</a> &#187;</li>
<li class="nav-item nav-item-this"><a href="">Data Generation Configuration</a></li>
</ul>
</div>
Expand Down
6 changes: 3 additions & 3 deletions docs/api/api_docs/classes/DefaultDict.html
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" /><meta name="generator" content="Docutils 0.18.1: http://docutils.sourceforge.net/" />

<title>DefaultDict Class &#8212; MCT Documentation: ver 2.2.0</title>
<title>DefaultDict Class &#8212; MCT Documentation: ver 2.3.0</title>
<link rel="stylesheet" type="text/css" href="../../../static/pygments.css" />
<link rel="stylesheet" type="text/css" href="../../../static/bizstyle.css" />
<link rel="stylesheet" type="text/css" href="../../../static/css/custom.css" />
Expand All @@ -31,7 +31,7 @@ <h3>Navigation</h3>
<li class="right" style="margin-right: 10px">
<a href="../../../genindex.html" title="General Index"
accesskey="I">index</a></li>
<li class="nav-item nav-item-0"><a href="../../../index.html">MCT Documentation: ver 2.2.0</a> &#187;</li>
<li class="nav-item nav-item-0"><a href="../../../index.html">MCT Documentation: ver 2.3.0</a> &#187;</li>
<li class="nav-item nav-item-this"><a href="">DefaultDict Class</a></li>
</ul>
</div>
Expand Down Expand Up @@ -114,7 +114,7 @@ <h3>Navigation</h3>
<li class="right" style="margin-right: 10px">
<a href="../../../genindex.html" title="General Index"
>index</a></li>
<li class="nav-item nav-item-0"><a href="../../../index.html">MCT Documentation: ver 2.2.0</a> &#187;</li>
<li class="nav-item nav-item-0"><a href="../../../index.html">MCT Documentation: ver 2.3.0</a> &#187;</li>
<li class="nav-item nav-item-this"><a href="">DefaultDict Class</a></li>
</ul>
</div>
Expand Down
Loading

0 comments on commit 9578f3c

Please sign in to comment.