How do I write prompts for MOSS-Image?
Last updated 2026-10-27
MOSS-Image works best with English prompts, 50+ steps, CFG 3 (3–6 for short prompts), shift 5, Euler sampler and skip-layer 22. It accepts natural language, tag lists and JSON layouts, and prompts up to 4K tokens. Recommended negative prompt: "nsfw, worst quality, bad anatomy, watermark, jpeg artifact".
What settings does MOSS-Image need?
| Setting | Recommended value |
|---|---|
| Resolution | 1M, 1.5M or 2M pixels. 0.25M–4M can work. Each side a multiple of 16. |
| Steps | 50 or more |
| CFG | 3.0 (3–6 for short prompts) |
| Shift | 5 |
| Sampler | Euler |
| Skip-layer guidance (SLG) | Skip layer 22 in the unconditional pass (22, 24 or 26 all work) |
| Negative prompt | nsfw, worst quality, bad anatomy, watermark, jpeg artifact |
| Language | English first; Chinese supported |
What are the three ways to write a prompt?
- Natural language. Describe the scene in plain sentences.
- Tags. Use this order: Quality, Score, Meta, Year, Character, Series, Artist, General.
- JSON layout. Describe each element and its box. See the layout section below.
How do I get readable text in an image?
- Put the text to render inside quotation marks.
- Control line breaks with
\nor a real line break. - Keep each text block short.
How do I place elements with layout JSON?
Layout prompts give each element its own box. Copy the official poster example from the OpenMOSS user guide and edit the values. The fields it uses:
| Field | Meaning |
|---|---|
summary.caption | Description of the whole image |
items[].label | Label of the element |
items[].caption | Description of the element |
items[].text | Text to render in the element |
items[].bbox | Box of the element, in yxyx order (y-min, x-min, y-max, x-max) |
Coordinates are abs_centralized: absolute pixels with the origin at the image center. To convert from top-left pixel coordinates, use x − W/2 and y − H/2, where W and H are the image width and height.
Which prompts can I copy?
| Scene | Example prompt | |
|---|---|---|
| Poster | A minimalist coffee shop poster, headline "MORNING ROAST", subline "Fresh daily, 7am–11am", warm beige palette. | Try → |
| Menu | A chalkboard cafe menu with the title "TODAY" and three lines: "Latte 4", "Mocha 5", "Scone 3", hand-lettered white chalk. | Try → |
| UI screenshot | A clean mobile weather app screenshot, large text "18°" and the label "Sunny", pastel blue gradient background. | Try → |
| Whiteboard | A whiteboard photo with the heading "Sprint Plan" and a three-item checklist, blue marker handwriting. | Try → |
| Chinese shop sign | 一家小面馆的木质招牌,招牌上写着"老张面馆",傍晚暖色灯光,街景。 | Try → |
| Anime | An anime girl with short silver hair standing in a rainy neon street, soft rim light, detailed background. | Try → |
| Realistic portrait | A realistic portrait of an elderly fisherman, weathered face, overcast daylight, 85mm lens, shallow depth of field. | Try → |
| Product photo | A ceramic mug on a wooden table, morning window light, soft shadows, product photography, white background. | Try → |
Should I use Base or SFT?
SFT groups and lays out text more cleanly, so use it to generate images. Base is the pretrained model and is easier to train LoRAs on.
How do I generate faster?
An 8-step DMD LoRA runs at CFG 1. It is available in the Kromoss repository and as lodestones' MOSS-Image-SFT-8-steps-dmd.
How do I run these settings locally?
Local setup needs ComfyUI and a GPU. File names, sizes and templates are on the ComfyUI workflow page. To edit photos with instructions instead, see MOSS-Image Edit. Official documentation: ComfyUI MOSS-Image tutorial. Weights: Comfy-Org/MOSS-Image.
FAQ
What CFG should I use for MOSS-Image?
Start at 3.0. For short prompts, 3 to 6 works. The 8-step DMD LoRA is the exception: it uses CFG 1.
Does MOSS-Image support Chinese prompts?
Yes. English prompts work best, and Chinese is supported.
What negative prompt should I use?
The recommended negative prompt is "nsfw, worst quality, bad anatomy, watermark, jpeg artifact".
Why is the text in my image wrong?
Put the exact text in quotes, control line breaks with a newline, use at least 50 steps and CFG 3. The SFT model groups and lays out text more cleanly than Base.
How do I control where things appear?
Use a JSON layout prompt with a bbox for each item. Start from the official poster example in the OpenMOSS user guide.