开发者生态
morning
DiffusionBench:对生成扩散变压器进行整体评估
2026-06-24
1 阅读
ilreb
扩散台################################################################################## # # # ____ _ __ __ _ .-----------。 # # | _ \(_)/ _|/ _|_ _ ___(_) ___ _ __ | | # # | | | | | |_| |_| | | /__| |/ _ \| '_ \ | ░▒▓█▓▒░▒▓ | # # | |_| | | _| _| |_| \__ \ | (_) | | | | | ▒▓█████▓▒ | # # |____/|_|_| |_| \__,_|___/_|\___/|_| |_| | ▓███████▓ | # # | ↓ | # # ____ _ | █████████ | # # | __ ) ___ _ __ ___| |__ | ▓███████▓ | # # | _\/_\'_\/__| '_ \ | ▒▓█████▓▒ | # # | |_) | __/ | | | (__| | | | | | # # |____/ \___|_| |_|\___|_| |_| '-----------' # # # # 因为单独的 ImageNet 评估已经不够了! # # # ############################################################################## 这个存储库包含 DiffusionBench 的统一代码库。它支持跨不同的训练和评估通过单个界面生成任务(ImageNet、T2I 等),请加入我们,使用 DiffusionBench 进行 200K 次迭代训练的文本到图像样本。 # 安装 uv 项目管理器(如果还没有)curl -LsSf https://astral.sh/uv/install.sh | sh # 安装依赖项 uv sync # 准备数据 uv run python script/prepare.py --data {all,imagenet,t2i,eval} # 下载预训练模型 uv run hf download iteration-bench/diffusion-bench --local-dir pretrained_models --exclude .gitattributes 训练复制流程:第 1 阶段 → 第 2 阶段。首先设置这些环境变量(用于输出目录和 W&B 日志记录):export EXPERIMENT_NAME= < run-name > export ENTITY= < wandb-entity > export PROJECT= < wandb-project > export WANDB_KEY= < key > 第 1 阶段. 训练 RAE 分词器: uv run torchrun --standalone --nproc_per_node=8 \ src/train_stage1.py \ --config [STAGE1_CONFIG_PATH] \ --results-dir results/stage1 -- precision bf16 --compile --wandb 第 2 阶段. 在VAE/RAE/像素空间: uv run torchrun --standalone --nproc_per_node=8 \ src/train.py \ --config [STAGE2_CONFIG_PATH] \ --results-dir results/stage2 -- precision bf16 --compile --wandb 评估阶段 2 训练配置在训练期间运行在线评估(eval:块)。对于已发布检查点的独立评估,请使用抽样/配置 - 每个嵌入stage_2.ckpt (指向 pretrained_models/ )和评估时间指导,因此权重会自动加载: export EXPERIMENT_NAME= < run-name > # 第 1 阶段重建 (rFID/PSNR/SSIM/LPIPS) uv run torchrun --nproc_per_node=8 src/offline_eval_stage1.py --config [STAGE1_CONFIG_PATH] # 第 2 阶段生成 (FID/IS, GenEval/DPGBench/...) uv run torchrun --nproc_per_node=8 src/offline_eval.py --config [STAGE2_CONFIG_PATH] 可用配置 configs/ ├── stage1/ └── stage2/ ├── Training/ │ ├── imagenet/ │ └── t2i/ └── 采样/ ├── imagenet/ └── t2i/ 第 2 阶段跨越 VAE (11)、RAE (6)、REG (4) 和 Pixel (3) 系列,在 ImageNet 和 T2I 之间交换任何配置,并通过单个路径更改在任务之间交换任何配置,但添加了经过训练的检查点和评估时间指导,因此它直接运行离线评估。 )或每个模型最佳 CFG 变体( [STAGE2_CONFIG_PATH]-cfg-t0.0-0.9.yaml )支持的方法类别方法潜在空间像素空间 RAE(30+ 表示编码器):DINOv2 SigLIP2 WebSSL PE LangPE 和更多 RAEv2(30+ 表示编码器):DINOv2 SigLIP2 WebSSL PE LangPE 等 VAE(10+) VAEs): FLUX.2 FLUX.1 SD3.5 VA-VAE E2E-VAE 等 输出预测 x-预测 v-预测 传输 整流流 MeanFlow 改进-MeanFlow 像素-均值流漂移损失 流匹配 REPA iREPA 架构 LightningDiT JiT DDT 任务 ImageNet :类条件生成 T2I :文本到图像生成 评估 ImageNet:FID IS T2I: GenEval DPGBench GenAIBench VQAScore 训练后端 DDP FSDP [TODO] 兼容性状态详细信息 编码代理 是 与代理兼容。有关设置和工作流程技能,请参阅技能/ AutoResearch 集成已计划(尚未提供)。请参阅 docs/contributors.md 和 docs/contributing.md 了解更多详细信息。 RAE RAEv2 REPA REPA-E JiT 我们感谢作者公开他们的工作。