Views
No views yet

Brought to you by Selode.ai — Hyperscaling Enterprise AI Infrastructure
A breakthrough in model pruning post-quantization: VRAP delivers 4-bit AWQ quantization at just 21.2GB with >17% weight reduction from the original models, with minimal differences to original — enabling enterprise-grade deployment of 35B-parameter vision-language models on standard GPU hardware with mixed weight precision.



1pip install --upgrade pip
2pip install uv
3uv pip install sglang1pip install --upgrade pip
2pip install uv
3uv pip install sglang
4uv pip install --force-reinstall torch==2.11.0 torchaudio==2.11.0 torchvision --index-url https://download.pytorch.org/whl/cu129
5uv pip install --force-reinstall sglang-kernel --index-url https://docs.sglang.ai/whl/cu129/
6uv pip install --force-reinstall sgl-deep-gemm --index-url https://docs.sglang.ai/whl/cu129/ --no-depsIf you encounter OSError: CUDA_HOME environment variable is not set. Please set it to your CUDA install root with either of the following solutions:1 Use export CUDA_HOME=/usr/local/cuda-<your-cuda-version> to set the CUDA_HOME environment variable.
2 ### Install FlashInfer first following FlashInfer installation doc, then install SGLang as described above.1git clone -b v0.5.12 https://github.com/sgl-project/sglang.git
2cd sglang
3
4# Install the python packages
5pip install --upgrade pip
6pip install -e "python"qwen3_5.py in your SGLang installation with the updated version from this repository.qwen3_5.py from this repository.qwen3_5.py with the downloaded version.python3 -c "import sglang; import os; print(os.path.dirname(sglang.__file__))"python -c "import sglang; import os; print(os.path.dirname(sglang.__file__))"srt/models/ directory inside the printed path.cp qwen3_5.py /path/to/sglang/srt/models/qwen3_5.py1python3 -c "
2import sglang, os, shutil
3src = 'qwen3_5.py'
4dst = os.path.join(os.path.dirname(sglang.__file__), 'srt/models/qwen3_5.py')
5shutil.copy(src, dst)
6print(f'Replaced: {dst}')
7"python instead of python3.cp command with sudo (Linux/macOS) or run your terminal as Administrator (Windows).pip show sglang to verify it's installed and see its location.qwen3_5.py is in the same directory where you're running the command.1SGLANG_ENABLE_SPEC_V2=1 sglang serve \
2 --model-path selode-ai/Qwen-3.6-35B-A3B-VRAP-4-bit-AWQ-21.2GB \
3 --tp 1 \
4 --port 8040 \
5 --mem-fraction-static 0.88 \
6 --context-length 128000 \
7 --reasoning-parser qwen3 \
8 --tool-call-parser qwen3_coder \
9 --mamba-scheduler-strategy extra_buffer \
10 --enable-mixed-chunk \
11 --chunked-prefill-size 2048 \
12 --kv-cache-dtype fp8_e4m3 \
13 --max-running-requests 20 \
14 --schedule-conservativeness 1.0 \
15 --disable-cuda-graph-padding \
16 --attention-backend flashinfer \
17 --sampling-backend flashinfer \
18 --mamba-backend flashinfer \
19 --dtype bfloat16 \
20 --host 0.0.0.01SGLANG_ENABLE_SPEC_V2=1 sglang serve \
2 --model-path selode-ai/Qwen-3.6-35B-A3B-VRAP-4-bit-AWQ-21.2GB \
3 --tp 2 \
4 --port 8040 \
5 --mem-fraction-static 0.88 \
6 --context-length 128000 \
7 --reasoning-parser qwen3 \
8 --tool-call-parser qwen3_coder \
9 --mamba-scheduler-strategy extra_buffer \
10 --disable-custom-all-reduce \
11 --enable-mixed-chunk \
12 --chunked-prefill-size 2048 \
13 --kv-cache-dtype fp8_e4m3 \
14 --max-running-requests 20 \
15 --schedule-conservativeness 1.0 \
16 --disable-cuda-graph-padding \
17 --attention-backend flashinfer \
18 --sampling-backend flashinfer \
19 --mamba-backend flashinfer \
20 --dtype bfloat16 \
21 --host 0.0.0.01pip install vllm==0.19.0
2pip install transformers==5.5.4--enable-expert-parallel; otherwise the expert tensors wouldn't be evenly sharded across GPU devices.export VLLM_SLEEP_WHEN_IDLE=1
export VLLM_USE_DEEP_GEMM=0
export VLLM_USE_FLASHINFER_MOE_FP16=1
export VLLM_USE_FLASHINFER_SAMPLER=0
export OMP_NUM_THREADS=4
vllm serve \
__YOUR_PATH__/selode-ai/Qwen-3.6-35B-A3B-VRAP-4-bit-AWQ-21.2GB \
--served-model-name MY_MODEL \
--swap-space 16 \
--max-num-seqs 32 \
--max-model-len 32768 \
--gpu-memory-utilization 0.9 \
--tensor-parallel-size 4 \
--enable-expert-parallel \
--enable-auto-tool-choice \
--tool-call-parser qwen3_coder \
--reasoning-parser qwen3 \
--speculative-config '{"method":"qwen3_next_mtp","num_speculative_tokens":2}' \
--trust-remote-code \
--host 0.0.0.0 \
--port 80002026-04-20
1. Initial commit with VRAP sparse quantization| File Size | Last Updated |
|---|---|
21.2GiB | 2026-04-26 |
1from huggingface_hub import snapshot_download
2snapshot_download('selode-ai/Qwen-3.6-35B-A3B-VRAP-4-bit-AWQ-21.2GB', cache_dir="your_local_path")| Metric | Standard AWQ | VRAP-AWQ (Selode.ai) | Improvement |
|---|---|---|---|
| VRAM | ~25.5GB | 21.2GB | Optimized for single-GPU feasibility |
| Quality | Near-lossless with >20% sparse pruning | ||
| Calibration Data | Required | None | Fully data-free methodology |
| Sparse Pruning | None | >20% | VRAP post quantization methodology |
1from transformers import AutoModelForCausalLM, AutoTokenizer
2
3model = AutoModelForCausalLM.from_pretrained(
4 "selode-ai/Qwen-3.6-35B-A3B-VRAP-4-bit-AWQ-21.2GB",
5 device_map="auto",
6 trust_remote_code=True,
7)
8tokenizer = AutoTokenizer.from_pretrained("selode-ai/Qwen-3.6-35B-A3B-VRAP-4-bit-AWQ-21.2GB")
9
10messages = [
11 {"role": "user", "content": "Hello!"}
12]
13text = tokenizer.apply_chat_template(messages, tokenize=False, add_generation_prompt=True)
14model_inputs = tokenizer([text], return_tensors="pt").to(model.device)
15generated_ids = model.generate(**model_inputs, max_new_tokens=512)
16print(tokenizer.decode(generated_ids[0][model_inputs.input_ids.shape[1]:], skip_special_tokens=True))1from vllm import LLM, SamplingParams
2
3llm = LLM(model="selode-ai/Qwen-3.6-35B-A3B-VRAP-4-bit-AWQ-21.2GB", trust_remote_code=True)
4sampling_params = SamplingParams(temperature=0.7, top_p=0.95, max_tokens=1024)
5
6outputs = llm.generate("Hello, how are you?")
7for output in outputs:
8 print(output.outputs[0].text)1from openai import OpenAI
2client = OpenAI(
3 base_url="http://localhost:8000/v1",
4 api_key="not-needed",
5)
6
7messages = [
8 {"role": "user", "content": "Hello!"}
9]
10response = client.chat.completions.create(
11 model="VRAP-Qwen3.6-35B-A3B-4bit-AWQ",
12 messages=messages,
13 temperature=0.7,
14 max_tokens=512,
15)
16print(response.choices[0].message.content)1@misc{qwen3.6-35b-a3b,
2 title={Qwen3.6-35B-A3B},
3 author={Qwen Team},
4 year={2026},
5 url={https://qwen.ai}
6}