Views
No views yet
facebook/sapiens2-seg-0.4b at mxfp8 (microscaling fp8, group_size=32) precision, converted with mlx-vlm.pip install -U mlx-vlm1from pathlib import Path
2from PIL import Image
3import numpy as np
4from mlx_vlm.utils import load_model
5from mlx_vlm.models.sapiens2.processing_sapiens2 import Sapiens2Processor
6from mlx_vlm.models.sapiens2.generate import Sapiens2Predictor
7
8model = load_model(Path("mlx-community/sapiens2-seg-0.4b-mxfp8"))
9processor = Sapiens2Processor.from_pretrained("mlx-community/sapiens2-seg-0.4b-mxfp8")
10predictor = Sapiens2Predictor(model, processor)
11
12result = predictor.predict(Image.open("person.jpg"))
13# result.mask (orig_h, orig_w) int32 class indices
14# result.seg_logits (29, H_out, W_out) raw logits
15
16print("active classes:", np.unique(result.mask).tolist())
17Image.fromarray(result.mask.astype(np.uint8)).save("mask.png")1# 1. Stage a float32 MLX directory from the Facebook checkpoint
2python -m mlx_vlm.models.sapiens2.convert \
3 --hf-repo facebook/sapiens2-seg-0.4b \
4 --out ./sapiens2-seg-0.4b-fp32-mlx \
5 --dtype float32
6
7# 2. Quantize + upload via the main mlx_vlm.convert CLI
8python -m mlx_vlm.convert \
9 --hf-path ./sapiens2-seg-0.4b-fp32-mlx \
10 --mlx-path ./sapiens2-seg-0.4b-mxfp8 \
11 --quantize --q-bits 8 --q-group-size 32 --q-mode mxfp8 \
12 --upload-repo mlx-community/sapiens2-seg-0.4b-mxfp81@article{khirodkarsapiens2,
2 title = {Sapiens2},
3 author = {Khirodkar, Rawal and Wen, He and Martinez, Julieta and Dong, Yuan
4 and Su, Zhaoen and Saito, Shunsuke},
5 journal= {arXiv preprint arXiv:2604.21681},
6 year = {2026}
7}