JANG
The GGUF for MLX
128 GB Mac에서 3970억 파라미터. 92% MMLU. MLX는 로드조차 할 수 없습니다.
JANG_1L은 397B 모델을 112 GB에 압축합니다 — 128 GB MacBook Pro에서 추론 모드로 86.5% MMLU를 달성합니다. MLX는 2~3 bits에서 NaN을 출력합니다. MiniMax 230B? MLX는 모든 bit 수준에서 26.5%입니다. Nemotron-H 120B? MLX 3-bit는 완전히 고장입니다. JANG만이 Apple Silicon에서 이 모델들을 양자화하여 실행할 수 있습니다.
JANG은 attention에 더 많은 bits를, MLP에 더 적은 bits를 할당하여, standard quantization이 쓰레기나 NaN을 생성하는 곳에서도 모델이 정상 작동합니다. 같은 속도, 같은 Metal 커널 — 더 나은 출력. Apache 2.0 오픈소스.
레이어 민감도에 기반한 가변 비트 폭
Standard quantization은 모든 텐서에 동일한 비트 폭을 적용합니다. Attention 레이어(파라미터의 약 12%)는 MLP 레이어보다 정밀도 손실에 더 민감합니다 — 너무 공격적으로 양자화하면 attention 스코어가 평탄해지고, 위치 인코딩이 저하되며, 출력이 퇴화됩니다.
JANG은 텐서를 민감도 등급으로 분류하고 그에 따라 비트 폭을 할당합니다. Attention 레이어는 5~8 bits를 할당받고 MLP는 2~4 bits로 압축됩니다. 오버헤드는 평균 약 0.3 bits 추가입니다.
JANG vs MLX — 나란히 비교
각 JANG 모델을 크기가 가장 비슷한 MLX 방법과 비교. 200문항 MMLU (과목당 20문항 × 10과목), thinking/reasoning은 표시된 곳에서 활성화, temp 0.0. Apple M4 Max 128 GB / M4 Ultra 256 GB.
Qwen3.5-397B-A17B — 397 billion parameters — JANG vs MLX
397B on a 128 GB Mac — first ever. JANG_1L at 112 GB disk (120 GB GPU peak) fits on a 128 GB MacBook Pro and scores 86.5% MMLU with reasoning. MLX at 2-bit and 3-bit produces NaN — the model is too complex for standard quantization at low bit widths. MLX 4-bit runs at 94% but needs ~280 GB, far beyond any laptop. JANG_2L at 187 GB hits 92% on an M4 Ultra 256 GB.
Nemotron-3-Super-120B-A12B — NVIDIA Hybrid Mamba-2 SSM + Latent MoE + Attention
First working Nemotron-H quantization for Apple Silicon. NVIDIA’s hybrid architecture combines Mamba-2 SSM, Latent MoE, and standard attention — MLX 3-bit is broken on it. JANG_4M at 63 GB scores 93% MMLU with reasoning at 55 tok/s. JANG_2L fits on a 64 GB Mac at 43 GB with 86% MMLU.
MiniMax-M2.5 (230B) — JANG vs MLX
MLX is completely broken on MiniMax at every bit level — 4-bit (26.5%), 3-bit (24.5%), and 2-bit (25%) all score near random. JANG_2L at just 2.10 bits is the only way to run MiniMax quantized on Apple Silicon.
Qwen3.5-122B-A10B — ~4 bits
Qwen3.5-122B-A10B — ~2 bits
Qwen3.5-35B-A3B — ~4 bits
Qwen3.5-35B-A3B — ~2 bits
Download: All models on HuggingFace — 397B, Nemotron-H 120B, 122B, 35B, MiniMax 230B, and more
기본 프롬프트에 대한 3자 비교
6개 사실 질문으로 나란히 비교. 모든 방법이 MLX의 네이티브 Metal 커널을 사용. Temperature 0.0, 최대 80 tokens. M4 Max 128 GB.
MLX’s mixed_2_6 mode protects select v_proj and down_proj layers at 6-bit, but does not account for GatedDeltaNet linear attention layers, MoE expert routing tensors, or hybrid architecture components. JANG’s tier system classifies these architecture-specific tensors explicitly.
On this hybrid MoE model, MLX mixed_2_6 does not improve over 2-bit. The mixed_2_6 heuristic targets v_proj and down_proj in standard transformer layers but misses GatedDeltaNet attention and MoE routing tensors that are critical for this architecture.
크기, 속도, 점수 — JANG vs MLX
| 모델 | 방법 | Bits | 크기 | MMLU |
|---|---|---|---|---|
| Qwen3.5-397B-A17B | JANG_2L | ~2.x | 187 GB | 92% |
| JANG_1L | ~2.2 | 112 GB | 86.5% | |
| MLX 4-bit | 4.0 | ~280 GB | 94% | |
| MLX 2-bit / 3-bit | 2-3 | — | NaN | |
| Nemotron-3-Super-120B | JANG_4M | ~4.2 | 63 GB | 93% |
| JANG_2L | ~2.x | 43 GB | 86% | |
| MLX 3-bit | 3.0 | — | Broken | |
| Qwen3.5-122B-A10B | JANG_2M | 2.14 | 44.7 GB | 79% |
| JANG_1L | 2.24 | 46.0 GB | 73% | |
| JANG_2L | 2.19 | 45.3 GB | — | |
| MLX mixed_2_6 | ~2.5 | 45 GB | 46% | |
| 2-bit | 2.0 | 36 GB | 56.5% | |
| Qwen3.5-35B-A3B | JANG_4K | 3.99 | 20.1 GB | 77.5% |
| MLX 4-bit | 4.0 | 18.2 GB | 75.5% | |
| JANG_4S | 4.04 | 20.4 GB | 82% | |
| JANG_2S | 2.17 | 12.8 GB | 65.5% | |
| JANG_2L v2 | 2.28 | 13.3 GB | 56% | |
| MLX mixed_2_6 | ~2.5 | 12.8 GB | ~40% | |
| MiniMax-M2.5 (230B) | JANG_2S | 2.06 | 81.6 GB | — |
| JANG_2L | 2.10 | 82.5 GB | 74% | |
| MLX 4-bit | 4.0 | 119.8 GB | 26.5% | |
| MLX 2-bit | 2.0 | 66.6 GB | 25.0% | |
Apple M4 Max 128 GB / M4 Ultra 256 GB · MMLU: 200-question (10 subjects × 20), reasoning enabled for 397B and Nemotron, thinking disabled for others · 2026-03
Qwen3.5-397B: JANG_1L at 112 GB (120 GB GPU peak) fits on 128 GB Macs — 86.5% MMLU with reasoning, 36 tok/s. JANG_2L at 187 GB hits 92% on M4 Ultra 256 GB. MLX 2/3-bit: NaN. MLX 4-bit: 94% but ~280 GB.
Nemotron-3-Super-120B: JANG_4M at 63 GB scores 93% MMLU, 55 tok/s. JANG_2L at 43 GB scores 86%, fits 64 GB Macs. MLX 3-bit: broken. First working Nemotron-H quantization for Apple Silicon.
MiniMax-M2.5 (230B): JANG_2L scores 74% MMLU at 82.5 GB vs MLX 4-bit at 26.5% (119.8 GB). MLX broken at ALL bit levels (26.5%, 24.5%, 25%). JANG is the only way to run MiniMax quantized.
Pipeline verification: JANG_4S matches MLX 4-bit exactly on 35B MMLU (82% = 82%), confirming the quantization pipeline is lossless at matched bit widths.
Dense 모델 비교 (1B–7B)
품질 저하 경계에서의 비교 — standard quantization이 퇴화된 출력을 생성하기 시작하는 비트 폭. 같은 프롬프트, 같은 temperature, 같은 모델. 모두 M4 Max에서.
At 2.5 effective bits, JANG_2S gets 6/6 correct while 2-bit gets 0/6. JANG protects the 8 critical full-attention layers at 6-bit while compressing the 24 linear-attention layers and all MLP at 2-bit.
하이라이트 — 7B 모델
JANG_3M (3.4 bits)
3-bit (3.5 bits)
JANG_3L (3.6 bits)
3-bit (3.5 bits)
JANG_4S (4.1 bits)
4-bit (4.5 bits)
JANG_2S (2.5 bits)
2-bit (2.5 bits)
추가 7B 결과
JANG_3L (3.6 bits)
3-bit
JANG_3M (3.4 bits)
3-bit
JANG_3L (3.6 bits)
3-bit
JANG_2M (2.7 bits)
2-bit
JANG_4L (4.5 bits)
4-bit
JANG_2S (2.5 bits)
2-bit
소형 모델 (1B–3B)
JANG_3M (3.4 bits)
3-bit
JANG_2S (2.5 bits)
2-bit
JANG_4S (4.1 bits)
4-bit
JANG_4L (4.5 bits)
4-bit
JANG (4.12 bits)
4-bit
JANG_4S (4.1 bits)
4-bit
JANG 3.37 bits가 4-bit을 능가합니다
Qwen2.5-3B · “What is 2+2?” · Logit MSE vs bf16 reference · Lower is better
Apple M4 Max · 107 GB unified memory · affine quantization · group_size=64
JANG at 3.37 bits (MSE 11.10) beats 4.00 bits (MSE 11.31) — 16% fewer bits with better quality.
테스트된 모든 모델
| 모델 | 파라미터 | 아키텍처 | 테스트 | 실패 모드 |
|---|---|---|---|---|
| Qwen3.5-397B-A17B | 397B | MoE, Hybrid | MMLU | MLX 2/3-bit → NaN |
| Nemotron-3-Super-120B | 120B | Hybrid Mamba-2 SSM + Latent MoE + Attn | MMLU | MLX 3-bit → broken |
| MiniMax-M2.5 | 230B | MoE 256 experts, top-8 | MMLU | MLX all bits → random (25%) |
| Qwen3.5-122B-A10B | 122B | MoE 256 experts, Hybrid | MMLU | 2-bit → 56.5%, mixed_2_6 → 46% |
| Qwen3.5-35B-A3B | 35B | MoE 256 experts, Hybrid GDN+FA | MMLU+QA | 2-bit → degenerate, mixed_2_6 → broken |
| Qwen3.5-4B | 4B | Hybrid: 24 linear + 8 full attn | 6 | 2-bit → 0/6 correct |
| Mistral-7B | 7B | Mistral GQA 4:1, sliding window | 13 | 3-bit → number sequences |
| Qwen2.5-7B | 7B | Qwen GQA 4:1 | 9 | 3-bit → repetition loop |
| Qwen2.5-3B | 3B | Qwen GQA 8:1 | 6 | 4-bit → echo/loop |
| SmolLM2-1.7B | 1.7B | Llama MHA | 11 | 3-bit → number sequences |
| TinyLlama-1.1B | 1.1B | Llama GQA 8:1 | 11 | 4-bit → topic derail |
| Phi-2 | 2.7B | Phi MHA, GELU MLP | 9 | 2-bit → empty output |
Apple M4 Max 128 GB / M4 Ultra 256 GB · MLX affine quantization · group_size=64 · same tokenizer · same prompt template · 12 models · 1B to 397B
JANG_{bits}{size}
초압축부터 거의 무손실까지 11개 사전 정의 프로필. S = Small (최대 압축), M = Medium (균형), L = Large (최고 품질).
| 프로필 | MLP | Attention | Embed | lm_head | 평균 Bits |
|---|---|---|---|---|---|
| JANG_1L | 2-bit | 8-bit | 8-bit | 8-bit | ~2.2 |
| JANG_2S | 2-bit | 6-bit | 4-bit | 6-bit | ~2.5 |
| JANG_2M | 2-bit | 8-bit | 4-bit | 8-bit | ~2.7 |
| JANG_2L | 2-bit | 8-bit | 6-bit | 8-bit | ~2.9 |
| JANG_3S | 3-bit | 4-bit | 4-bit | 6-bit | ~3.1 |
| JANG_3M | 3-bit | 6-bit | 4-bit | 6-bit | ~3.4 |
| JANG_3L | 3-bit | 8-bit | 4-bit | 8-bit | ~3.6 |
| JANG_4S | 4-bit | 5-bit | 4-bit | 6-bit | ~4.1 |
| JANG_4M | 4-bit | 6-bit | 4-bit | 6-bit | ~4.2 |
| JANG_4L | 4-bit | 8-bit | 4-bit | 8-bit | ~4.5 |
| JANG_6M | 6-bit | 8-bit | 6-bit | 8-bit | ~6.2 |
Swift + Metal 추론 엔진
14개 커스텀 Metal GPU 커널. Zero-copy mmap 로딩. Decode와 prefill을 위한 융합 역양자화.
Dequant + GEMV
단일 토큰 decode를 위한 역양자화 + 행렬-벡터 곱셈 융합. 모든 비트 폭(2, 3, 4, 5, 6, 8)을 하나의 커널에서 처리합니다.
Dequant + GEMM
프롬프트 prefill을 위한 역양자화 + 행렬-행렬 곱셈 융합. Apple GPU threadgroup 메모리에 최적화된 타일링 처리.
GQA Attention
Grouped-query attention decode + causal prefill. 표준, sliding window, 하이브리드 아키텍처를 지원합니다.
RMSNorm + RoPE
정규화와 rotary position embedding을 융합. 전통적 및 비전통적 RoPE 변형을 지원합니다.
SwiGLU
게이트 피드포워드 네트워크를 위한 SiLU 활성화 + 요소별 곱셈 융합.
양자화된 Embedding
양자화된 가중치에서 직접 embedding을 조회합니다. 전체 테이블 역양자화가 필요 없습니다.
모든 모델 변환
HuggingFace 모델을 .jang 포맷으로 변환하는 Python 도구입니다. 프로필을 선택하고, 양자화 방법을 선택한 후 실행하면 됩니다. RTN, MSE 최적 그리드 서치, GPTQ (Hessian 기반) quantization을 지원합니다.
6개 이상의 아키텍처 계열 지원: Llama, Qwen, Gemma, Phi, Mistral, Mamba/SSM, MoE, Qwen 3.5 등 하이브리드 모델.
더 적은 RAM으로 더 큰 모델 실행
JANG_3M은 7B 이상 모델에서 4-bit 대비 25%를 절약하면서 동등한 품질을 유지합니다. 이전에는 불가능했던 모델을 unified memory에 적재할 수 있습니다.
HuggingFace의 사전 양자화 모델
다운로드 준비 완료. JANG 로더를 통해 vMLX Engine / MLX Studio와 호환됩니다.
MLX Studio에서 JANG 모델 실행
MLX Studio는 OpenAI 호환 API, prefix caching, paged KV cache, KV quantization (q4/q8), continuous batching, 20개 이상의 에이전트 코딩 도구와 함께 네이티브 JANG 지원을 제공합니다. 모든 .jang 모델을 로드하고 로컬에서 서빙할 수 있습니다 — Cursor, Continue, Aider 및 모든 OpenAI API 클라이언트와 호환됩니다. vMLX Engine 기반, 현재 오픈소스 — pip install vmlx.