站内导读
中文 MOSS-Image-SFT 是 OpenMOSS 推出的文生图模型,由 MOSS-Image-Base 监督微调而来,沿用相同架构与推理流程。它支持自然语言提示、标签序列和 JSON 布局,可控制文字位置与物体排布;相比 Base 版本,示例中文字分组更清晰、白板排版更规整。模型以 Apache-2.0 许可发布,提供 diffusers 推理代码、Gradio 界面与 ComfyUI 插件。适合需要图中文字排布可控的文生图开发者与研究者,需 Python 3.10 以上及支持 CUDA 的 NVIDIA GPU。
日本語 MOSS-Image-SFT は OpenMOSS が MOSS-Image-Base を教師あり微調整して作った text-to-image モデルで、アーキテクチャと推論手順は Base と共通です。自然言語プロンプト、タグ列、JSON レイアウトに対応し、文字の配置や物体のレイアウトを制御できます。Base より文字のまとまりと版面構成が整いやすい点が特徴です。diffusers で画像内テキストを扱いたい開発者向けです。
한국어 MOSS-Image-SFT는 OpenMOSS가 MOSS-Image-Base를 지도 미세조정해 만든 text-to-image 모델로, 아키텍처와 추론 파이프라인은 Base와 같습니다. 자연어 프롬프트, 태그 시퀀스, JSON 레이아웃을 지원해 텍스트 위치와 객체 배치를 제어할 수 있습니다. Base보다 텍스트 묶음과 화이트보드 레이아웃이 정돈되는 점이 다릅니다. diffusers로 이미지 내 텍스트를 다루려는 개발자에게 맞습니다.
English MOSS-Image-SFT is a supervised fine-tune of MOSS-Image-Base from OpenMOSS, keeping the same architecture and inference pipeline. It accepts natural-language prompts, tag sequences, and JSON layouts to control text placement and object arrangement, and produces tighter text grouping and layout than Base. It suits developers generating images with specific text via diffusers on CUDA GPUs.
README · 详细文档
来源 · 查看原文
license: apache-2.0 basemodel: OpenMOSS-Team/MOSS-Image-Base basemodel_relation: finetune language:
- en
- zh
pipeline_tag: text-to-image tags:
- moss-image
- diffusers
- text-to-image
MOSS-Image-SFT
<div align="center"> <p> <a href="https://github.com/OpenMOSS/MOSS-Image"> <img class="dark:hidden mx-auto" src="assets/lockup-light.svg" alt="MOSS-Image" width="520"> <img class="hidden dark:block mx-auto" src="assets/lockup-dark.svg" alt="MOSS-Image" width="520"> </a> </p> <p> <a href="https://huggingface.co/OpenMOSS-Team/MOSS-Image-Base"><img alt="Hugging Face · MOSS-Image-Base" src="https://img.shields.io/badge/🤗%20Hugging%20Face-MOSS--Image--Base-ffc107?style=flat-square"></a> <a href="https://huggingface.co/OpenMOSS-Team/MOSS-Image-SFT"><img alt="Hugging Face · MOSS-Image-SFT" src="https://img.shields.io/badge/🤗%20Hugging%20Face-MOSS--Image--SFT-ffc107?style=flat-square"></a> <a href="https://modelscope.cn/models/openmoss/MOSS-Image-Base"><img alt="ModelScope · MOSS-Image-Base" src="assets/modelscope-base-badge.svg"></a> <a href="https://modelscope.cn/models/openmoss/MOSS-Image-SFT"><img alt="ModelScope · MOSS-Image-SFT" src="assets/modelscope-sft-badge.svg"></a> <a href="https://github.com/OpenMOSS/MOSS-Image"><img alt="GitHub" src="https://img.shields.io/badge/GitHub-Code-181717?style=flat-square&logo=github&logoColor=white"></a> <a href="https://huggingface.co/spaces/OpenMOSS-Team/MOSS-Image"><img alt="Hugging Face Spaces · Demo" src="https://img.shields.io/badge/🤗%20Spaces-Demo-4f46e5?style=flat-square"></a> <a href="https://platform.mosi.cn/?utmsource=huggingface&utmmedium=readme&utmcampaign=imageapi"><img alt="MOSI API Platform" src="https://img.shields.io/badge/🔌%20MOSI-API%20Platform-0f766e?style=flat-square"></a> <a href="https://openmoss.github.io/MOSS-Image/"><img alt="Homepage" src="https://img.shields.io/badge/🌐%20Project-Homepage-2563eb?style=flat-square"></a> <a href="https://github.com/OpenMOSS/MOSS-Image/blob/main/paper/MOSSImageTechnicalReport.pdf"><img alt="Technical Report" src="https://img.shields.io/badge/📄%20Paper-TechnicalReport-b31b1b?style=flat-square"></a> <a href="https://arxiv.org/abs/2610.23374"><img alt="arXiv: 2610.23374" src="https://img.shields.io/badge/arXiv-2610.23374-b31b1b?style=flat-square&logo=arxiv&logoColor=white"></a> <a href="https://x.com/OpenMOSS"><img alt="Follow OpenMOSS on X" src="https://img.shields.io/badge/Follow-OpenMOSS-000000?style=flat-square&logo=x&logoColor=white"></a> <a href="https://qm.qq.com/q/hphM7VhaDu"><img alt="MOSS-Image QQ 交流群:755535143" src="https://img.shields.io/badge/QQ-755535143-12B7F5?style=flat-square&logo=qq&logoColor=white"></a> <a href="https://applink.feishu.cn/client/chat/chatter/addbylink?linktoken=7a3m2007-815f-409b-9c3d-a4129f5c058e"><img alt="MOSS-Builders Feishu Community" src="assets/feishu-builders-badge.svg"></a> <a href="https://discord.gg/nXFWEyvbb"><img alt="MOSS-Image Discord Community" src="https://img.shields.io/badge/Discord-Community-5865F2?style=flat-square&logo=discord&logoColor=white"></a> </p> <p> <a href="https://github.com/OpenMOSS/MOSS-Image/blob/main/USERGUIDE.md">User guide</a> · <a href="https://github.com/OpenMOSS/MOSS-Image/blob/main/USERGUIDEZH.md">中文用户指南</a> · <a href="https://github.com/OpenMOSS/MOSS-Image/blob/main/comfyui/README.md">ComfyUI</a> </p> </div>
MOSS-Image-Base and MOSS-Image-SFT
MOSS-Image-SFT is a supervised fine-tuned text-to-image model in the MOSS-Image family from OpenMOSS, derived from MOSS-Image-Base. It uses the same architecture and inference pipeline, supporting natural-language prompts, tag sequences, and JSON layouts for controlling text placement and object arrangement.
Base vs. SFT
In this example, SFT produces clearer text grouping and a more organized whiteboard layout.
| MOSS-Image-Base | MOSS-Image-SFT | | --- | --- | | MOSS-Image-Base | MOSS-Image-SFT |
Quick start
Use Python 3.10 or later and an NVIDIA GPU with CUDA support. Install a PyTorch 2.9 or later build compatible with your CUDA environment, then install:
pip install "diffusers>=0.38" "transformers>=5.3" "accelerate>=1.10" "safetensors>=0.6" "Pillow>=10"
import torch
from diffusers import DiffusionPipeline
pipe = DiffusionPipeline.from_pretrained(
"OpenMOSS-Team/MOSS-Image-SFT",
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")
prompt = '''A wide view of a refrigerator beside a kitchen counter with a fruit bowl. A small sticky note on the refrigerator door is handwritten in Chinese:
"记得买牛奶和鸡蛋!
牛奶两盒,鸡蛋一打。
顺便带一袋面包。"'''
image = pipe(
prompt,
height=1024,
width=1024,
num_inference_steps=50,
guidance_scale=3.0,
uncond_skip_layers=[22],
generator=torch.Generator("cpu").manual_seed(42),
).images[0]
image.save("refrigerator_note.png")
The model and custom pipeline code are downloaded and cached automatically. You can also pass a complete local model directory to from_pretrained. The transformer and text encoder use bfloat16; the VAE and initial noise use float32. The bundled VAE uses the FLUX.2 small decoder.
For the Gradio interface, CPU offload, and compilation options, follow the project quick start. For ComfyUI, search for MOSS-Image in ComfyUI Manager to install the native plugin. Integration into the official ComfyUI repository is in progress. See the installation and usage guide and example workflow.
Sampling settings
| Setting | Default | | --- | --- | | Sampler | Flow-matching Euler | | Steps | 50 | | CFG | 3 | | Shift | 5 | | Layer skipping | Negative branch, layer index 22 (zero-based) | | Negative prompt | Empty |
The default guidance uses two transformer forwards per step. Pass uncond_skip_layers=[] to disable negative-branch skipping, or set negative_prompt to provide a negative prompt. Python API image dimensions must be positive multiples of 16.
See the user guide for resolution, sampling, prompt, and LoRA training recommendations.
Prompt enhancer skill
The MOSS-Image Prompt Enhancer turns image ideas into detailed captions or spatial Layout prompts. It is designed for GPT-6-family agents with local file and Python tools. The bundled script converts pixel-coordinate drafts into compact JSON with integer centered coordinates; it does not call an image-generation service.
Install the skill folder in your agent's skills directory, then invoke $moss-image-prompt-enhancer with your image idea, desired caption or Layout output, and any canvas dimensions. Paste the compiled result into MOSS-Image's positive prompt; for Layout, use the same generation dimensions.
Layout-to-image generation
Pass a JSON layout as the prompt to describe the scene, rendered text, objects, and their positions. Layouts use summary.caption and items, with bbox_format: "yxyx" and bbox_coord_space: "abs_centralized".
With the Python API, serialize the layout using json.dumps(layout, ensure_ascii=False) and pass it to pipe. In Gradio, paste the JSON into the Prompt field and set the matching image dimensions. See the layout format and example.
Layouts can also support controlled editing and user-friendly layout tools. Edit text, element descriptions, and bounding boxes to adjust image content and composition in a structured way.
Layout control
Showcase
Examples overview
Examples overview 2
Citation
@misc{ai2026mossimagetechnicalreport,
title={MOSS-Image Technical Report},
author={MOSI. AI},
year={2026},
eprint={2610.23374},
archivePrefix={arXiv},
primaryClass={cs.CV},
url={https://arxiv.org/abs/2610.23374},
}
License and acknowledgements
The model weights and bundled inference code are released under the Apache License, Version 2.0.
We thank the Diffusers, Qwen, and FLUX teams.