OmniGen
统一图像生成模型,一句话指令完成文生图、主体驱动、图像编辑等多种任务,无需额外预处理模块
加载项目详情…
本应用为开源项目,仅供学习研究,请遵守其开源协议。
统一图像生成模型,一句话指令完成文生图、主体驱动、图像编辑等多种任务,无需额外预处理模块
加载项目详情…
本应用为开源项目,仅供学习研究,请遵守其开源协议。
想象这样一个场景:你要生成一张「一位红衣男子坐在咖啡馆里看书」的图片。传统的Stable Diffusion需要加载额外的ControlNet控制姿态、IP-Adapter注入参考图风格、ReferenceNet处理构图……光是配置这些模块就让人头大。OmniGen的出现,像是一个「全能选手」,只需要一句文字指令,就能一次性搞定所有事情。
图1:OmniGen 模型架构总览
图2:OmniGen 核心功能展示

在自然语言处理领域,GPT系列早已证明了一个「大一统」模型的威力——一个模型就能写文章、翻译、编程、回答问题。但在图像生成领域,情况却截然不同。Stable Diffusion负责基础生成,ControlNet负责姿态控制,IP-Adapter负责风格迁移,Inpainting模型负责局部编辑……每加一个功能,就需要引入一个新的网络模块,整个系统变得越来越臃肿。
这种「模块堆叠」的路线存在几个根本性问题:
OmniGen团队认为,图像生成的未来应该是「像GPT一样」——用户给出一个指令,模型端到端完成所有处理。这种理念直接体现在项目名称中:OmniGen,即「全能生成器」。
OmniGen的核心突破在于,它用一个统一的扩散模型架构,同时支持多种图像生成任务,无需任何额外模块或预处理步骤。
这是OmniGen的基础能力。用户只需要提供一段文字描述,模型就能生成对应图像。OmniGen基于Phi-3作为文本编码器,结合Flux风格的Diffusion Transformer架构,能够理解复杂的场景描述,生成构图合理、细节丰富的图像。
上传一张参考图片,OmniGen可以将该图片中的主体(如人物、宠物)迁移到新的场景中,同时保持主体的关键特征(面部特征、衣着颜色等)。这种能力对于品牌营销、内容创作非常有价值——只需一张模特照,就能生成在不同场景、不同姿势下的多张图片。
图3:主体驱动生成效果示例

OmniGen支持对已有图像进行精准编辑。用户可以指定「将背景从室内换成室外」、「给人物添加一顶帽子」等指令,模型会自动理解并执行编辑,无需额外的Inpainting或蒙版工具。
OmniGen支持在prompt中同时嵌入文字和图片作为条件输入。例如:「图片中右侧的人物保持不变,左侧添加一只猫」——OmniGen通过<img><|image_1|></img>占位符语法来指代输入图片,实现灵活的混合条件控制。
OmniGen还探索了扩散模型中的推理能力。通过将复杂任务分解为多个子步骤,模型可以「思考」后再生成,这在复杂场景理解和多物体关系处理上展现出潜力。
从代码结构来看,OmniGen采用了标准的PyTorch生态:
代码结构清晰,模块化程度高:model.py负责模型定义,pipeline.py负责推理流程,processor.py处理输入,scheduler.py控制扩散采样步骤。这种设计让研究者和开发者能够快速定制和扩展。
OmniGen提供了多种体验途径:
方式一:HuggingFace Gradio Demo(最简单,推荐体验)
访问 huggingface.co/spaces/Shitao/OmniGen,直接在线体验文字生图和主体驱动功能,无需任何安装。
方式二:pip 安装
git clone https://github.com/VectorSpaceLab/OmniGen.git
cd OmniGen
pip install -e .
推理代码非常简洁:
from OmniGen import OmniGenPipeline
pipe = OmniGenPipeline.from_pretrained("Shitao/OmniGen-v1")
images = pipe(prompt="A curly-haired man in a red shirt is drinking tea.", height=1024, width=1024)
images[0].save("example.png")
方式三:本地部署注意事项
OmniGen对硬件有一定要求。官方推荐RTX 3090及以上级别的GPU,FP16精度下需要约20GB显存。如果显存不足,可以开启offload_model和offload_kv_cache选项,将部分权重卸载到内存,换取更低的显存占用。
OmniGen并非完美,以下几点值得注意:
OmniGen是CVPR 2025的Oral论文(收录于IEEE Xplore),由清华大学-TIE Lab团队开发。项目于2024年9月开源至今(2026年6月),已获得超过4300颗星、360余次Fork,生态相当活跃。
从开源生态角度看,OmniGen已接入HuggingFace Diffusers官方库,意味着可以直接用Diffusers的标准API调用。此外还有Replicate API支持、完整的微调文档、X2I开源数据集,以及OmniGen2的持续迭代。
OmniGen的「大一统」思路代表了一个重要趋势——图像生成正走在从「工具集合」向「通用智能」演进的路上。它的出现不是为了替代现有工具,而是为研究者提供了一个强大的baseline,也为未来更通用的图像生成模型指明了方向。