dpm-solver

10步内完成扩散模型采样,图像生成提速数倍

开源 🏷️完全免费 🔧 仅开源项目,无在线服务,需自行部署 图像生成 🍴 复刻 136 🐛 待处理 30 👀 关注 18
GitHub ↗
GitHub 星标 ★ 1860
维护状态 低维护
是否开源 开源
定价模式 🏷️完全免费 开源项目,MIT许可证,完全免费,可自行部署使用。

项目预览

dpm-solver 项目界面预览图
图片来源:GitHub 官方仓库名片

项目数据

分类图像生成
开发团队LuChengTHU
定价模式🏷️完全免费
价格说明开源项目,MIT许可证,完全免费,可自行部署使用。
访问状态🔧 仅开源项目,无在线服务,需自行部署
是否开源是
开源协议MIT
主要语言Python
技术栈/模型diffusion-models,machine-learning,score-based-generative-models,stable-diffusion
GitHub 星标★ 1860
上线时间2022-08-07 00:00:00
代码更新2024-02-06
仓库体积65.0 MB
本站数据更新2026-11-09
维护状态低维护
收录时间2026-08-09
浏览次数3

项目介绍

DPM-Solver 是 NeurIPS 2022 Oral 论文的官方实现,针对扩散概率模型(DPM)采样速度慢的问题,提出了一种基于常微分方程(ODE)的高阶快速求解器。传统扩散模型采样通常需要数百步去噪迭代,而 DPM-Solver 通过数学推导将采样过程转化为 ODE 求解,在保持生成质量的同时,将采样步数大幅压缩至 10 步左右,甚至可低至 4-5 步。该工具支持多种扩散模型架构,包括基于分数(score-based)的生成模型和 Stable Diffusion 等主流文生图模型,提供简洁的 API 接口,可无缝集成到现有 PyTorch 流程中。核心能力包括:高阶 ODE 求解器(支持 1 阶、2 阶、3 阶)、自适应步长与噪声调度优化、以及针对不同模型(如 DDPM、SDE)的适配方案,显著提升推理效率,适用于实时图像生成、移动端部署等对延迟敏感的场景。

Star 增长趋势

本站每日记录该项目 GitHub 星标变化,观测越久曲线越完整

数据来源:GitHub API 逐日快照 · 收录于 2026-08-09 · 当前星标 ★ 1860

使用教程

⚠ 本教程由 AI 依据该项目 README 整理;原始文档不完整,部分步骤为通用流程推断,实际安装请以项目官方文档为准。

难度:进阶 约 15 分钟 部署方式:库/依赖 5 步

⚠ 该项目 README 未提供完整安装说明,以下步骤为通用流程,请以官方文档为准。

环境要求

  • Python 环境(项目为 Python 实现)
  • PyTorch 及相关扩散模型运行环境
  • Git(用于克隆官方仓库)
  • 一个可用的扩散模型(如 Guided-Diffusion、Stable-Diffusion 等)

安装与启动步骤

  1. 1克隆官方仓库

    从 GitHub 拉取 DPM-Solver 官方代码仓库到本地,这是后续所有操作的基础。

    git clone https://github.com/LuChengTHU/dpm-solver.git
  2. 2进入项目目录

    切换到刚克隆下来的仓库目录,后续按仓库内说明安装依赖、运行脚本。

    cd dpm-solver
  3. 3按仓库说明安装依赖

    本次 README 节选未给出任何 pip/conda 安装命令与依赖清单,请打开仓库内完整 README 按其实际说明安装,勿臆测包名。

  4. 4接入 Diffusers 使用

    README 明确有“Use the SOTA Multistep DPM-Solver++ with Diffusers”章节,说明可直接在 Diffusers 中使用 DPM-Solver++,具体调用代码见该章节(节选被截断)。

  5. 5直接用于采样

    DPM-Solver 是免训练的快速 ODE 求解器,可直接替换现有扩散模型的采样器,无需重新训练模型。

如何确认成功

README 未提供启动成功判定方式;运行仓库示例后若能以约 10~20 次函数评估生成高质量样本即为生效。

常见问题

Q:需要重新训练模型吗?

A:不需要。README 明确说明 DPM-Solver 适用于离散时间和连续时间扩散模型,且无需任何额外训练。

Q:采样需要多少步?

A:README 给出的实验结果是仅需约 10~20 次函数评估(function evaluations)即可在多个数据集上生成高质量样本。

Q:支持哪些模型?

A:README 展示了与 Guided-Diffusion、Stable-Diffusion、DiffEdit 的配合效果,并提供了在 Diffusers 中使用 DPM-Solver++ 的章节。

Q:为什么没有安装命令?

A:本次提供的 README 节选未包含安装与依赖说明,为避免编造包名和参数,仅给出可确认的仓库克隆步骤。

注意事项

  • README 节选未给出安装命令、依赖列表、端口或路径,因此步骤中未提供这些内容,请以仓库完整 README 为准。
  • DPM-Solver 是扩散模型采样求解器/代码库,不是可独立启动的应用或服务,需配合扩散模型代码使用。
  • README 中的示例图涉及 Guided-Diffusion、Stable-Diffusion、DiffEdit 与 Diffusers,具体接入代码需查阅对应章节。

核心亮点

  • 采样步数从数百降至10步左右,速度提升可达20倍以上
  • 官方实现,算法经过严格理论验证,生成质量与原始模型相当
  • 支持Stable Diffusion等主流模型,API简洁易集成

不足之处

  • 对非连续时间步长或特定噪声调度可能需调参,开箱即用性一般
  • 文档偏学术,缺少面向初学者的快速上手教程
  • 项目更新频率较低,社区活跃度一般

适用场景

  • 实时或交互式图像生成,如AI绘画工具、设计辅助
  • 大规模批量生成场景,降低算力成本
  • 移动端或边缘设备上的扩散模型推理

替代项目

DDIM、UniPC、DPM-Solver++

上一篇:lora-scripts

下一篇:TinyEngram

同类项目推荐

halo 开源

一套框架搞定 LLM 与多模态的微调和强化学习训练

Halo is an open-source framework built by White Circle for training large language a···

★ 853 2026-09-25
trainer 开源

在 Kubernetes 上轻松跑起分布式模型训练和微调

Distributed AI Model Training and LLM Fine-Tuning on Kubernetes

★ 2278 2026-08-09
DDSM 开源

让扩散模型训练更快更省,按步骤智能分配学习资源

Denoising Diffusion Step-aware Models (ICLR2024)

★ 61 2026-08-09
mantis 开源

轻量级时间序列分类基础模型,小样本也能精准分类

Mantis: Lightweight Foundation Model for Time Series Classification

★ 161 2026-08-09
EasyR1 开源

多模态强化学习训练,高效扩展不卡壳

EasyR1: An Efficient, Scalable, Multi-Modality RL Training Framework based on veRL

★ 5212 2026-08-09
gpu-recipes 开源

在 GCP 上按配方跑通大模型训练与推理基准

Recipes for reproducing training and serving benchmarks for large machine learning m···

★ 148 2026-10-17
amazon-sagemaker-examples 开源

照着跑一遍,轻松上手 AWS 机器学习全流程

Example Jupyter notebooks that demonstrate how to build, train, and deploy machine ···

★ 11003 2026-08-09
LLMs-from-scratch 开源

手把手从零造出 ChatGPT,原理代码一次搞懂

Implement a ChatGPT-like LLM in PyTorch from scratch, step by step

★ 108069 2026-08-09
SiLLM 开源

在 Mac 上轻松训练和运行大模型,无需 NVIDIA GPU。

SiLLM simplifies the process of training and running Large Language Models (LLMs) on···

★ 283 2026-08-09