[Refactor][Quantization] Reorganize quantization module: group configs and methods into subdirectories (#14030)
### What this PR does / why we need it?
- Part of https://github.com/vllm-project/vllm-ascend/issues/13318
**Summary**
This PR reorganizes the vllm_ascend.quantization module to improve code
organization and maintainability as the number of quantization configs
and methods continues to grow.
**Changes**
1. Directory Restructuring
Configs (quantization/configs/):
- Moved 4 config files (compressed_tensors_config.py, fp8_config.py,
modelslim_config.py, modelopt_mxfp8_config.py) into dedicated configs/
subdirectory
Methods (quantization/methods/): Grouped 16 method files into 5
subdirectories by quantization type
- w8a8/ — W8A8 quantization (dynamic, static, mxfp8, pdmix, fp8_dynamic)
- w4a8/ — W4A8 quantization (dynamic, mxfp4)
- wna16/ — WnA16 quantization (w4a16, w4a16_mxfp4, w8a16)
- w4a4/ — W4A4 quantization (flatquant, laos_dynamic, mxfp4,
mxfp4_flatquant)
- kv_cache/ — KV cache quantization (kv_c8)
- Eliminated fp8/ directory — merged 2 DS-specific classes into parent
files (w8a8_mxfp8.py, w4a8_mxfp4.py)
2. Dead Code Removal
- Remove unused attribute assignments: `self.ep_group`
`self.use_aclgraph` .etc
- Delete some meaningless code in `AscendCompressedTensorsConfig`
3. Code Optimization
- Extracted shared utility: Moved duplicate _is_fused_moe_layer()
function (4 copies) to quantization/utils.py as is_fused_moe_layer()
- Extracted shared solver: Moved duplicate solve_kronecker_decompose()
to w4a4_flatquant.py, shared with w4a4_mxfp4_flatquant.py
- Remove `layer.ascend_quant_method`
### Does this PR introduce _any_ user-facing change?
no
### How was this patch tested?
CI pass
- vLLM main:
https://github.com/vllm-project/vllm/commit/ba07e4a48fc951300d97eb506217dd530583dea3
---------
Signed-off-by: wangkunpeng <1289706727@qq.com> W
Wang Kunpeng committed
73acadef668c4346558ae7061236742256cc8331
Parent: be95ca9
Committed by GitHub <noreply@github.com>
on 8/29/2026, 1:30:17 AM