biali Aatricks commited on
Commit
e28640c
·
0 Parent(s):

Duplicate from Aatricks/bonsai-image-ternary-4B-FLUX2-klein-GGUF

Browse files

Co-authored-by: Emilio Melis <Aatricks@users.noreply.huggingface.co>

.gitattributes ADDED
@@ -0,0 +1,36 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ *.7z filter=lfs diff=lfs merge=lfs -text
2
+ *.arrow filter=lfs diff=lfs merge=lfs -text
3
+ *.bin filter=lfs diff=lfs merge=lfs -text
4
+ *.bz2 filter=lfs diff=lfs merge=lfs -text
5
+ *.ckpt filter=lfs diff=lfs merge=lfs -text
6
+ *.ftz filter=lfs diff=lfs merge=lfs -text
7
+ *.gz filter=lfs diff=lfs merge=lfs -text
8
+ *.h5 filter=lfs diff=lfs merge=lfs -text
9
+ *.joblib filter=lfs diff=lfs merge=lfs -text
10
+ *.lfs.* filter=lfs diff=lfs merge=lfs -text
11
+ *.mlmodel filter=lfs diff=lfs merge=lfs -text
12
+ *.model filter=lfs diff=lfs merge=lfs -text
13
+ *.msgpack filter=lfs diff=lfs merge=lfs -text
14
+ *.npy filter=lfs diff=lfs merge=lfs -text
15
+ *.npz filter=lfs diff=lfs merge=lfs -text
16
+ *.onnx filter=lfs diff=lfs merge=lfs -text
17
+ *.ot filter=lfs diff=lfs merge=lfs -text
18
+ *.parquet filter=lfs diff=lfs merge=lfs -text
19
+ *.pb filter=lfs diff=lfs merge=lfs -text
20
+ *.pickle filter=lfs diff=lfs merge=lfs -text
21
+ *.pkl filter=lfs diff=lfs merge=lfs -text
22
+ *.pt filter=lfs diff=lfs merge=lfs -text
23
+ *.pth filter=lfs diff=lfs merge=lfs -text
24
+ *.rar filter=lfs diff=lfs merge=lfs -text
25
+ *.safetensors filter=lfs diff=lfs merge=lfs -text
26
+ saved_model/**/* filter=lfs diff=lfs merge=lfs -text
27
+ *.tar.* filter=lfs diff=lfs merge=lfs -text
28
+ *.tar filter=lfs diff=lfs merge=lfs -text
29
+ *.tflite filter=lfs diff=lfs merge=lfs -text
30
+ *.tgz filter=lfs diff=lfs merge=lfs -text
31
+ *.wasm filter=lfs diff=lfs merge=lfs -text
32
+ *.xz filter=lfs diff=lfs merge=lfs -text
33
+ *.zip filter=lfs diff=lfs merge=lfs -text
34
+ *.zst filter=lfs diff=lfs merge=lfs -text
35
+ *tfevents* filter=lfs diff=lfs merge=lfs -text
36
+ bonsai-flux2-klein-ternary-q2_k.gguf filter=lfs diff=lfs merge=lfs -text
README.md ADDED
@@ -0,0 +1,51 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ ---
2
+ license: apache-2.0
3
+ base_model: prism-ml/bonsai-image-ternary-4B-unpacked
4
+ tags:
5
+ - flux
6
+ - flux2
7
+ - text-to-image
8
+ - gguf
9
+ - stable-diffusion.cpp
10
+ - on-device
11
+ - android
12
+ library_name: gguf
13
+ pipeline_tag: text-to-image
14
+ ---
15
+
16
+ # Bonsai Image (Ternary, FLUX.2 Klein 4B) — Q2_K GGUF
17
+
18
+ A GGUF conversion of **PrismML's Bonsai Image** ternary diffusion transformer
19
+ ([`prism-ml/bonsai-image-ternary-4B-unpacked`](https://huggingface.co/prism-ml/bonsai-image-ternary-4B-unpacked)),
20
+ quantized to **Q2_K** so it runs on-device with
21
+ [stable-diffusion.cpp](https://github.com/leejet/stable-diffusion.cpp) (and the
22
+ [llmedge](https://github.com/Aatricks/llmedge) Android library).
23
+
24
+ Bonsai Image is FLUX.2 Klein 4B fine-tuned with quantization-aware training (QAT) to ternary
25
+ weights. Its official releases ship only in MLX (Apple) and GemLite (CUDA) packings, neither of
26
+ which loads on Android. This is the **diffusion transformer only**, in the BFL tensor layout
27
+ sdcpp expects, quantized to Q2_K (~1.3 GB).
28
+
29
+ ## Why Q2_K (not 1-bit)
30
+ ggml's literal ternary types (`tq1_0`/`tq2_0`) load and run, but their per-256-weight scale is too
31
+ coarse for Bonsai's per-128 trained scales and produce degraded output. **Q2_K**'s finer per-16
32
+ sub-block scales preserve the QAT quality at a comparable size.
33
+
34
+ ## Usage (stable-diffusion.cpp)
35
+ Also needs a Qwen3-4B text encoder GGUF and the FLUX.2 VAE:
36
+ ```bash
37
+ sd --diffusion-model bonsai-flux2-klein-ternary-q2_k.gguf \
38
+ --vae flux2-vae.safetensors \
39
+ --llm qwen_3_4b.gguf \
40
+ -p "a red fox in snow, detailed, 8k" \
41
+ --cfg-scale 1.0 --steps 4 --offload-to-cpu --diffusion-fa --vae-tiling
42
+ ```
43
+
44
+ ## How it was made
45
+ 1. `scripts/convert_bonsai_flux2_to_bfl.py` (in llmedge): Bonsai diffusers transformer → BFL naming
46
+ (renames + fuses the double-block `to_q/k/v` into `*_attn.qkv`).
47
+ 2. `sd -M convert -m bonsai-flux2-bfl.safetensors --type q2_K -o <this file>`.
48
+
49
+ ## License
50
+ Apache-2.0, inherited from the base model (PrismML / Deepgrove). All credit for the model and its
51
+ QAT training goes to PrismML; this repo only redistributes a GGUF quantization.
bonsai-flux2-klein-ternary-q2_k.gguf ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:409a9db80c65d2c5b24f62a2fe0f4b3afc0e47965de9a29a7fe4614713398500
3
+ size 1361094080