Image-to-Image
MLX
seedvr2
mlx-swift
super-resolution
image-upscaling
diffusion
quantized
apple-silicon
Instructions to use mlx-community/SeedVR2-3B-mlx-int8 with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- MLX
How to use mlx-community/SeedVR2-3B-mlx-int8 with MLX:
# Download the model from the Hub pip install huggingface_hub[hf_xet] huggingface-cli download --local-dir SeedVR2-3B-mlx-int8 mlx-community/SeedVR2-3B-mlx-int8
- Notebooks
- Google Colab
- Kaggle
- Local Apps Settings
- LM Studio
metadata
license: apache-2.0
library_name: mlx
tags:
- mlx
- mlx-swift
- super-resolution
- image-upscaling
- diffusion
- quantized
- apple-silicon
pipeline_tag: image-to-image
SeedVR2-3B (MLX-Swift) — int8
int8-quantized MLX-Swift weights for SeedVR2-3B (ByteDance, ICLR 2026) — one-step
diffusion super-resolution. The on-device variant: ~half the size, near-lossless.
For the seedvr2-mlx-swift package
(MLXEngine / ForgeUpscaler). fp16 base: SeedVR2-3B-mlx.
- Quantization: transformer DiT Linears int8, group size 64 (the small
vid_in.projand the VAE are kept fp16). Declared inconfig.json("quantization": {"bits": 8, "group_size": 64}); the loader applies it automatically. - Files:
transformer.safetensors(int8, ~3.9 GB vs 7.9 GB fp16) ·vae.safetensors(fp16) ·pos_emb.safetensors·config.json. - Quality: int8
t_outcosine vs fp16 = 0.9999749 (near-lossless; int4 by contrast degrades this model to ~22.7 dB — use int8 on-device). Reload round-trip cosine 1.0.
Usage
import SeedVR2MLX
let upscaler = try SeedVR2Upscaler(directory: weightsDir) // detects int8 from config, applies quantize on load
let out = upscaler.upscale(processedImage: img, seed: 42)
Provenance & license
ByteDance Seed (SeedVR2, ICLR 2026, ByteDance-Seed/SeedVR, Apache-2.0)
→ fp16 numz/SeedVR2_comfyUI → MLX ref
filipstrand/mflux → MLX-Swift port + int8 conversion by
MVS Collective (xocialize). Format/precision-converted weights (not a new model); Apache-2.0 applies.