|
1 | 1 | import tqdm |
2 | 2 | from compressed_tensors.utils import replace_module |
3 | | -from loguru import logger |
4 | 3 | from transformers import PreTrainedModel |
5 | 4 |
|
6 | 5 | from llmcompressor.modeling.deepseek_v3 import replace as replace_deepseekv3 |
7 | 6 | from llmcompressor.modeling.llama4 import replace as replace_llama4 |
8 | 7 | from llmcompressor.modeling.qwen3_moe import replace as replace_Qwen3MoE |
9 | | - |
10 | | -try: |
11 | | - from llmcompressor.modeling.qwen3_next_moe import replace as replace_Qwen3NextMoE |
12 | | - from llmcompressor.modeling.qwen3_vl_moe import replace as replace_Qwen3VLMoE |
13 | | -except ImportError: |
14 | | - logger.warning( |
15 | | - "Qwen3-VL-MoE and Qwen3-Next support is not available. " |
16 | | - "Please ensure that you have the correct version of transformers installed." |
17 | | - ) |
18 | | - replace_Qwen3VLMoE = None |
19 | | - replace_Qwen3NextMoE = None |
20 | | - |
| 8 | +from llmcompressor.modeling.qwen3_next_moe import replace as replace_Qwen3NextMoE |
| 9 | +from llmcompressor.modeling.qwen3_vl_moe import replace as replace_Qwen3VLMoE |
21 | 10 | from llmcompressor.utils.helpers import patch_attr |
22 | 11 |
|
23 | 12 | __all__ = ["replace_modules_for_calibration"] |
|
26 | 15 | replacements = { |
27 | 16 | "DeepseekV3MoE": replace_deepseekv3, |
28 | 17 | "Llama4TextMoe": replace_llama4, |
| 18 | + "Qwen3VLMoeTextSparseMoeBlock": replace_Qwen3VLMoE, |
29 | 19 | } |
30 | 20 |
|
31 | | -if replace_Qwen3VLMoE is not None: |
32 | | - replacements["Qwen3VLMoeTextSparseMoeBlock"] = replace_Qwen3VLMoE |
33 | | - |
34 | 21 |
|
35 | 22 | def replace_modules_for_calibration( |
36 | 23 | model: PreTrainedModel, |
@@ -92,11 +79,9 @@ def update_qwen3_next_moe(model, module, stack, calibrate_all_experts): |
92 | 79 |
|
93 | 80 | moe_context = { |
94 | 81 | "Qwen3MoeForCausalLM": update_qwen3_moe, |
| 82 | + "Qwen3NextForCausalLM": update_qwen3_next_moe, |
95 | 83 | } |
96 | 84 |
|
97 | | -if replace_Qwen3NextMoE is not None: |
98 | | - moe_context["Qwen3NextForCausalLM"] = update_qwen3_next_moe |
99 | | - |
100 | 85 |
|
101 | 86 | def moe_calibration_context( |
102 | 87 | model: PreTrainedModel, |
|
0 commit comments