Qwen-Image-2.1 开源:7B 生图编辑一体,原生支持透明图,最多 10 张参考图!
Qwen 团队开源 Qwen-Image-2.1,将文生图与图像编辑统一在一个模型中。模型视觉生成部分仅 7B 参数,采用 32 层 Single-Stream DiT,在官方 Qwen-Image-Bench 公开评测中获得 60.28 分,并原生支持透明图生成与最多 10 张参考图编辑。

开源地址:
- 模型链接
https://modelscope.cn/models/Qwen/Qwen-Image-2.1 - 模型体验
https://modelscope.cn/studios/Qwen/Qwen-Image-2.1 - 技术博客
https://qwen.ai/blog?id=qwen-image-2.1 - 代码仓库
https://github.com/QwenLM/Qwen-Image-2.1 - AIGC专区支持Qwen-Image-2.1推理与LoRA训练
https://modelscope.cn/aigc/image-generation
7B 参数,兼顾效果与推理效率
Qwen-Image-2.1 的视觉生成部分参数量为 7B,采用 32 层 Single-Stream DiT。在官方公布的 Qwen-Image-Bench 公开评测中,模型总分达到 60.28,高于图中所有参与对比的开源模型;相较多个参数未公开的闭源模型,也保持了有竞争力的综合表现。
Qwen-Image-Bench 公开评测对比:

推理效率方面,Qwen-Image-2.1 也着重优化了推理效率,优势在多图输入场景中尤其明显。这一优化来自混合粒度注意力结构。模型对文本和图像采用不同的处理策略:文本部分,包括系统前缀和编辑指令,采用 Token 级因果掩码;图像生成部分采用 Chunk 级掩码。同时,通过 KV Cache 复用机制,模型将输入图像与编辑指令作为静态上下文,在首步预计算并缓存,以提升推理效率、降低显存开销。
Qwen-Image-2.1 混合粒度注意力结构:

从透明图到多图编辑:覆盖多类视觉创作场景
原生透明图:生成与编辑统一完成
Qwen-Image-2.1 原生支持透明背景图像生成。模型可根据提示词决定输出普通 RGB 图像还是带 Alpha 通道的 RGBA 图像,适合贴纸、人物或商品抠图、图形素材与设计资产制作。透明图并非单独的后处理能力,生成结果还可以继续作为条件输入,用于表情、文字和内容编辑。
透明背景图像生成效果:



模型也能将真实 RGB 图片转换为透明 RGBA 图层,并继续修改透明图中的表情或文字。例如,官方案例展示了将透明图中的“BLOOM”替换为“Qwen-Image”,同时保持主体和透明背景结构。

多图编辑:最高支持 10 张参考图
Qwen-Image-2.1 最高支持 10 张参考图。在多人合照场景中,模型可将 6 张独立人像组合为一张群像;在商品穿戴场景中,可以同时读取模特、衣服、鞋子、包和帽子等多张素材;在家居设计场景中,还可以根据 10 张家具参考图生成完整室内布置。


局部编辑:圈选、涂抹与掩码
模型支持圈选、涂抹和掩码三类局部控制方式。圈选可以在多个指定区域内同时执行删除、替换与颜色调整;涂抹适合快速指定新增内容的位置;掩码则通过额外输入一张区域图,在不覆盖原图信息的前提下完成更精确的局部编辑。
圈选区域内的多目标局部编辑




局部编辑还可连续执行,官方案例将多次一致性编辑串联为短动画,展示角色姿态和内容在连续帧中的变化。
编辑保真:人物身份与商品细节
Qwen-Image-2.1 重点增强了人像和商品两类高一致性编辑。人像场景强调编辑前后身份特征的稳定;商品场景则尽量保留包装文字、纹理和外形,降低编辑过程中主体细节被重绘或变形的概率。
人像编辑后的身份一致性


商品编辑后的文字、纹理与形态保持


全景图、信息图与分镜生成
除常规文生图和图像编辑外,Qwen-Image-2.1 还覆盖全景图、复杂信息图和分镜图生成。模型可以将单张自拍扩展为完整全景画面,也能基于人物照片组织包含文字与视觉元素的信息图,或根据人物三视图生成连续分镜。
全景图生成效果


全景图放置可视化工具之后展现的完整效果:
复杂信息图生成效果


文字渲染与人物质感
Qwen-Image-2.1 对文字排版、光影和人物细节进行了增强,可用于海报、封面、品牌视觉与人物肖像等场景。官方案例覆盖多种字体风格、复杂文字布局,以及不同光线和构图下的人像生成。
文字渲染效果



模型体验与使用
开发者可以通过魔搭创空间 Demo 直接体验 Qwen-Image-2.1 的图像生成与编辑能力,快速验证不同提示词和参考图的实际效果。

此外,魔搭 AIGC 专区已提供在线推理与模型训练能力,无需配置本地环境,即可进一步测试生成效果、调整参数并开展模型微调。
快速生图:

训练LoRA:同时支持文生图的微调和编辑的微调

使用 DiffSynth 套件进行推理与训练
推理
首先创建独立的 Python 环境,并安装 DiffSynth-Studio 与 ModelScope:
conda create -n diffsynth python=3.10 -y
conda activate diffsynth
git clone https://github.com/modelscope/DiffSynth-Studio.git
cd DiffSynth-Studio
pip install -e .
直接运行以下代码,可下载 Qwen-Image-2.1 并生成图像:
from diffsynth.pipelines.qwen_image_21 import QwenImage21Pipeline, ModelConfig
import torch
from PIL import Image
pipe = QwenImage21Pipeline.from_pretrained(
torch_dtype=torch.bfloat16,
device="cuda",
model_configs=[
ModelConfig(model_id="Qwen/Qwen-Image-2.1", origin_file_pattern="transformer/diffusion_pytorch_model*.safetensors"),
ModelConfig(model_id="Qwen/Qwen-Image-2.1", origin_file_pattern="text_encoder/model*.safetensors"),
ModelConfig(model_id="Qwen/Qwen-Image-2.1", origin_file_pattern="vae/diffusion_pytorch_model*.safetensors"),
],
processor_config=ModelConfig(model_id="Qwen/Qwen-Image-2.1", origin_file_pattern="processor/"),
)
# Text-to-Image, the output is an RGBA image
prompt = "Flat anime-style illustration, a girl with long black hair, wearing a JK uniform."
image = pipe(prompt, seed=0)
image.save("image1.png")
prompt = "Flat anime-style illustration, a sunny and cheerful high school girl."
image_2 = pipe(prompt=prompt, seed=0)
image_2.save("image2.png")
# Image Editing, the generated RGBA image is fed back as the condition
prompt = "Generate a group photo of these two characters."
edit_image = [Image.open("image1.png"), Image.open("image2.png")]
image_3 = pipe(prompt, edit_image=edit_image, seed=1)
image_3.save("image3.png")
通过DiffSynth-WebUI推理
基于 DiffSynth-Studio 的零代码 LoRA 训练平台 DiffSynth-WebUI也支持了这个模型,通过以下指令配置环境并启动 WebUI:
git clone --recurse-submodules https://github.com/modelscope/DiffSynth-WebUI.git
cd DiffSynth-WebUI
pip install -e DiffSynth-Studio/
pip install -e .
bash training_ui/launch.sh
在 WebUI 中导入训练数据集 -> 点击 New Task -> 选择 Qwen-Image-2.1,即可开始训练
训练 LoRA
先从魔搭下载示例训练数据:
modelscope download \
--dataset DiffSynth-Studio/diffsynth_example_dataset \
--include "qwen_image_21/Qwen-Image-2.1/*" \
--local_dir ./data/diffsynth_example_dataset
随后通过 Accelerate 启动 Qwen-Image-2.1 LoRA 训练:
accelerate launch examples/qwen_image_21/model_training/train.py \
--dataset_base_path data/diffsynth_example_dataset/qwen_image_21/Qwen-Image-2.1 \
--dataset_metadata_path data/diffsynth_example_dataset/qwen_image_21/Qwen-Image-2.1/metadata.csv \
--max_pixels 1048576 \
--dataset_repeat 50 \
--model_id_with_origin_paths "Qwen/Qwen-Image-2.1:transformer/diffusion_pytorch_model*.safetensors,Qwen/Qwen-Image-2.1:text_encoder/model*.safetensors,Qwen/Qwen-Image-2.1:vae/diffusion_pytorch_model*.safetensors" \
--learning_rate 1e-4 \
--num_epochs 5 \
--remove_prefix_in_ckpt "pipe.dit." \
--output_path "./models/train/Qwen-Image-2.1_lora" \
--lora_base_model "dit" \
--lora_target_modules "" \
--lora_rank 32 \
--use_gradient_checkpointing \
--find_unused_parameters
图像编辑 LoRA 可沿用同一训练入口,通过 data_file_keys 和 extra_inputs 加入编辑图像条件
本地推理与部署
使用 ComfyUI 推理
准备 ComfyUI,并创建独立的 Python 环境,完成环境配置:
git clone https://github.com/comfyanonymous/ComfyUI.git
cd ComfyUI
pip install -r requirements.txt
pip install git+https://github.com/modelscope/DiffSynth-Studio.git
在 ComfyUI 中使用 DiffSynth-Studio 的自定义节点包:
cd ComfyUI/custom_nodes
git clone https://github.com/modelscope/DiffSynth-ComfyUI.git
cd ..
python main.py
在「模板」中可以找到我们提供的 Qwen-Image-2.1 工作流:

此外,ComfyUI官方也Day0支持了模型推理,官方工作流如下:
- 生图工作流地址:
https://github.com/Comfy-Org/workflow_templates/blob/main/templates/image_qwen_image_2_1_t2i.json


使用 Diffusers 推理
环境安装
pip install torch>=2.4.0
pip install transformers>=5.17
pip install git+https://github.com/huggingface/diffusers
pip install accelerate pillow
文生图脚本:
import torch
from diffusers import QwenImage21Pipeline
pipe = QwenImage21Pipeline.from_pretrained(
"Qwen/Qwen-Image-2.1", torch_dtype=torch.bfloat16
).to("cuda")
image = pipe(
prompt="A neon shop sign that reads \"QWEN IMAGE 2.1\", rainy night, reflections on wet pavement",
width=2048, height=2048,
num_inference_steps=40,
generator=torch.Generator("cuda").manual_seed(42),
).images[0]
image.save("t2i_example.png")
图生图脚本:
import torch
from PIL import Image
from diffusers import QwenImage21Pipeline
pipe = QwenImage21Pipeline.from_pretrained(
"Qwen/Qwen-Image-2.1", torch_dtype=torch.bfloat16
).to("cuda")
input_image = Image.open("input.png")
image = pipe(
prompt="Change the background to a sunset beach",
image=input_image,
num_inference_steps=40,
generator=torch.Generator("cuda").manual_seed(42),
).images[0]
image.save("edit_example.png")
通过 vLLM 部署
服务启动命令:
vllm serve Qwen/Qwen-Image-2.1 --omni --port 8091
接口调用示例:
curl http://localhost:8091/v1/images/generations \
-H "Content-Type: application/json" \
-d '{
"model": "Qwen/Qwen-Image-2.1",
"prompt": "A ceramic teapot on a wooden table",
"size": "1024x1024",
"num_inference_steps": 50,
"true_cfg_scale": 1.0,
"seed": 42
}'
详情参考:https://recipes.vllm.ai/Qwen/Qwen-Image-2.1
通过 SGLang 部署
服务启动命令:
sglang serve \
--model-path "/models/qwen-image-2.1" \
--model-id Qwen-Image-2.1 \
--num-gpus 1 \
--ulysses-degree 1 \
--host 0.0.0.0 \
--port 30010 \
--performance-mode speed \
--attention-backend fa \
--encoder-parallel auto \
--batching-max-size 1
接口调用:
curl -sS --fail-with-body http://localhost:30010/v1/images/generations \
-H 'Content-Type: application/json' \
-d '{
"model": "Qwen-Image-2.1",
"prompt": "A capybara reading a book by candlelight",
"n": 1,
"size": "1024x1024",
"num_inference_steps": 40,
"guidance_scale": 1,
"seed": 42,
"generator_device": "cpu",
"output_format": "png",
"response_format": "b64_json",
"background": "auto",
"enable_cache_dit": false
}'
详情参考:https://docs.sglang.io/cookbook/diffusion/Qwen-Image/Qwen-Image-2.1
在 AMD 平台上推理
qwen-Image-2.1可通过 ROCm 7.2.4 PyTorch 容器在 AMD Radeon GPU 上运行。以下示例使用 Diffusers 加载魔搭模型权重并完成文生图推理。
拉取 ROCm PyTorch 镜像
docker pull rocm/pytorch:rocm7.2.4_ubuntu24.04_py3.12_pytorch_release_2.10.0
启动容器
docker run -d --name qwen-image \
--device=/dev/kfd --device=/dev/dri \
--ipc=host --shm-size 32G \
--security-opt seccomp=unconfined \
-v "$PWD":/workspace \
-w /workspace \
rocm/pytorch:rocm7.2.4_ubuntu24.04_py3.12_pytorch_release_2.10.0 sleep infinity
进入容器:
docker exec -it qwen-image bash
后续命令均在容器内执行。
安装Diffusers及相关依赖
pip install "transformers>=5.0" accelerate safetensors sentencepiece modelscope
pip install --no-deps "git+https://github.com/huggingface/diffusers"
从魔搭下载模型权重
modelscope login --token <YOUR_TOKEN>
modelscope download Qwen/Qwen-Image-2.1 --local_dir /root/.cache/modelscope/Qwen-Image-2.1
运行文生图推理:
import torch
from diffusers import QwenImage21Pipeline
model_path = "/root/.cache/modelscope/Qwen-Image-2.1"
pipe = QwenImage21Pipeline.from_pretrained(model_path, dtype=torch.bfloat16)
pipe.enable_model_cpu_offload()
prompt = "A capybara wearing a wizard hat, oil painting"
image = pipe(prompt, generator=torch.Generator("cuda").manual_seed(42)).images[0]
image.save("t2i.png")
通过 FlagOS 在多种 AI 芯片上推理
Qwen-Image-2.1 已通过 FlagOS 支持 NVIDIA、沐曦、海光、昇腾、摩尔线程、平头哥真武、燧原和 Arm 共 8 种芯片平台。开发者只需从魔搭 FlagRelease 组织下载对应芯片的预构建镜像与模型权重,即可沿用 Diffusers 的推理方式运行模型,无需修改代码;各平台的推理精度已与官方实现对齐。
模型下载地址:https://modelscope.cn/organization/FlagRelease
更多推荐




所有评论(0)