PixArt-sigma
基于DiT架构的4K文生图扩散模型,弱到强训练策略实现超高分辨率图像生成
加载项目详情…
本应用为开源项目,仅供学习研究,请遵守其开源协议。
基于DiT架构的4K文生图扩散模型,弱到强训练策略实现超高分辨率图像生成
加载项目详情…
本应用为开源项目,仅供学习研究,请遵守其开源协议。

想象这样一个场景: 你是一名游戏原画师,正在赶一个开放世界项目的截止日期——需要几十张风格统一的场景概念图,传统方式每张图要花几个小时用 Photoshop 精雕细琢,或者烧钱调用商业 AI 服务。现在,你可以用一句中文提示词,在几分钟内生成一张 4K 分辨率、细节丰富、光影自然的概念画——这就是 PixArt-Σ 正在做的事。
PixArt-Σ 是华为诺亚方舟实验室联合多所高校发布的最新文生图(Text-to-Image)扩散模型,全称 Weak-to-Strong Training of Diffusion Transformer for 4K Text-to-Image Generation。它基于 Transformer 架构而非传统的 U-Net,是「Diffusion Transformer」(DiT)技术路线的代表作之一。2024年3月在 arXiv 公开后迅速获得关注,目前在 GitHub 已积累超过 1900 颗星。
要理解 PixArt-Σ 的意义,需要回顾它的前身 PixArt-α。2023年,PixArt-α 团队就曾以极低的训练成本(相当于 Stable Diffusion v1.5 约 1/10 的算力消耗)实现了可比的生成质量,引发业界对 DiT 架构可行性的重新评估。PixArt-α 证明了用 Transformer 替代 U-Net 做扩散模型是条走得通的路,而且效率更高。
PixArt-Σ 在此基础上进行了系统性升级。最核心的变化有两点:
第一,「弱到强」(Weak-to-Strong)训练策略。 传统模型训练通常从高质量数据开始逐步加入噪声,模型逐步学习去噪能力。PixArt-Σ 反其道而行——先用较「弱」的 teacher 模型指导学生模型,再逐步增强 teacher 的强度,让学生在更强的监督信号下成长。这一策略有效缓解了模型在强条件(高分辨率、高文本匹配度)下的训练不稳定问题,使得 4K 超高分辨率生成成为可能。
第二,4K 分辨率原生支持。 此前大多数开源文生图模型原生支持上限在 1024×1024 左右,生成更大的图需要借助超分辨率模型进行后处理,质量和效率都会打折扣。PixArt-Σ 直接在 4K(4096×4096)级别进行训练和推理,输出的图像细节更加丰富,文字渲染更精准。
团队背景也值得关注。论文作者来自华为诺亚方舟实验室(Huawei Noah's Ark Lab)、大连理工大学(DLUT)和香港大学(HKU)、香港科技大学(HKUST),核心作者包括陈俊松(Chen Junsong)、葛崇建(Ge Chongjian)等多位在计算机视觉领域有深厚积累的研究者。
PixArt-Σ 的技术栈可以用「三驾马车」来概括:Diffusion Transformer 主干、T5 文本编码器、VAE 变分自编码器。
主干预训练模型方面,PixArt-Σ 采用了与 Sora 相同的 DiT(Diffusion Transformer)架构。具体来说,它基于 TIMM 库中的 Transformer2DModel 构建,融合了来自 DiT 和 U-ViT 的设计思想。不同于传统 Stable Diffusion 系列的 U-Net 架构,DiT 用自注意力机制(Self-Attention)替代了 U-Net 中的卷积块,这让它在处理高分辨率、长序列条件时拥有更好的可扩展性。
图1:噪声信噪比(SNR)调度策略示意图,反映 PixArt-Σ 的弱到强训练机制如何在不同噪声强度下指导模型学习
文本编码方面,PixArt-Σ 使用了 T5-Flan-T5-XXL 作为文本编码器。相比 CLIP 文本编码器,T5 能提供更细致的文本理解和更长的上下文窗口,可以更准确地处理复杂、长句、包含多个对象的提示词。这直接提升了模型对中文提示词、多实体组合描述的遵从度。
VAE 编码器采用了 Consistency Decoder VAE(ConsistencyDecoderVAE),这是一种专为扩散模型设计的变分自编码器,能够在高压缩率下保持图像细节,支持更高效的潜空间运算。
代码库的组织结构清晰:
| 目录/文件 | 功能 |
|---|---|
diffusion/model/ | 模型定义,包含 DiT 主干、VAE、T5 编码器 |
diffusion/dpm_solver.py | DPM-Solver 采样器,加速推理 |
diffusion/sa_solver.py | 自适应步长求解器(SA-Solver) |
app/ | Gradio Web UI 实现 |
configs/ | 训练和推理配置文件 |
train_scripts/ | 分布式训练脚本 |
推理侧支持多种采样器(DPM-Solver、SA-Solver、LCM 等),用户可以根据速度/质量权衡选择。HuggingFace diffusers 库也已在 0.25 版本后加入官方支持。
PixArt-Σ 提供了三种使用方式,分别面向不同技术能力的用户:
方式一:HuggingFace 在线 Demo(零门槛体验)
团队在 HuggingFace Spaces 上部署了在线 Demo(https://huggingface.co/spaces/PixArt-alpha/PixArt-Sigma),用户无需安装任何依赖,直接在浏览器输入英文提示词即可体验。Demo 支持风格预设(电影感、摄影、动漫、动漫等),调节推理步数和引导系数(CFG Scale)。不过官方明确标注「仅支持英文提示词」,中文输入效果会大打折扣。
方式二:本地 Web UI(推荐)
克隆仓库后运行 python app/app_pixart_sigma.py,会启动一个 Gradio 界面。代码中集成了 LoRA 权重加载能力(基于 peft 库),支持多种预设风格,界面友好度较高。
方式三:命令行推理(开发者友好)
仓库提供了 scripts/inference.py 和 scripts/sample_pixart.py 等脚本,支持批量推理和自定义参数调优。主要依赖:PyTorch、diffusers、transformers、sentencepiece、xformers。
进阶能力:LoRA 微调
2024年4月,团队还开源了 LoRA 微调代码(asset/docs/pixart_lora.md),允许用户在自定义数据集上微调 PixArt-Σ,生成特定风格或内容方向的专属模型。结合 peft 库的低秩适配技术,微调成本大幅降低。
PixArt-DMD 单步生成
此外仓库还包含了 PixArt-α DMD(Diffusion Model Distillation)方法的训练和推理代码,可以在特定条件下实现单步(1-step)生成,进一步压缩推理时间。
必须坦诚地说,PixArt-Σ 不是一个「pip install 就跑起来」的项目。它的部署难度主要来自以下几个方面:
GPU 显存门槛高。 官方推荐 16GB 以上显存的 NVIDIA GPU(最佳体验需要 24GB+)。在 4K 分辨率下推理时,显存占用相当可观。如果显存不足,可以启用 CPU offload(ENABLE_CPU_OFFLOAD=1),但推理速度会大幅下降。
CUDA 环境要求。 Dockerfile 基于 nvidia/cuda:12.2.0-runtime-ubuntu22.04,依赖 CUDA 11.7+。xformers 等库对 CUDA 版本有特定要求,在不同 GPU 驱动环境下可能出现兼容性问题。
依赖复杂。 requirements.txt 中包含 mmcv==1.7.0、xformers==0.0.19 等相对小众且版本强绑定的包,与最新版本的 PyTorch/diffusers 可能存在冲突。environment.yml 中甚至出现了 diffusers 和 accelerate 版本不一致的问题(accelerate 在同一个文件里出现了 0.15.0 和 0.25.0 两个版本)。建议优先参考 requirements.txt 手动安装,而非直接 conda env create。
模型权重需要 HuggingFace 账号下载。 4K 模型(PixArt-XL-2-2K-MS / PixArt-XL-2-1024-MS)托管在 HuggingFace,需要注册账号并同意协议后手动下载(download_models.py 脚本提供辅助)。注意:diffusers 格式的权重需要单独更新才能使用官方仓库的版本。
好在 Docker 方案提供了一条相对省心的路径——在有 NVIDIA GPU + nvidia-container-toolkit 的机器上,用 Dockerfile 构建镜像后运行容器,GPU 支持是开箱即用的。
PixArt-Σ 并非完美,在使用和评估中需要注意以下问题:
中文提示词支持弱。 官方 Demo 和代码中明确写了「English prompts ONLY; 提示词仅限英文」,模型对中文的语义理解远不如英文,这是 T5 编码器本身在预训练阶段的数据分布决定的。如果必须用中文,建议先用 GPT 等翻译成英文再输入。
文字渲染仍不稳定。 虽然 4K 分辨率为文字渲染提供了更大的像素空间,但在包含大量文字的场景(如海报、菜单)生成时,文字错位、变形的问题仍然存在——这是当前几乎所有文生图模型的共同难题,不能苛责 PixArt-Σ。
License 合规。 项目采用 Apache-2.0 许可证,但使用的 T5-Flan-T5-XXL 编码器来自 Google,权重本身有额外的许可条款,商业使用前需确认是否涉及 Google T5 的 License 约束。
项目活跃度趋于平稳。 最后一次提交在 2024 年 4 月底(LoRA 和 2K checkpoint 发布),距今已有一段时间,issues 响应频率下降。对于想要跟进最新改进的用户来说,可能需要自行维护 fork。
PixArt-Σ 的出现,本质上是一场关于「谁能用更少资源做出更好的图」的技术竞赛。
从数字来看:PixArt-α 的训练成本约为 200 美元·天的 A100 GPU 小时,而 PixArt-Σ 在此基础上进一步优化了训练效率。对比之下,Midjourney、OpenAI DALL·E 3 等商业服务的训练和运营成本是天文数字,普通开发者和研究者根本无法企及。开源的 DiT 路线让更多人看到了可能性:不是只有千亿美元算力才能做顶级文生图。
从技术路线来看,PixArt-Σ 进一步验证了 DiT 替代 U-Net 的可行性。Sora 公布后,DiT 已成为文生视频模型的主流架构(因为视频的时空序列更长,Transformer 的可扩展性优势更明显)。PixArt-Σ 的 4K 成功实践,为后续 DiT 视频模型在空间分辨率上的扩展提供了有价值的参考。
从生态位来看,PixArt-Σ 填补了「高质量开源 + 高分辨率 + Transformer 架构」三角的空白地带。与 SDXL(U-Net 架构、1024px)、Playground-v2(U-Net、1024px)相比,PixArt-Σ 在分辨率上领先;与 Imagen(LLM 编码器)相比,它的开源程度和可复现性更强。
一句话总结: PixArt-Σ 是一个工程完成度较高、4K 分辨率领先、开源可复现的 DiT 文生图模型,适合有 GPU 资源、对图像分辨率有高要求、愿意花时间处理依赖的 AI 研究者和开发者。普通用户建议直接使用 HuggingFace 在线 Demo。
图2:PixArt 系列项目技术演进,DiT 架构从 α 到 Σ 的核心改进
本报告基于 GitHub 仓库(master 分支,2024年4月最新更新)、arXiv:2403.04692 论文及 HuggingFace 官方页面综合分析生成。报告中的图片均来自 PixArt-α 官方开源仓库,HuggingFace 为原始链接。