A big thank you to RunDiffusion! They sponsored the compute for this model. Without them Juggernaut Moss would not exist.
Juggernaut Moss is my full finetune of MOSS-Image, made by me, KandooAI, the person behind the Juggernaut XL series. The goal was the same as always with Juggernaut: photography and cinematic images that look real, with natural skin, believable light and a modern film look, while the model can still do everything else.
This is Version 1. It is my first finetune of a brand-new architecture, trained on a fairly small dataset. In my blind tests it clearly beats MOSS-Image Base, but it is not flawless. Hands, small text, large crowds and some art styles can still go wrong now and then. If you find weak spots, please tell me. That feedback goes straight into Version 2.
💼 I'm looking for a job! I'm currently open to new opportunities, either a full-time position or long-term paid contract work in model training, finetuning and image generation. If you like what I build, reach out on LinkedIn or by email to KandooAI@web.de.
| File | Format | Size | Use |
|---|---|---|---|
juggernaut_moss_v1_bf16.safetensors |
BF16 single file (ComfyUI layout) | 10.2 GB | ComfyUI, best quality |
juggernaut_moss_v1_int8_convrot.safetensors |
int8 ConvRot (W8A8), same format as Comfy-Org's moss_image_*_int8_convrot files |
5.4 GB | ComfyUI, half the size, faster on most GPUs |
model_index.json, transformer/, text_encoder/, tokenizer/, vae/, scheduler/, pipeline_moss_image.py |
Diffusers | ~28 GB | 🧨 diffusers |
Only the transformer was trained. The text encoder, tokenizer, VAE, scheduler and pipeline code in the Diffusers folders are the original ones from MOSS-Image-SFT.
The int8 file was made from the BF16 file. The same quantizer reproduces Comfy-Org's official moss_image_sft_int8_convrot.safetensors bit for bit, so it loads in ComfyUI without any custom node. In a same-seed test it gives practically the same image as BF16. A 4-bit version may follow later.
These are the settings I recommend:
worst quality, low quality, blurry, jpeg artifacts, watermark, signature, text artifacts, deformed hands, extra fingers, bad anatomy, distorted face, plastic skin, oversaturated, cartoon, cgi, 3d rendercartoon, cgi, 3d render. Otherwise you are fighting the style you asked for.Juggernaut Moss was trained on natural-language captions in three lengths: short, medium and long. Short prompts work, but the model really shines with a detailed description. Write it like you are describing a photograph to someone who cannot see it:
a neon sign that reads "Good Vibes Only". Text that is not spelled out in the prompt turns into gibberish.Example:
Close-up portrait of a 34-year-old Nigerian woman with deep brown skin, natural coily hair pulled back,
small gold hoop earrings, looking straight into the lens with a calm, confident expression. Soft window
light from the left, a gentle falloff into shadow on the right side of her face, visible pores, fine vellus
hair on her cheek and a subtle natural sheen on her forehead. Neutral warm-grey background, 85mm lens at
f/2, shallow depth of field, high-end editorial portrait photography.
For skin detail it helps to name it ("visible pores", "freckles", "fine wrinkles", "natural skin texture"). For art styles, name the medium and the technique ("watercolor with wet-on-wet washes and visible paper texture") and leave out camera words.
ComfyUI: put one of the two .safetensors files from the top level of this repo into ComfyUI/models/diffusion_models/ and load it with Load Diffusion Model. You also need the text encoder and the VAE from Comfy-Org/MOSS-Image:
text_encoders/qwen3.5_9b_bf16.safetensors, or the smaller qwen3.5_9b_w4a8_gptq.safetensors, goes into models/text_encoders/. Load it with Load CLIP, type moss_image.vae/flux2-vae_small.safetensors goes into models/vae/.Any MOSS-Image workflow works. Just swap in the Juggernaut Moss file.
Diffusers: this follows the official MOSS-Image quick start (pip install "diffusers>=0.38" "transformers>=5.3" "accelerate>=1.10"):
import torch
from diffusers import DiffusionPipeline
pipe = DiffusionPipeline.from_pretrained(
"Kandoo/Juggernaut-Moss",
custom_pipeline="pipeline_moss_image",
trust_remote_code=True,
torch_dtype={"default": torch.bfloat16, "vae": torch.float32},
)
pipe.scheduler = type(pipe.scheduler).from_config(pipe.scheduler.config)
pipe.to("cuda")
image = pipe(
"Cinematic film still of a female detective in a beige trench coat standing in the rain on a dark city "
"rooftop at night, looking out over glowing skyscrapers, her face lit by a red neon sign, anamorphic look, "
"teal and orange color grade, neo-noir thriller atmosphere.",
negative_prompt="worst quality, low quality, blurry, jpeg artifacts, watermark, deformed hands, plastic skin",
height=1152,
width=2048,
num_inference_steps=30,
guidance_scale=3.0,
uncond_skip_layers=[22],
generator=torch.Generator("cpu").manual_seed(42),
).images[0]
image.save("juggernaut_moss.png")
Every decision for this model was made in blind tests: random left/right order, no labels, and you pick the better image or "equally good". In the final round, Juggernaut Moss V1 was tested against MOSS-Image Base on new showcase prompts with the same seeds and settings:
| Share of all comparisons | |
|---|---|
| Juggernaut Moss V1 wins | 73 % |
| MOSS-Image Base wins | 18 % |
| Equally good | 9 % |
Leaving out the ties, Juggernaut Moss won 80 % of the comparisons. It won in almost every category, with the biggest margins in portraits, cinematic, text, street and sports. Landscapes and architecture came out about even.
The base model can still produce nudity, and Juggernaut Moss has not removed that ability. That is why this repo is tagged not-for-all-audiences. Use the model responsibly and within the law.
All images were made with the BF16 model and the settings above (at 50 steps), one seed per prompt, no upscaling and no inpainting. I picked them from a set of 200 showcase renders.
Same prompt, same seed, same settings. MOSS-Image Base is on the left, Juggernaut Moss on the right.
Apache License 2.0, the same as MOSS-Image. You can use the model and its outputs commercially. The bundled text encoder, VAE, tokenizer and pipeline code come from OpenMOSS-Team/MOSS-Image-SFT and are also under Apache 2.0.
KandooAI, here on Hugging Face: huggingface.co/Kandoo
Job offers and collaborations: LinkedIn or KandooAI@web.de
juggernaut_moss_v1_bf16.safetensors 10 GBjuggernaut_moss_v1_int8_convrot.safetensors 5.4 GBtransformer/diffusion_pytorch_model-00001-of-00003.safetensors 5.0 GBtext_encoder/model-00002-of-00004.safetensors 5.0 GBtransformer/diffusion_pytorch_model-00002-of-00003.safetensors 5.0 GBtext_encoder/model-00001-of-00004.safetensors 5.0 GBtext_encoder/model-00003-of-00004.safetensors 5.0 GBtext_encoder/model-00004-of-00004.safetensors 1.9 GBvae/diffusion_pytorch_model.safetensors 250 MBtransformer/diffusion_pytorch_model-00003-of-00003.safetensors 190 MBOpenMOSS-Team/MOSS-Image-BaseHave the files? Submit a torrent.
Submit a torrentHave the complete files and permission to share them? Replace the example folder path. The script checks the files, makes a torrent and submits its magnet and checksums. Keep your torrent client seeding. Get your community key from your settings, and read the script before running it.
curl -fsSL https://pirateface.co/package.sh | bash -s -- --repo Kandoo/Juggernaut-Moss ./model-folder