Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Enhance 3.x torch algorithm entry #1779

Merged
merged 8 commits into from
May 9, 2024
Merged

Conversation

yuwenzho
Copy link
Contributor

@yuwenzho yuwenzho commented May 9, 2024

Type of Change

feature
API changed or not: no

Description

Add new function preprocess_quantizer and postprocess_model to reduce duplicate code and fix bug in mixed algorithms.

For example:

- if getattr(model, "quantizer", False):
-     quantizer = model.quantizer
- else:
-     quantizer = RTNQuantizer(quant_config=weight_config)
+ quantizer = preprocess_quantizer(model, quantizer_cls=RTNQuantizer, quant_config=weight_config)

model = quantizer.execute(model, mode=mode)

- if getattr(model, "quantizer", False):
-     del model.quantizer
- else:
-     model.quantizer = quantizer
+ postprocess_model(model, mode, quantizer)

How has this PR been tested?

CI

Dependency Change?

No

@yuwenzho yuwenzho added INC3.X PyTorch Related to PyTorch F/W labels May 9, 2024
Copy link

github-actions bot commented May 9, 2024

⚡ Required checks status: All passing 🟢

Groups summary

🟢 Code Scan Tests workflow
Check ID Status Error details
Code-Scan success
Code-Scan (Bandit Code Scan Bandit) success
Code-Scan (DocStyle Code Scan DocStyle) success
Code-Scan (Pylint Code Scan Pylint) success

These checks are required after the changes to neural_compressor/torch/algorithms/base_algorithm.py, neural_compressor/torch/algorithms/weight_only/autoround.py, neural_compressor/torch/quantization/algorithm_entry.py, neural_compressor/torch/quantization/quantize.py, neural_compressor/torch/utils/utility.py.

🟢 Model Tests 3x workflow
Check ID Status Error details
Model-Test-3x success
Model-Test-3x (Generate Report GenerateReport) success
Model-Test-3x (Run PyTorch Model opt_125m_woq_gptq_int4) success
Model-Test-3x (Run PyTorch Model opt_125m_woq_gptq_int4_dq_bnb) success
Model-Test-3x (Run PyTorch Model opt_125m_woq_gptq_int4_dq_ggml) success

These checks are required after the changes to neural_compressor/torch/algorithms/base_algorithm.py, neural_compressor/torch/algorithms/weight_only/autoround.py, neural_compressor/torch/quantization/algorithm_entry.py, neural_compressor/torch/quantization/quantize.py, neural_compressor/torch/utils/utility.py.

🟢 Unit Tests 3x-PyTorch workflow
Check ID Status Error details
UT-3x-Torch success
UT-3x-Torch (Coverage Compare CollectDatafiles) success
UT-3x-Torch (Unit Test 3x Torch Unit Test 3x Torch) success
UT-3x-Torch (Unit Test 3x Torch baseline Unit Test 3x Torch baseline) success

These checks are required after the changes to neural_compressor/torch/algorithms/base_algorithm.py, neural_compressor/torch/algorithms/weight_only/autoround.py, neural_compressor/torch/quantization/algorithm_entry.py, neural_compressor/torch/quantization/quantize.py, neural_compressor/torch/utils/utility.py, test/3x/torch/quantization/weight_only/test_autoround.py, test/3x/torch/quantization/weight_only/test_mixed_algos.py.


Thank you for your contribution! 💜

Note
This comment is automatically generated and will be updates every 180 seconds within the next 6 hours. If you have any other questions, contact chensuyue or XuehaoSun for help.

Signed-off-by: yuwenzho <[email protected]>
neural_compressor/torch/utils/utility.py Outdated Show resolved Hide resolved
@yuwenzho yuwenzho merged commit ec49a29 into master May 9, 2024
30 checks passed
@yuwenzho yuwenzho deleted the yuwenzho/enhance_algo_entry branch May 9, 2024 09:22
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
INC3.X PyTorch Related to PyTorch F/W
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants