Views
No views yet
For the version calibrated on the default NeelNanda/pile-10k dataset, see atbender/Qwen3-REAP-15B-A3B-W4A16.
| Property | Value |
|---|---|
| Architecture | Qwen3MoE (Mixture-of-Experts) |
| Original experts | 128 per layer |
| Pruned experts | 64 per layer (50% pruning via REAP) |
| Active experts per token | 8 |
| Layers | 48 |
| Hidden size | 2048 |
| Quantization | W4A16 (4-bit weights, 16-bit activations) |
| Quantization method | AutoRound v0.10.2 (signed gradient descent) |
| Group size | 128 |
| Calibration data | Custom multi-domain (1000 samples, see below) |
| Calibration samples used | 128 (seqlen=512) |
| Model size | ~8.7 GB |
| Original model size | ~19 GB (BF16 pruned) / ~34 GB (BF16 original) |
mlp.gate) which are preserved at FP16 across all 48 layers to maintain routing precision.| Source | Proportion | Description |
|---|---|---|
| CoderForge agentic trajectories | 40% | Multi-turn agentic coding conversations |
| code_search_net (Python) | 30% | Python source code |
| C4 (English) | 10% | Web-crawled English text |
| NeelNanda/pile-10k | 20% | General-purpose text |
1from transformers import AutoModelForCausalLM, AutoTokenizer
2
3model = AutoModelForCausalLM.from_pretrained(
4 "atbender/Qwen3-REAP-15B-A3B-W4A16-custom-calib",
5 torch_dtype="auto",
6 device_map="auto",
7 trust_remote_code=True,
8)
9tokenizer = AutoTokenizer.from_pretrained(
10 "atbender/Qwen3-REAP-15B-A3B-W4A16-custom-calib",
11 trust_remote_code=True,
12)
13
14messages = [{"role": "user", "content": "Explain mixture-of-experts models."}]
15text = tokenizer.apply_chat_template(messages, tokenize=False, add_generation_prompt=True)
16inputs = tokenizer(text, return_tensors="pt").to(model.device)
17outputs = model.generate(**inputs, max_new_tokens=512)
18print(tokenizer.decode(outputs[0], skip_special_tokens=True))1vllm serve atbender/Qwen3-REAP-15B-A3B-W4A16-custom-calib \
2 --trust-remote-code \
3 --quantization auto_round \
4 --max-model-len 4096transformers.pytorch_utils.Conv1D was removed in transformers 5.x but AutoRound references it. Shimmed with torch.nn.Linear.auto_round.utils.is_mllm_model, causing the wrong calibration path. Overridden to always return False.model.layers.*.mlp.gate modules are kept at full precision (16-bit float) to ensure expert routing decisions remain accurate after quantization.