Devserhii's picture
MOSS-Image Turbo: 4-step (akhaliq) and 8-step (lodestones DMD2) adapters with UltraReal v2
9e4db3e verified
|
Raw History Blame Contribute Delete
3.7 kB
metadata
license: apache-2.0
library_name: mlx
pipeline_tag: text-to-image
base_model:
  - OpenMOSS-Team/MOSS-Image-SFT
  - lodestones/MOSS-Image-Base-8-steps-dmd
  - akhaliq/MOSS-Image-SFT-4-steps
tags:
  - localmuse
  - moss-image
  - mlx
  - int4
  - apple-silicon

MOSS-Image Turbo — MLX INT4 for LocalMuse

On-device package for the LocalMuse iOS app (profile mossImage5B4Bit).

  • Model: MOSS-Image-SFT by the OpenMOSS Team, revision fc5de0d56fc910cbca6f6625a70f5f582b26deb1 (Apache-2.0): 5B single-stream DiT, Qwen3.5 text encoder, FLUX.2 small decoder.
  • Adapters (adapters.json), unmerged and selected by step count:
    • 4 steps: lora.safetensors (v2.0) from akhaliq/MOSS-Image-SFT-4-steps, revision 2ded95c37a029360245926fe72e475e30039bbfb (Apache-2.0), Euler-native 4-step DMD;
    • 5–8 steps: lora_dmd2.safetensors from lodestones/MOSS-Image-Base-8-steps-dmd, revision da05cb3b52899179e2bb5f7efe1058fefcbae21b (Apache-2.0), data-space DMD refined with DMD2's GAN stage;
    • every step count: UltraReal MOSS v2 by vizsumit (Civitai 2462105, version 3416438), a style LoRA against the smooth AI look (its license allows commercial use and derivatives).

This is a format conversion, not a new fine-tune. Every source file is authenticated by source.json and adapters.json. Preserve LICENSE, NOTICE and the attribution.

Contents

File Content
text_encoder/model.safetensors Qwen3.5 text model (visual tower dropped), all linears and the embedding table affine INT4, group 64
transformer/model.safetensors MOSS-Image DiT: attention/FFN INT4 group 64; embedders, time embedding, modulation, norms and output projection BF16
transformer/adapter_4step.safetensors akhaliq 4-step adapter, BF16 rank-128 factors, strength 1, used at 4 steps
transformer/adapter_8step.safetensors lodestones DMD2 adapter, BF16 rank-128 factors, strength 1, used at 5–8 steps
transformer/style_ultrareal.safetensors UltraReal v2, BF16 rank-32 factors (fused qkv split into q/k/v; block 22, absent from the LoRA, is zero), strength 1, always used
vae.safetensors FP32 FLUX.2 small decoder and latent BatchNorm statistics
tokenizer/ release tokenizer
runtime_config.json, manifest.json runtime contract and SHA-256 manifest

Adapters must not be merged into the weights: the distillation delta is smaller than BF16 rounding of the merged matrices, so merging (and quantizing a merge) loses it. LocalMuse concatenates the selected adapters along the rank and adds up(down(x)) after each quantized block projection (runtime_config.json version 2 lists each adapter's file, rank, alpha, strength and step range).

Inference contract

Text to Image, batch one, the release MOSSImageScheduler (flow-matching Euler, shift 5, sigmas snapped to the 1000 training sigmas), 8 steps by default or 4 steps for the faster adapter (5–7 use the 8-step adapter), no classifier-free guidance and no negative prompt. Canvases: 1024 × 1024 and 896 × 1152. Prompts use the release Qwen3.5 chat template with thinking enabled; natural language, tags and MOSS JSON layouts are accepted.

INT4 is not bit-identical to BF16: with the same seed the composition, subject and lighting match while clothing, hair and brightness details can differ. Conversion, independent references and measurements are in the LocalMuse repository under Tools/MOSSImage.