Instructions to use XpressAI/Qwen3.6-35B-A3B-ExpertClone-Logic-UD-Q4_K_XL-GGUF with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- llama-cpp-python
How to use XpressAI/Qwen3.6-35B-A3B-ExpertClone-Logic-UD-Q4_K_XL-GGUF with llama-cpp-python:
# !pip install llama-cpp-python from llama_cpp import Llama llm = Llama.from_pretrained( repo_id="XpressAI/Qwen3.6-35B-A3B-ExpertClone-Logic-UD-Q4_K_XL-GGUF", filename="Qwen3.6-35B-A3B-expert_clone_logic-UD-Q4_K_XL.gguf", )
llm.create_chat_completion( messages = "No input example has been defined for this model task." )
- Notebooks
- Google Colab
- Kaggle
- Local Apps Settings
- llama.cpp
How to use XpressAI/Qwen3.6-35B-A3B-ExpertClone-Logic-UD-Q4_K_XL-GGUF with llama.cpp:
Install (macOS, Linux)
curl -LsSf https://llama.app/install.sh | sh # Start a local OpenAI-compatible server with a web UI: llama serve -hf XpressAI/Qwen3.6-35B-A3B-ExpertClone-Logic-UD-Q4_K_XL-GGUF:UD-Q4_K_XL # Run inference directly in the terminal: llama cli -hf XpressAI/Qwen3.6-35B-A3B-ExpertClone-Logic-UD-Q4_K_XL-GGUF:UD-Q4_K_XL
Install from WinGet (Windows)
winget install llama.cpp # Start a local OpenAI-compatible server with a web UI: llama serve -hf XpressAI/Qwen3.6-35B-A3B-ExpertClone-Logic-UD-Q4_K_XL-GGUF:UD-Q4_K_XL # Run inference directly in the terminal: llama cli -hf XpressAI/Qwen3.6-35B-A3B-ExpertClone-Logic-UD-Q4_K_XL-GGUF:UD-Q4_K_XL
Use pre-built binary
# Download pre-built binary from: # https://github.com/ggerganov/llama.cpp/releases # Start a local OpenAI-compatible server with a web UI: ./llama-server -hf XpressAI/Qwen3.6-35B-A3B-ExpertClone-Logic-UD-Q4_K_XL-GGUF:UD-Q4_K_XL # Run inference directly in the terminal: ./llama-cli -hf XpressAI/Qwen3.6-35B-A3B-ExpertClone-Logic-UD-Q4_K_XL-GGUF:UD-Q4_K_XL
Build from source code
git clone https://github.com/ggerganov/llama.cpp.git cd llama.cpp cmake -B build cmake --build build -j --target llama-server llama-cli # Start a local OpenAI-compatible server with a web UI: ./build/bin/llama-server -hf XpressAI/Qwen3.6-35B-A3B-ExpertClone-Logic-UD-Q4_K_XL-GGUF:UD-Q4_K_XL # Run inference directly in the terminal: ./build/bin/llama-cli -hf XpressAI/Qwen3.6-35B-A3B-ExpertClone-Logic-UD-Q4_K_XL-GGUF:UD-Q4_K_XL
Use Docker
docker model run hf.co/XpressAI/Qwen3.6-35B-A3B-ExpertClone-Logic-UD-Q4_K_XL-GGUF:UD-Q4_K_XL
- LM Studio
- Jan
- Ollama
How to use XpressAI/Qwen3.6-35B-A3B-ExpertClone-Logic-UD-Q4_K_XL-GGUF with Ollama:
ollama run hf.co/XpressAI/Qwen3.6-35B-A3B-ExpertClone-Logic-UD-Q4_K_XL-GGUF:UD-Q4_K_XL
- Unsloth Studio
How to use XpressAI/Qwen3.6-35B-A3B-ExpertClone-Logic-UD-Q4_K_XL-GGUF with Unsloth Studio:
Install Unsloth Studio (macOS, Linux, WSL)
curl -fsSL https://unsloth.ai/install.sh | sh # Run unsloth studio unsloth studio -H 0.0.0.0 -p 8888 # Then open http://localhost:8888 in your browser # Search for XpressAI/Qwen3.6-35B-A3B-ExpertClone-Logic-UD-Q4_K_XL-GGUF to start chatting
Install Unsloth Studio (Windows)
irm https://unsloth.ai/install.ps1 | iex # Run unsloth studio unsloth studio -H 0.0.0.0 -p 8888 # Then open http://localhost:8888 in your browser # Search for XpressAI/Qwen3.6-35B-A3B-ExpertClone-Logic-UD-Q4_K_XL-GGUF to start chatting
Using HuggingFace Spaces for Unsloth
# No setup required # Open https://huggingface.co/spaces/unsloth/studio in your browser # Search for XpressAI/Qwen3.6-35B-A3B-ExpertClone-Logic-UD-Q4_K_XL-GGUF to start chatting
- Pi
How to use XpressAI/Qwen3.6-35B-A3B-ExpertClone-Logic-UD-Q4_K_XL-GGUF with Pi:
Start the llama.cpp server
# Install llama.cpp: brew install llama.cpp # Start a local OpenAI-compatible server: llama serve -hf XpressAI/Qwen3.6-35B-A3B-ExpertClone-Logic-UD-Q4_K_XL-GGUF:UD-Q4_K_XL
Configure the model in Pi
# Install Pi: npm install -g @mariozechner/pi-coding-agent # Add to ~/.pi/agent/models.json: { "providers": { "llama-cpp": { "baseUrl": "http://localhost:8080/v1", "api": "openai-completions", "apiKey": "none", "models": [ { "id": "XpressAI/Qwen3.6-35B-A3B-ExpertClone-Logic-UD-Q4_K_XL-GGUF:UD-Q4_K_XL" } ] } } }Run Pi
# Start Pi in your project directory: pi
- Hermes Agent new
How to use XpressAI/Qwen3.6-35B-A3B-ExpertClone-Logic-UD-Q4_K_XL-GGUF with Hermes Agent:
Start the llama.cpp server
# Install llama.cpp: brew install llama.cpp # Start a local OpenAI-compatible server: llama serve -hf XpressAI/Qwen3.6-35B-A3B-ExpertClone-Logic-UD-Q4_K_XL-GGUF:UD-Q4_K_XL
Configure Hermes
# Install Hermes: curl -fsSL https://hermes-agent.nousresearch.com/install.sh | bash hermes setup # Point Hermes at the local server: hermes config set model.provider custom hermes config set model.base_url http://127.0.0.1:8080/v1 hermes config set model.default XpressAI/Qwen3.6-35B-A3B-ExpertClone-Logic-UD-Q4_K_XL-GGUF:UD-Q4_K_XL
Run Hermes
hermes
- Atomic Chat new
- OpenClaw new
How to use XpressAI/Qwen3.6-35B-A3B-ExpertClone-Logic-UD-Q4_K_XL-GGUF with OpenClaw:
Start the llama.cpp server
# Install llama.cpp: brew install llama.cpp # Start a local OpenAI-compatible server: llama serve -hf XpressAI/Qwen3.6-35B-A3B-ExpertClone-Logic-UD-Q4_K_XL-GGUF:UD-Q4_K_XL
Configure OpenClaw
# Install OpenClaw: npm install -g openclaw@latest # Register the local server and set it as the default model: openclaw onboard --non-interactive --mode local \ --auth-choice custom-api-key \ --custom-base-url http://127.0.0.1:8080/v1 \ --custom-model-id "XpressAI/Qwen3.6-35B-A3B-ExpertClone-Logic-UD-Q4_K_XL-GGUF:UD-Q4_K_XL" \ --custom-provider-id llama-cpp \ --custom-compatibility openai \ --custom-text-input \ --accept-risk \ --skip-health
Run OpenClaw
openclaw agent --local --agent main --message "Hello from Hugging Face"
- Docker Model Runner
How to use XpressAI/Qwen3.6-35B-A3B-ExpertClone-Logic-UD-Q4_K_XL-GGUF with Docker Model Runner:
docker model run hf.co/XpressAI/Qwen3.6-35B-A3B-ExpertClone-Logic-UD-Q4_K_XL-GGUF:UD-Q4_K_XL
- Lemonade
How to use XpressAI/Qwen3.6-35B-A3B-ExpertClone-Logic-UD-Q4_K_XL-GGUF with Lemonade:
Pull the model
# Download Lemonade from https://lemonade-server.ai/ lemonade pull XpressAI/Qwen3.6-35B-A3B-ExpertClone-Logic-UD-Q4_K_XL-GGUF:UD-Q4_K_XL
Run and chat with the model
lemonade run user.Qwen3.6-35B-A3B-ExpertClone-Logic-UD-Q4_K_XL-GGUF-UD-Q4_K_XL
List all available models
lemonade list
Qwen3.6-35B-A3B โ Specialized Expert Cloning (Logic)
A modified version of Qwen3.6-35B-A3B produced by Specialized Expert Cloning (SEC) โ a new MoE-native weight-surgery technique. No training, no added parameters, no change to the model's architecture or layer count. Router weights for a set of low-usage experts are replaced with copies of logic-specialized experts' weights, so the router has multiple slots that compute the same function for logic-relevant tokens.
Files
| File | Layers | Experts | Active / Token | Size |
|---|---|---|---|---|
Qwen3.6-35B-A3B-expert_clone_logic-UD-Q4_K_XL.gguf |
40 | 256 | 8 | 20.8 GiB |
The base GGUF (no surgery) lives at unsloth/Qwen3.6-35B-A3B-GGUF.
Probe scores
Scores from the internal sweep probe. Sample sizes are small โ directional, not definitive.
| Metric | Base | Cloned | ฮ |
|---|---|---|---|
| Math (GSM8K-style partial credit) | 0.625 | 0.563 | โ0.06 |
| EQ (EQ-Bench-style, 0โ100) | 83.5 | 94.9 | +11.4 |
| Reasoning total (17 probes, 5 categories) | 0.765 | 0.882 | +0.12 |
| โณ causal | 0.00 | 0.67 | +0.67 |
| โณ date, logic, navigation, GSM | all unchanged |
The cloned model recovers a previously-broken reasoning subcategory (causal, 0/3 โ 2/3), gains ~11 points of EQ on our probe, and loses ~6 points of math. We publish it as a working demonstration of the technique, not as a claim of strictly-better performance across all benchmarks.
What's different about MoE
Qwen3.6-35B-A3B is a hybrid Mamba/attention MoE:
- 40 layers,
full_attention_interval = 4 - 256 experts per layer, top-8 routing per token
- One shared expert per layer, always active
- ~35B total params, ~3B active per token
Conventional layer-level surgery (RYS / layer duplication) works on MoE mechanically but provides only marginal gains here โ the base model is already strong on EQ and reasoning, leaving little room to exploit. Instead, we target the router.
How the clone was made
Step 1 โ Expert profiling. Using llama-debug --tensor-filter ffn_moe_topk-\d+
we logged which experts the router fires on 24 short prompts spanning six domains
(math, code, logic, EQ, factual, creative). Per (layer, expert) we computed the
firing rate for each domain and the cross-domain mean rate.
Step 2 โ Donor selection. For each of the 40 layers, we picked the single expert with the highest (logic-rate รท mean-rate) ratio. Many hit the natural ceiling (6ร, meaning the expert fires for logic and essentially nothing else) โ evidence that experts specialize strongly during training.
Step 3 โ Victim selection. For each layer, we picked the expert with the lowest total firing count across all six domains โ i.e., the expert the router almost never chose for any of our probes. These are the "junk" slots we can overwrite without losing capability the model was using.
Step 4 โ Byte-level surgery. In each of the four per-layer MoE tensors
(ffn_gate_inp.weight, ffn_gate_exps.weight, ffn_up_exps.weight,
ffn_down_exps.weight), we copied the donor expert's per-expert slab into the
victim's slot. Because the expert index is the outermost storage axis, this is a
fixed-size byte copy that works uniformly for F32 router weights and for Q4_K /
Q5_K quantized expert weights.
Total: 40 donorโvictim pairs (one per layer) ร 4 tensors = 160 slab copies. No training, no extra parameters, same file size as the base GGUF.
Why this works (hypothesis)
The router computes a softmax over 256 expert logits and routes each token to its top-8 experts. Because a donor and its victim now share identical router columns and identical expert weights, they produce identical logits for any token. So:
- When the donor already scored in the top-8 for a logic-ish token, the victim scores identically and also enters the top-8, displacing what would have been the 8th-ranked expert.
- The gated sum now weights the donor's computation roughly twice as much as it would have, because two of the eight selected slots contain it.
- For tokens the donor was not relevant to, it didn't score high before and still doesn't, so the victim slot also doesn't activate โ no harm done.
Net effect: on-distribution for logic-ish tokens, the donor's contribution is amplified; off-distribution, behavior is nearly unchanged.
Usage
llama.cpp / llama-server
llama-server -m Qwen3.6-35B-A3B-expert_clone_logic-UD-Q4_K_XL.gguf \
-ngl 99 --port 8080
Thinking mode
Qwen3.6 defaults to thinking mode (<think>โฆ</think>). Add /no_think to the
system prompt for fast direct answers.
VRAM
~25 GiB on an A100 with 4k context and Q8 KV cache.
Reproducibility
Tooling and probe prompts are in the llm-circuit-finder repo:
moe_profiler/probes.pyโ the 24 probe promptsmoe_profiler/profile.pyโ runsllama-debugon each prompt and parses routingmoe_profiler/analyze.pyโ computes specialization ratiosexpert_clone.pyโ performs the GGUF tensor surgery
Limitations
- Small probe. Results come from 24 short prompts and a 17-question reasoning suite. Confirming on larger benchmarks (MMLU, BBH, GSM8K, HumanEval, EQ-Bench, TruthfulQA) is needed before drawing strong conclusions.
- Domain-targeted improvement. We targeted logic and observed gains in causal reasoning and EQ. Math regressed slightly. Other subdomains may regress more on tests we did not run.
- Victim selection is a coarse proxy. We treat "lowest total firing across our 6 probe domains" as "unused by the model." A more principled approach (e.g., profiling on a larger corpus, or picking victims whose removal minimally perturbs a small validation perplexity) would likely select better victims.
Credits
- David Ng for RYS, which motivated this work
- Unsloth for the base GGUF quantization
- Qwen team for Qwen3.6-35B-A3B
- llama.cpp for local inference and the tensor-introspection hooks used to profile routing
License
Apache 2.0 (inherited from base model).
- Downloads last month
- 226
4-bit