Instructions to use Brooooooklyn/Qwen-AgentWorld-35B-A3B-UD-Q8_K_XL-mlx with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- MLX
How to use Brooooooklyn/Qwen-AgentWorld-35B-A3B-UD-Q8_K_XL-mlx with MLX:
# Make sure mlx-vlm is installed # pip install --upgrade mlx-vlm from mlx_vlm import load, generate from mlx_vlm.prompt_utils import apply_chat_template from mlx_vlm.utils import load_config # Load the model model, processor = load("Brooooooklyn/Qwen-AgentWorld-35B-A3B-UD-Q8_K_XL-mlx") config = load_config("Brooooooklyn/Qwen-AgentWorld-35B-A3B-UD-Q8_K_XL-mlx") # Prepare input image = ["http://images.cocodataset.org/val2017/000000039769.jpg"] prompt = "Describe this image." # Apply chat template formatted_prompt = apply_chat_template( processor, config, prompt, num_images=1 ) # Generate output output = generate(model, processor, formatted_prompt, image) print(output) - Notebooks
- Google Colab
- Kaggle
- Local Apps Settings
- LM Studio
- Pi
How to use Brooooooklyn/Qwen-AgentWorld-35B-A3B-UD-Q8_K_XL-mlx with Pi:
Start the MLX server
# Install MLX LM: uv tool install mlx-lm # Start a local OpenAI-compatible server: mlx_lm.server --model "Brooooooklyn/Qwen-AgentWorld-35B-A3B-UD-Q8_K_XL-mlx"
Configure the model in Pi
# Install Pi: npm install -g @mariozechner/pi-coding-agent # Add to ~/.pi/agent/models.json: { "providers": { "mlx-lm": { "baseUrl": "http://localhost:8080/v1", "api": "openai-completions", "apiKey": "none", "models": [ { "id": "Brooooooklyn/Qwen-AgentWorld-35B-A3B-UD-Q8_K_XL-mlx" } ] } } }Run Pi
# Start Pi in your project directory: pi
- Hermes Agent new
How to use Brooooooklyn/Qwen-AgentWorld-35B-A3B-UD-Q8_K_XL-mlx with Hermes Agent:
Start the MLX server
# Install MLX LM: uv tool install mlx-lm # Start a local OpenAI-compatible server: mlx_lm.server --model "Brooooooklyn/Qwen-AgentWorld-35B-A3B-UD-Q8_K_XL-mlx"
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 Brooooooklyn/Qwen-AgentWorld-35B-A3B-UD-Q8_K_XL-mlx
Run Hermes
hermes
- OpenClaw new
How to use Brooooooklyn/Qwen-AgentWorld-35B-A3B-UD-Q8_K_XL-mlx with OpenClaw:
Start the MLX server
# Install MLX LM: uv tool install mlx-lm # Start a local OpenAI-compatible server: mlx_lm.server --model "Brooooooklyn/Qwen-AgentWorld-35B-A3B-UD-Q8_K_XL-mlx"
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 "Brooooooklyn/Qwen-AgentWorld-35B-A3B-UD-Q8_K_XL-mlx" \ --custom-provider-id mlx-lm \ --custom-compatibility openai \ --custom-text-input \ --accept-risk \ --skip-health
Run OpenClaw
openclaw agent --local --agent main --message "Hello from Hugging Face"
Qwen-AgentWorld-35B-A3B — UD-Q8_K_XL (mlx-node)
8-bit base mixed-precision quantization of Qwen/Qwen-AgentWorld-35B-A3B for Apple Silicon, using the Unsloth Dynamic per-tensor bit allocation with imatrix-AWQ pre-scaling via mlx-node.
Qwen-AgentWorld-35B-A3B is the first native language world model for agentic environment simulation — a Qwen3.5-VL-MoE (hybrid Gated-DeltaNet + full attention, 256 experts, vision-language) that simulates agentic environments via long chain-of-thought reasoning, predicting the next environment state from an agent's action and interaction history. A single model spans seven interaction domains: MCP (tool calling), Search, Terminal, SWE, Android, Web, and OS. Trained CPT → SFT → RL on Qwen3.5-35B-A3B-Base. (technical report)
| Original (BF16) | This Model | |
|---|---|---|
| Size | ~65 GB | 37 GB |
| Format | SafeTensors (sharded) | SafeTensors (sharded) |
| Precision | BF16 uniform | Mixed 8/8/8/8-bit affine + BF16 (imatrix-AWQ) |
All Variants
| Repo | Format | Size | Decode (tok/s) |
|---|---|---|---|
| Brooooooklyn/Qwen-AgentWorld-35B-A3B-UD-Q3_K_XL-mlx | UD-Q3_K_XL | 17 GB | 112.3 |
| Brooooooklyn/Qwen-AgentWorld-35B-A3B-mxfp4-mlx | MXFP4 | 21 GB | 102.6 |
| Brooooooklyn/Qwen-AgentWorld-35B-A3B-UD-Q4_K_XL-mlx | UD-Q4_K_XL | 22 GB | 99.8 |
| Brooooooklyn/Qwen-AgentWorld-35B-A3B-nvfp4-mlx | NVFP4 | 23 GB | 94.1 |
| Brooooooklyn/Qwen-AgentWorld-35B-A3B-UD-Q5_K_XL-mlx | UD-Q5_K_XL | 26 GB | 95.4 |
| Brooooooklyn/Qwen-AgentWorld-35B-A3B-UD-Q6_K_XL-mlx | UD-Q6_K_XL | 31 GB | 92.7 |
| Brooooooklyn/Qwen-AgentWorld-35B-A3B-mxfp8-mlx | MXFP8 | 36 GB | 91.0 |
| Brooooooklyn/Qwen-AgentWorld-35B-A3B-UD-Q8_K_XL-mlx (this model) | UD-Q8_K_XL | 37 GB | 91.1 |
Benchmarked on a cool Apple M5 Max: median decode throughput over three 512-token generations, with a 60-second idle GPU cooldown after every generation. (Sustained decode on Apple Silicon is thermally sensitive — back-to-back benchmarking on a hot chip can understate throughput by 20–30%, so every model here was measured from a comparable cool start.)
Performance
Steady-state decode: 91.1 tok/s (1.5x vs BF16) on Apple M5 Max. Decode is memory-bandwidth bound on Apple Silicon — fewer bytes per token directly translates to higher throughput. The MoE architecture activates only 8 of 256 experts per token (~3B active out of ~34.7B total), so the active-weight footprint streamed per token is what matters.
Output Quality
Decoded-text quality was verified against the BF16 reference with a multi-judge review of the actual generated output (not a heuristic): a multi-turn factual chat plus a structured reasoning/code task. This UD-Q8_K_XL build produced coherent prose, correct facts, and a correct implementation — no runaway generation, repetition loops, or stray tokens — on par with full precision.
Per-Tensor Quantization
| Weight | Bits | Rationale |
|---|---|---|
embed_tokens |
8-bit affine | KLD ~0.15 — very low sensitivity |
lm_head |
8-bit affine | KLD ~0.05 — safest tensor |
self_attn.q/k/v_proj |
8-bit affine | KLD ~1.5–2.9 — attention-sensitive |
linear_attn.in_proj_qkv/z |
8-bit affine | KLD ~2.9 — SSM input gates |
self_attn.o_proj |
8-bit affine | KLD ~1.5; row-independent qmv for T=0 exactness |
linear_attn.out_proj |
8-bit affine | KLD ~6.0 — worst tensor; kept high |
linear_attn.in_proj_a/b |
8-bit affine | tiny low-rank GDN projections |
switch_mlp.down_proj |
8-bit affine | "slightly more sensitive" than other FFN |
switch_mlp.gate_proj/up_proj |
8-bit affine | bulk of the expert budget |
Router gates (mlp.gate, shared_expert_gate) |
8-bit affine | MoE routing accuracy |
GDN params (A_log, dt_bias) |
bf16 | state-space dynamics |
visual.* (vision tower) |
bf16 | vision encoder kept full precision |
Quantization Strategy
Built on Unsloth Dynamic 2.0 per-tensor KLD analysis: sensitive layers (attention/SSM inputs, down_proj, embeddings/head) get higher bits, while the bulk of FFN expert weights are quantized to the base width. self_attn.o_proj, linear_attn.out_proj, the split low-rank GDN projections (in_proj_a/b) and the MoE router gates are pinned to 8-bit affine (group_size 64). GatedDeltaNet state-space parameters and the vision encoder stay bf16.
imatrix-AWQ: unlike a plain affine quant, these builds apply imatrix activation-aware pre-scaling (AWQ-style) using the unsloth imatrix, so the attention/SSM channels that matter most are scaled before rounding — recovering quality at the lowest bit widths.
Architecture
| Parameter | Value |
|---|---|
| Total parameters | |
| Hidden size | 2,048 |
| Layers | 40 (30 linear GatedDeltaNet + 10 full attention, interval 4) |
| Attention heads | 16 (2 KV heads, GQA 8:1) |
| Head dimension | 256 |
| Experts | 256 per MoE layer, top-8 routing |
| Vocab size | 248,320 |
| Vision | yes (Qwen3.5-VL vision tower, kept bf16) |
| Max context | 262,144 tokens |
Usage
import { loadSession } from '@mlx-node/lm';
const session = await loadSession('./Qwen-AgentWorld-35B-A3B-UD-Q8_K_XL-mlx');
for await (const event of session.sendStream('An agent runs `ls -la` in /home/user. Predict the terminal output and the resulting environment state.', {
config: { maxNewTokens: 2048, temperature: 0.6, reasoningEffort: 'low' },
})) {
if (!event.done) process.stdout.write(event.text);
}
How It Was Made
mlx convert \
-i Qwen-AgentWorld-35B-A3B \
-o Qwen-AgentWorld-35B-A3B-UD-Q8_K_XL-mlx \
-q --q-recipe unsloth --q-bits 8\
--imatrix-path imatrix_unsloth.gguf_file
The Unsloth recipe's per-tensor bit tiers were applied with imatrix-AWQ pre-scaling (imatrix from unsloth/Qwen-AgentWorld-35B-A3B-GGUF), so activation-weighted channels are scaled before quantization. 7-bit tiers are snapped up to 8-bit (MLX affine supports 2/3/4/5/6/8-bit).
Acknowledgments
- Qwen Team — For the Qwen-AgentWorld model and the Qwen3.5 base architecture
- Unsloth — Per-layer KLD bit-allocation (Dynamic 2.0) and the imatrix used for AWQ pre-scaling
- Apple MLX — For the Metal-accelerated ML framework
License
Apache-2.0 (inherited from base model).
- Downloads last month
- 782
8-bit
Model tree for Brooooooklyn/Qwen-AgentWorld-35B-A3B-UD-Q8_K_XL-mlx
Base model
Qwen/Qwen3.5-35B-A3B-Base