Instructions to use zimageapp/seedvr2-1.4b-q4 with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- MLX
How to use zimageapp/seedvr2-1.4b-q4 with MLX:
# Download the model from the Hub pip install huggingface_hub[hf_xet] hf download zimageapp/seedvr2-1.4b-q4 --local-dir seedvr2-1.4b-q4
- Notebooks
- Google Colab
- Kaggle
- Local Apps Settings
- LM Studio
- Atomic Chat
Download validation.json from zimageapp/seedvr2-1.4b-q4: direct link, hf CLI and curl.
- Browser
- Download file 12.8 kB
-
https://huggingface.co/zimageapp/seedvr2-1.4b-q4/resolve/main/validation.json
- Command line
-
hf download hf://zimageapp/seedvr2-1.4b-q4/validation.json
-
curl -L -o validation.json https://huggingface.co/zimageapp/seedvr2-1.4b-q4/resolve/main/validation.json
12.8 kB
| { | |
| "success": true, | |
| "tested_at": "2026-10-18T22:08:58.032875+08:00", | |
| "upstream_revision": "884a50f7072dabc4f3d209dfcd28ac4da430c3ee", | |
| "binary_sha256": "2d10bb00866722ef9f0525c4dcdde989d29444b6123026b303d507c2259b28dc", | |
| "runs": [ | |
| { | |
| "case": "portrait", | |
| "precision": "fp16", | |
| "scale": 2, | |
| "seed": 42, | |
| "steps": 1, | |
| "success": true, | |
| "finite_pixels": true, | |
| "output_size": [ | |
| 1024, | |
| 1024 | |
| ], | |
| "wall_seconds": 46.7221989579848, | |
| "peak_rss_mb": 2554.88, | |
| "command": [ | |
| "/Users/amadeu/Workspace/zimage.swift/zimage.swift/.build/release/ZImageCLI", | |
| "seedvr2", | |
| "--model-path", | |
| "/Volumes/Z1/seedvr2-1.4b/source", | |
| "--pos-emb-path", | |
| "/Volumes/Z1/native-model-packages/seedvr2-1.4b-q4/pos_emb.safetensors", | |
| "--input", | |
| "/Volumes/Z1/native-model-packages/seedvr2-1.4b-q4/examples/portrait-input.png", | |
| "--output", | |
| "/Volumes/Z1/native-model-packages/seedvr2-1.4b-q4/examples/portrait-fp16.png", | |
| "--overwrite", | |
| "--resolution", | |
| "2x", | |
| "--seed", | |
| "42", | |
| "--steps", | |
| "1", | |
| "--tile-size", | |
| "512", | |
| "--tile-overlap", | |
| "64", | |
| "--cache-limit-mb", | |
| "128", | |
| "--memory-limit-mb", | |
| "12000" | |
| ], | |
| "binary_sha256": "2d10bb00866722ef9f0525c4dcdde989d29444b6123026b303d507c2259b28dc", | |
| "transformer_sha256": "58cd0f8e0f0d338ce08255c368dd6befef091f05daa6744cb00b00ba6718e33a", | |
| "input_sha256": "162a02fc6d617ed1a05f90515875c1bb3a220a03dea3dffe2a07ceb6b3936a12", | |
| "output_sha256": "a2c258fbfb77f48b2c4284f4b099b2d18008d8e7f86b5cdce68675b4cbda3f88" | |
| }, | |
| { | |
| "case": "portrait", | |
| "precision": "q4", | |
| "scale": 2, | |
| "seed": 42, | |
| "steps": 1, | |
| "success": true, | |
| "finite_pixels": true, | |
| "output_size": [ | |
| 1024, | |
| 1024 | |
| ], | |
| "wall_seconds": 43.34537412499776, | |
| "peak_rss_mb": 1574.44, | |
| "command": [ | |
| "/Users/amadeu/Workspace/zimage.swift/zimage.swift/.build/release/ZImageCLI", | |
| "seedvr2", | |
| "--model-path", | |
| "/Volumes/Z1/native-model-packages/seedvr2-1.4b-q4", | |
| "--pos-emb-path", | |
| "/Volumes/Z1/native-model-packages/seedvr2-1.4b-q4/pos_emb.safetensors", | |
| "--input", | |
| "/Volumes/Z1/native-model-packages/seedvr2-1.4b-q4/examples/portrait-input.png", | |
| "--output", | |
| "/Volumes/Z1/native-model-packages/seedvr2-1.4b-q4/examples/portrait-q4.png", | |
| "--overwrite", | |
| "--resolution", | |
| "2x", | |
| "--seed", | |
| "42", | |
| "--steps", | |
| "1", | |
| "--tile-size", | |
| "512", | |
| "--tile-overlap", | |
| "64", | |
| "--cache-limit-mb", | |
| "128", | |
| "--memory-limit-mb", | |
| "12000" | |
| ], | |
| "binary_sha256": "2d10bb00866722ef9f0525c4dcdde989d29444b6123026b303d507c2259b28dc", | |
| "transformer_sha256": "297e1a8376ab6b96ad381b71d9fc4d7c6c124738e1f07f1b583e688203253086", | |
| "input_sha256": "162a02fc6d617ed1a05f90515875c1bb3a220a03dea3dffe2a07ceb6b3936a12", | |
| "output_sha256": "032709f9d6039f4cbe36e8c72b0bacd9bec6cba181d8f94432936ce14c242f6b", | |
| "versus_fp16": { | |
| "mae": 0.9742660522460938, | |
| "psnr_db": 43.250770343339234 | |
| } | |
| }, | |
| { | |
| "case": "fox", | |
| "precision": "fp16", | |
| "scale": 2, | |
| "seed": 42, | |
| "steps": 1, | |
| "success": true, | |
| "finite_pixels": true, | |
| "output_size": [ | |
| 1024, | |
| 1024 | |
| ], | |
| "wall_seconds": 43.49916220799787, | |
| "peak_rss_mb": 3134.69, | |
| "command": [ | |
| "/Users/amadeu/Workspace/zimage.swift/zimage.swift/.build/release/ZImageCLI", | |
| "seedvr2", | |
| "--model-path", | |
| "/Volumes/Z1/seedvr2-1.4b/source", | |
| "--pos-emb-path", | |
| "/Volumes/Z1/native-model-packages/seedvr2-1.4b-q4/pos_emb.safetensors", | |
| "--input", | |
| "/Volumes/Z1/native-model-packages/seedvr2-1.4b-q4/examples/fox-input.png", | |
| "--output", | |
| "/Volumes/Z1/native-model-packages/seedvr2-1.4b-q4/examples/fox-fp16.png", | |
| "--overwrite", | |
| "--resolution", | |
| "2x", | |
| "--seed", | |
| "42", | |
| "--steps", | |
| "1", | |
| "--tile-size", | |
| "512", | |
| "--tile-overlap", | |
| "64", | |
| "--cache-limit-mb", | |
| "128", | |
| "--memory-limit-mb", | |
| "12000" | |
| ], | |
| "binary_sha256": "2d10bb00866722ef9f0525c4dcdde989d29444b6123026b303d507c2259b28dc", | |
| "transformer_sha256": "58cd0f8e0f0d338ce08255c368dd6befef091f05daa6744cb00b00ba6718e33a", | |
| "input_sha256": "1fe335b64f5db27a9c3d1b1d8d01f72f2cd2e19eba8a52dfab785a32d25273c7", | |
| "output_sha256": "3a8701a06dcde476cc6dda09c0b57f744e6feb2cf515238e08455a9701ab9d30" | |
| }, | |
| { | |
| "case": "fox", | |
| "precision": "q4", | |
| "scale": 2, | |
| "seed": 42, | |
| "steps": 1, | |
| "success": true, | |
| "finite_pixels": true, | |
| "output_size": [ | |
| 1024, | |
| 1024 | |
| ], | |
| "wall_seconds": 41.25929458299652, | |
| "peak_rss_mb": 1538.38, | |
| "command": [ | |
| "/Users/amadeu/Workspace/zimage.swift/zimage.swift/.build/release/ZImageCLI", | |
| "seedvr2", | |
| "--model-path", | |
| "/Volumes/Z1/native-model-packages/seedvr2-1.4b-q4", | |
| "--pos-emb-path", | |
| "/Volumes/Z1/native-model-packages/seedvr2-1.4b-q4/pos_emb.safetensors", | |
| "--input", | |
| "/Volumes/Z1/native-model-packages/seedvr2-1.4b-q4/examples/fox-input.png", | |
| "--output", | |
| "/Volumes/Z1/native-model-packages/seedvr2-1.4b-q4/examples/fox-q4.png", | |
| "--overwrite", | |
| "--resolution", | |
| "2x", | |
| "--seed", | |
| "42", | |
| "--steps", | |
| "1", | |
| "--tile-size", | |
| "512", | |
| "--tile-overlap", | |
| "64", | |
| "--cache-limit-mb", | |
| "128", | |
| "--memory-limit-mb", | |
| "12000" | |
| ], | |
| "binary_sha256": "2d10bb00866722ef9f0525c4dcdde989d29444b6123026b303d507c2259b28dc", | |
| "transformer_sha256": "297e1a8376ab6b96ad381b71d9fc4d7c6c124738e1f07f1b583e688203253086", | |
| "input_sha256": "1fe335b64f5db27a9c3d1b1d8d01f72f2cd2e19eba8a52dfab785a32d25273c7", | |
| "output_sha256": "e2c1cdddf474ece939f514687bdf8f28e93c53343eeb683d18d320fa3dc614cb", | |
| "versus_fp16": { | |
| "mae": 0.7544158101081848, | |
| "psnr_db": 46.47515984287102 | |
| } | |
| }, | |
| { | |
| "case": "text", | |
| "precision": "fp16", | |
| "scale": 2, | |
| "seed": 42, | |
| "steps": 1, | |
| "success": true, | |
| "finite_pixels": true, | |
| "output_size": [ | |
| 1024, | |
| 1024 | |
| ], | |
| "wall_seconds": 42.84652233400266, | |
| "peak_rss_mb": 3139.89, | |
| "command": [ | |
| "/Users/amadeu/Workspace/zimage.swift/zimage.swift/.build/release/ZImageCLI", | |
| "seedvr2", | |
| "--model-path", | |
| "/Volumes/Z1/seedvr2-1.4b/source", | |
| "--pos-emb-path", | |
| "/Volumes/Z1/native-model-packages/seedvr2-1.4b-q4/pos_emb.safetensors", | |
| "--input", | |
| "/Volumes/Z1/native-model-packages/seedvr2-1.4b-q4/examples/text-input.png", | |
| "--output", | |
| "/Volumes/Z1/native-model-packages/seedvr2-1.4b-q4/examples/text-fp16.png", | |
| "--overwrite", | |
| "--resolution", | |
| "2x", | |
| "--seed", | |
| "42", | |
| "--steps", | |
| "1", | |
| "--tile-size", | |
| "512", | |
| "--tile-overlap", | |
| "64", | |
| "--cache-limit-mb", | |
| "128", | |
| "--memory-limit-mb", | |
| "12000" | |
| ], | |
| "binary_sha256": "2d10bb00866722ef9f0525c4dcdde989d29444b6123026b303d507c2259b28dc", | |
| "transformer_sha256": "58cd0f8e0f0d338ce08255c368dd6befef091f05daa6744cb00b00ba6718e33a", | |
| "input_sha256": "a480bc72ac400b7140cf50956c0e22054f0ea7f2ed6024edcbee6e60627fab1c", | |
| "output_sha256": "dbf7cecb2024c5c42f41bc9c61cfb2b9b8e3592e837b4544dfd659ee80f1eacc" | |
| }, | |
| { | |
| "case": "text", | |
| "precision": "q4", | |
| "scale": 2, | |
| "seed": 42, | |
| "steps": 1, | |
| "success": true, | |
| "finite_pixels": true, | |
| "output_size": [ | |
| 1024, | |
| 1024 | |
| ], | |
| "wall_seconds": 41.21010258299066, | |
| "peak_rss_mb": 1584.88, | |
| "command": [ | |
| "/Users/amadeu/Workspace/zimage.swift/zimage.swift/.build/release/ZImageCLI", | |
| "seedvr2", | |
| "--model-path", | |
| "/Volumes/Z1/native-model-packages/seedvr2-1.4b-q4", | |
| "--pos-emb-path", | |
| "/Volumes/Z1/native-model-packages/seedvr2-1.4b-q4/pos_emb.safetensors", | |
| "--input", | |
| "/Volumes/Z1/native-model-packages/seedvr2-1.4b-q4/examples/text-input.png", | |
| "--output", | |
| "/Volumes/Z1/native-model-packages/seedvr2-1.4b-q4/examples/text-q4.png", | |
| "--overwrite", | |
| "--resolution", | |
| "2x", | |
| "--seed", | |
| "42", | |
| "--steps", | |
| "1", | |
| "--tile-size", | |
| "512", | |
| "--tile-overlap", | |
| "64", | |
| "--cache-limit-mb", | |
| "128", | |
| "--memory-limit-mb", | |
| "12000" | |
| ], | |
| "binary_sha256": "2d10bb00866722ef9f0525c4dcdde989d29444b6123026b303d507c2259b28dc", | |
| "transformer_sha256": "297e1a8376ab6b96ad381b71d9fc4d7c6c124738e1f07f1b583e688203253086", | |
| "input_sha256": "a480bc72ac400b7140cf50956c0e22054f0ea7f2ed6024edcbee6e60627fab1c", | |
| "output_sha256": "af5b10c72c23f4677a7b766bc12be7e862e9bfa6c6d771ee0a55b4c440a4fa4e", | |
| "versus_fp16": { | |
| "mae": 1.0858135223388672, | |
| "psnr_db": 43.09601841994339 | |
| } | |
| }, | |
| { | |
| "case": "portrait-4x", | |
| "precision": "fp16", | |
| "scale": 4, | |
| "seed": 42, | |
| "steps": 1, | |
| "success": true, | |
| "finite_pixels": true, | |
| "output_size": [ | |
| 1024, | |
| 1024 | |
| ], | |
| "wall_seconds": 44.33059312499245, | |
| "peak_rss_mb": 3135.52, | |
| "command": [ | |
| "/Users/amadeu/Workspace/zimage.swift/zimage.swift/.build/release/ZImageCLI", | |
| "seedvr2", | |
| "--model-path", | |
| "/Volumes/Z1/seedvr2-1.4b/source", | |
| "--pos-emb-path", | |
| "/Volumes/Z1/native-model-packages/seedvr2-1.4b-q4/pos_emb.safetensors", | |
| "--input", | |
| "/Volumes/Z1/native-model-packages/seedvr2-1.4b-q4/examples/portrait-4x-input.png", | |
| "--output", | |
| "/Volumes/Z1/native-model-packages/seedvr2-1.4b-q4/examples/portrait-4x-fp16.png", | |
| "--overwrite", | |
| "--resolution", | |
| "4x", | |
| "--seed", | |
| "42", | |
| "--steps", | |
| "1", | |
| "--tile-size", | |
| "512", | |
| "--tile-overlap", | |
| "64", | |
| "--cache-limit-mb", | |
| "128", | |
| "--memory-limit-mb", | |
| "12000" | |
| ], | |
| "binary_sha256": "2d10bb00866722ef9f0525c4dcdde989d29444b6123026b303d507c2259b28dc", | |
| "transformer_sha256": "58cd0f8e0f0d338ce08255c368dd6befef091f05daa6744cb00b00ba6718e33a", | |
| "input_sha256": "a2bc46bccf4a0f0eb2c4d7e0295a2f2b746da8bd51e571e83d7795b038493811", | |
| "output_sha256": "ef68fce10fa7fb0069d6b98b92e65a67b1b500e0bc90e466b202e54a763c6be3" | |
| }, | |
| { | |
| "case": "portrait-4x", | |
| "precision": "q4", | |
| "scale": 4, | |
| "seed": 42, | |
| "steps": 1, | |
| "success": true, | |
| "finite_pixels": true, | |
| "output_size": [ | |
| 1024, | |
| 1024 | |
| ], | |
| "wall_seconds": 41.23948250000831, | |
| "peak_rss_mb": 1561.28, | |
| "command": [ | |
| "/Users/amadeu/Workspace/zimage.swift/zimage.swift/.build/release/ZImageCLI", | |
| "seedvr2", | |
| "--model-path", | |
| "/Volumes/Z1/native-model-packages/seedvr2-1.4b-q4", | |
| "--pos-emb-path", | |
| "/Volumes/Z1/native-model-packages/seedvr2-1.4b-q4/pos_emb.safetensors", | |
| "--input", | |
| "/Volumes/Z1/native-model-packages/seedvr2-1.4b-q4/examples/portrait-4x-input.png", | |
| "--output", | |
| "/Volumes/Z1/native-model-packages/seedvr2-1.4b-q4/examples/portrait-4x-q4.png", | |
| "--overwrite", | |
| "--resolution", | |
| "4x", | |
| "--seed", | |
| "42", | |
| "--steps", | |
| "1", | |
| "--tile-size", | |
| "512", | |
| "--tile-overlap", | |
| "64", | |
| "--cache-limit-mb", | |
| "128", | |
| "--memory-limit-mb", | |
| "12000" | |
| ], | |
| "binary_sha256": "2d10bb00866722ef9f0525c4dcdde989d29444b6123026b303d507c2259b28dc", | |
| "transformer_sha256": "297e1a8376ab6b96ad381b71d9fc4d7c6c124738e1f07f1b583e688203253086", | |
| "input_sha256": "a2bc46bccf4a0f0eb2c4d7e0295a2f2b746da8bd51e571e83d7795b038493811", | |
| "output_sha256": "23e838e8aa97345ad9a1a4729825f1980cabdab6076a84ac909dd001e66ebcad", | |
| "versus_fp16": { | |
| "mae": 1.0141996145248413, | |
| "psnr_db": 43.45973196877463 | |
| } | |
| } | |
| ], | |
| "note": "Paired native Swift inference; pixel difference is quantization drift, not a quality score. Peak RSS measures host resident memory, not the full GPU allocation. Initial portrait/fox timings overlapped with Swift unit tests and are exploratory." | |
| } | |