File size: 2,407 Bytes
0f988d6
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
923c851
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
---
license: apache-2.0
library_name: mlx
base_model: poolside/Laguna-XS.2
pipeline_tag: text-generation
tags:
  - mxfp4
  - mlx
  - apple-silicon
  - laguna
  - moe
  - agentic-coding
  - quantized
---

![Osaurus](osaurus-x-banner.png)

# OsaurusAI/Laguna-XS.2-mxfp4

Quantized **poolside Laguna-XS.2** for Apple Silicon (MLX) — agentic-coding 33B-active-3B Mixture-of-Experts.

| | |
|--|--|
| **Source** | [poolside/Laguna-XS.2](https://huggingface.co/poolside/Laguna-XS.2) |
| **Architecture** | `laguna` (40 layers, 256 routed experts top-8 + 1 shared, hybrid SWA+full attention) |
| **Quant format** | MXFP4 (mlx 4-bit affine, group_size=32) |
| **Bundle size on disk** | **20.93 GB** (21 safetensors shards) |
| **License** | Apache-2.0 (inherits from upstream) |
| **Modalities** | Text in / text out (no vision, no audio, no video) |

## What's quantized

- All routed-expert linears (3D stacked), attention, dense layer-0 MLP, shared-expert, embed_tokens → **mlx 4-bit affine** (`bits=4 group_size=32`)
- lm_head + all RMSNorms + router gate + `e_score_correction_bias` → fp16 passthrough


## Architecture notes (preserved verbatim from upstream)

- 40 layers; per-layer attention head count alternates **48 (full-attn) / 64 (SWA)** with shared 8 KV heads (GQA)
- 1:3 ratio of full-attn ↔ sliding-window-attention (window = 512), explicit `layer_types` list
- Dual RoPE: full-attn = YaRN (base 500K, factor 32, original 4096, β_fast 64, β_slow 1, partial_rotary 0.5); SWA = default (base 10K, full rotary)
- 256 routed experts (top-8) + 1 shared expert; sigmoid + per-head gating (`g_proj`); `q_norm`/`k_norm` in attention
- 131k context window
- Layer 0 dense MLP; layers 1-39 sparse MoE

## Run on Apple Silicon

```bash
pip install mlx safetensors transformers
python -m jang_tools.laguna.runtime \
    --src ~/.mlxstudio/models/OsaurusAI/Laguna-XS.2-mxfp4 \
    --prompt "def fibonacci(n):" --max-new 64
```

The runtime auto-detects `weight_format` (mxtq / mxfp4 / bf16) and loads the matching path (`jang_tools/laguna/weight_loader_bf16.py`).

## Build

Reproduce locally from the bf16 source:

```bash
python -m jang_tools.convert_laguna_mxfp4 \
    ~/.mlxstudio/models/_sources/Laguna-XS.2 \
    ~/.mlxstudio/models/OsaurusAI/Laguna-XS.2-mxfp4
```

## Credits

Quantized by **Jinho Jang** ([eric@osaurus.ai](mailto:eric@osaurus.ai)). MLX-native pipeline, runs on M-series Macs.