MiniSora实测:3套扩散Transformer基线一个仓库装下,10分钟选出你该跑的那个 📅 2026/8/24 3:03:25 MiniSora实测3套扩散Transformer基线一个仓库装下10分钟选出你该跑的那个【免费下载链接】minisoraMiniSora: A community aims to explore the implementation path and future development direction of Sora.项目地址: https://gitcode.com/GitHub_Trending/mi/minisoraMiniSora是Sora复现社区codes/下打包了3套可跑的扩散Transformer基线OpenDiT、SiT、StableCascade。本文拆完三个代码库的入口与真实训练数据给出图像、视频、文生图三类场景的选型结论。⚡ 5分钟复现3步拿到第一份扩散Transformer生成结果第1步克隆仓库第2步直接用SiT的预训练权重跑通单条采样命令全仓库最快出结果的路径第3步想从零训练就切到OpenDiT的CIFAR10最小配置。# 1. 拿到仓库 git clone https://gitcode.com/GitHub_Trending/mi/minisora cd minisora/codes/SiT # 2. SiT建环境后直接采样预训练权重自动下载 conda env create -f environment.yml conda activate SiT python sample.py ODE --image-size 256 --seed 1训练入口cd codes/OpenDiT pip install -e .再执行torchrun --standalone --nproc_per_node2 train.py --model DiT-XL/2 --batch_size 2 --num_classes 102卡即可跑通CIFAR10最小训练。跑完这两条命令你就有了后文所有指标讨论的对照锚点。️ 全貌一张图三个代码库共用同一条VAE Transformer主干三个代码库看起来是三件事走的是同一条主干VAE把像素压进潜空间 → 潜空间切patch变成token序列 → Transformer估计噪声场 → 解码回像素。上图是这条主干的视频完整版仓库内Latte精读笔记的配图SD的VAE先把帧压成4D latentPatchEmbed3D转成时空token序列DiT主干逐层去噪最后解码器还原出视频。三个基线的差异不在主干而在三处条件注入方式adaLN-Zero、训练框架diffusion还是interpolant、推理载体类别标签还是文本、单阶段还是级联。记住这个骨架再读三份代码时你会发现八成文件都是这张图的变体。 核心机制拆解三份代码库各挑重点OpenDiTadaLN-Zero条件注入与内核融合加速原理一句话每个block用一个MLPc→6×D生成6个调制参数shift/scale/gate × attention/MLP时间和条件嵌入c调制每一层的LayerNorm让同一个网络处理整个扩散过程。block实现在codes/OpenDiT/opendit/modules/block.py模型装配在codes/OpenDiT/opendit/models/dit.pyuse_videoTrue时2D patch嵌入自动换成3D时空嵌入文本编码器。两个关键参数enable_flashattn必须fp16/bf16和sequence_parallel_size大于1启用FastSeq序列并行官方标称最多省48%通信量enable_modulate_kernel官方注明可能出NaN默认关着别开。这是OpenDiT在ImageNet上训练DiT-XL/2的产出官方验证精度并放出checkpoint。实测训练配置是8×A100内核融合后官方标称最高提速80%、省显存50%——这是三个代码库里唯一把训练效率做成系统工程的。SiT把训练框架和架构解耦SiT的block就是DiT的adaLN-Zero block但训练时把加噪调度换成interpolant框架扩散系数与学习目标解耦、可独立调同一骨干既能训diffusion也能训flow。核心实现只在codes/SiT/models.py全文件约370行训练在codes/SiT/train.py采样器配置在codes/SiT/transport/。两个值得先动的参数--diffusion-normSDE扩散系数幅度FID 2.06就来自对它的系统调参和--sampling-methodODE用EulerSDE支持Euler/Heun。官方表述很直接ImageNet 256上SiT在所有模型尺寸上全面超过DiT——用的是一模一样的backbone、参数量和FLOPs。StableCascade42倍压缩让文生图推理更便宜原理走反方向不做强模型做强压缩。Stage AVAE Stage B扩散把1024²图像压到24×24潜空间Stage C文本条件扩散模型才在超压缩空间里生成。三级分别落在codes/StableCascade/modules/stage_a.py、stage_b.py、stage_c.py训练入口在codes/StableCascade/train/。参数选择Stage C官方推荐3.6B而非1Bfinetuning主要投在3.6B上Stage B选1.5B对细小细节重建更好。官方人评PartiPrompts美学提示词里Stable Cascade的提示词对齐和美学质量同时压过SDXL和Playground v2。三个机制对应三种选型逻辑OpenDiT赢在训练工程SiT赢在数字StableCascade赢在推理成本——看完这一节后文的对比表可以直接对号入座。 横向对比FID、参数量与三条不同的效率路线代码库任务评测质量指标参数量速度与部署特性OpenDiTDiT-XL/2ImageNet 256类别条件gFID 2.27论文675M内核融合最高提速80%、省显存50%序列并行破单卡上限SiTSiT-XL/2ImageNet 256类别条件FID-50K 2.06 / IS 270.27675M与DiT-XL/2相同119 Gflops官方表ODE/SDE采样器与扩散系数可调StableCascade文生图1024²人评提示词对齐/美学领先SDXL、Playground v2A 20M B 1.5B C 3.6B42倍压缩、比SDXL推理更快LoRA/ControlNet开箱即用三条判断SiT与DiT同骨干、同参数量、同FLOPsFID却从2.27降到2.06——差距来自训练框架interpolant扩散系数不是架构。所谓架构选型选的大多是训练框架。StableCascade与前两者不在同一坐标系模型最大比SDXL还多1.4B参数、潜空间最小24²推理反而最便宜别拿它的FID和前两个跨任务类型硬比。OpenDiT是三者中唯一带分布式工程的要训视频DiT只有它有现成的序列并行和ZeRO。这张官方图是判断2最直观的证据Stable Cascade参数量比SDXL大、推理时间反而短——省的不是模型是潜空间。 选型决策清单按你的场景对号入座如果你想逐行读懂DiT并快速验证训练流程 → 选SiT。370行代码、预训练权重现成、一条命令出图是理解扩散Transformer的最低成本入口。如果你要训视频/文生视频DiT、手里有≥2张A100 → 选OpenDiT。内核融合FastSeq序列并行且社区已扩展到Latte文生视频训练工程不用自己搭。如果你做文生图产品、在意推理成本和LoRA/ControlNet生态 → 选StableCascade。42倍压缩潜空间直接等于更低的推理成本扩展件仓库里都已提供。如果你只想要学习资料和论文精读 → 用仓库notes/目录Latte、SD3、PixArt-Σ中文笔记配合docs/survey_README_zh-CN.md足够把Sora前后的技术脉络串成一张图。❓ 常见疑问4个容易踩坑的问题SiT和DiT是不是两种架构基本不是。SiT的block结构就是DiT的adaLN-Zero论文明确用与DiT相同的backbone、参数量和FLOPs差异在训练期的interpolant框架和采样器。2.06对2.27是框架收益不是架构收益。OpenDiT是Meta官方DiT代码吗不是。它是NUS HPC-AI lab的高性能系统实现架构遵循DiT论文额外加了FlashAttention、fused AdaLN/LayerNorm内核、ZeRO和FastSeq序列并行三个加速开关默认全关需自己打开。--enable_modulate_kernel要不要开官方README明确提示它在某些情况下会出NaN、建议暂不启用——典型的看似该开、实际踩坑选项。先开enable_flashattn和enable_layernorm_kernel跑稳了再考虑modulate内核。这三份代码库能直接复现Sora吗仓库目标是8卡A100/4090级算力、3-10秒480p当前codes/全是图像基线OpenDiT已扩展到Latte文生视频但视频生成仍属实验性质别指望开箱即出Sora级视频。✅ 一句话收束MiniSora的价值是给了你一套可直接运行的Sora复现候选集做图像扩散Transformer研究从SiT起步代码最短、数字最好做视频从OpenDiT起步唯一有分布式工程做文生图产品看StableCascade推理最便宜。执行git clone https://gitcode.com/GitHub_Trending/mi/minisora拉下仓库先跑codes/SiT/sample.py再翻notes/Latte.md这两步走完Sora复现的地图就在你手里了。【免费下载链接】minisoraMiniSora: A community aims to explore the implementation path and future development direction of Sora.项目地址: https://gitcode.com/GitHub_Trending/mi/minisora创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考