dllm

用扩散模型生成文本,更快更灵活

开源 🏷️完全免费 🔧 仅开源项目,无在线服务,需自行部署 开源模型 🍴 复刻 286 🐛 待处理 21 👀 关注 18
GitHub ↗
GitHub 星标 ★ 2726
维护状态 低维护
是否开源 开源
定价模式 🏷️完全免费 开源项目,Apache-2.0许可证,可免费使用和部署。

项目预览

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

项目数据

分类开源模型
开发团队ZHZisZZ
定价模式🏷️完全免费
价格说明开源项目,Apache-2.0许可证,可免费使用和部署。
访问状态🔧 仅开源项目,无在线服务,需自行部署
是否开源是
开源协议Apache-2.0
主要语言Python
技术栈/模型discrete-diffusion-models,llm,nlp
GitHub 星标★ 2726
上线时间2025-09-14 00:00:00
代码更新2026-07-17
仓库体积27.0 MB
本站数据更新2026-11-07
维护状态低维护
收录时间2026-08-09
浏览次数7

项目介绍

dLLM 是一个基于扩散模型的简单语言建模开源项目,旨在探索将扩散模型应用于文本生成的新范式。它解决了传统自回归语言模型在生成速度和解码灵活性上的局限,通过去噪过程逐步生成文本,支持并行解码和可控生成。核心能力包括:简洁的 PyTorch 实现、支持多种扩散采样策略、与 Hugging Face 生态兼容,以及提供预训练模型和训练脚本。项目代码结构清晰,适合研究者快速上手扩散语言建模,也为工业界提供了一种新的生成模型选择。

Star 增长趋势

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

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

技术标签

使用教程

ℹ 本教程由 AI 依据该项目 README 整理,个别步骤可能需要按你的环境微调。

难度:进阶 约 30 分钟 部署方式:本地安装 7 步

环境要求

  • Linux/Conda 环境,具备可用的 NVIDIA GPU 与 CUDA 驱动
  • 已安装 conda,可创建独立 Python 环境
  • PyTorch 2.6.0 + CUDA 12.4(其他 PyTorch/CUDA 版本 README 称也可用)
  • 示例训练需要 8 张 GPU(ZeRO-2 配置)
  • 磁盘空间用于存放模型权重与训练日志

安装与启动步骤

  1. 1获取项目代码

    README 使用 pip install -e . 安装,需先把仓库下载到本地并进入根目录,后续命令都在该目录执行。

    git clone https://github.com/ZHZisZZ/dllm.git
    cd dllm
  2. 2安装 CUDA 工具链

    通过 conda 安装 CUDA 12.4,作为 PyTorch 的运行基础;已有匹配 CUDA 环境可跳过。

    conda install cuda=12.4 -c nvidia
  3. 3安装 PyTorch

    按 README 指定版本从官方 cu124 源安装 torch、torchvision、torchaudio,注意 index-url 不能省略。

    pip install torch==2.6.0 torchvision==0.21.0 torchaudio==2.6.0 \
        --index-url https://download.pytorch.org/whl/cu124
  4. 4安装 dllm 包

    以可编辑模式安装本仓库,需在项目根目录执行;此步会拉取 transformers、peft 等依赖。

    pip install -e .
  5. 5安装评测依赖

    可选步骤。若要做评测,需以可编辑模式安装 lm-evaluation-harness 子模块并带 IFEval、Math 依赖。

    pip install -e "lm-evaluation-harness[ifeval,math]"
  6. 6配置 Slurm 日志

    可选步骤,仅 Slurm 用户需要:先建日志目录,再修改 scripts/train.slurm.sh 中的 partition 与 quotatype 为集群实际值。

    mkdir .logs
  7. 7本地启动训练

    使用 accelerate 读取 zero2 配置,在 examples/llada 上跑 SFT,开启 4bit 量化与 LoRA 降低显存占用。

    accelerate launch \
        --config_file scripts/accelerate_configs/zero2.yaml \
        examples/llada/sft.py \
        --num_train_epochs 4 \
        --load_in_4bit True --lora True

关键配置

配置项必填说明示例
--config_file是accelerate 启动配置,zero2.yaml 对应 ZeRO-2 分片策略scripts/accelerate_configs/zero2.yaml
--num_train_epochs否训练轮数,示例中为 4 轮4
--load_in_4bit否以 4bit 量化加载模型,显著降低显存占用True
--lora否启用 LoRA 低秩微调,只训练少量适配参数True
#SBATCH --partition否Slurm 用户需改为自己集群的队列名称YOUR_PARTITION
#SBATCH --quotatype否Slurm 用户需改为自己集群的配额类型YOUR_QUOTATYPE

如何确认成功

pip install -e . 无报错即安装成功;accelerate launch 后终端持续输出训练日志和迭代进度即启动成功。

常见问题

Q:一定要 CUDA 12.4 和 PyTorch 2.6.0 吗?

A:README 注明其他 PyTorch/CUDA 版本也应该可以工作,示例只是给出了一套验证过的组合,可按本机驱动自行替换。

Q:显存不够怎么办?

A:示例已开启 --load_in_4bit True 与 --lora True;还可减少 batch、换更小的模型,或改用多卡 ZeRO-2/FSDP 配置。

Q:必须用 8 张 GPU 吗?

A:README 的本地示例描述为 8 卡 ZeRO-2,但命令本身未写死卡数,可通过修改 accelerate 配置文件适配自己的机器。

Q:评测环境怎么装?

A:执行 pip install -e "lm-evaluation-harness[ifeval,math]",评测流程基于 lm-evaluation-harness,注意这是可选步骤。

Q:预训练模型去哪下载?

A:README 顶部提供了 Hugging Face 模型页 https://huggingface.co/dllm-hub,可直接从该仓库获取权重。

注意事项

  • README 只提供了 pip install -e .,说明它假定你已经在项目根目录,因此需先克隆仓库再安装。
  • 训练示例的命令行参数需在根目录执行,换目录会导致找不到 scripts/ 和 examples/ 路径。
  • Slurm 用户务必把 train.slurm.sh 里的 partition 和 quotatype 改成自己集群的值,否则任务无法提交。
  • 项目依赖 transformers Trainer、peft、DeepSpeed/FSDP,安装过程可能需要较长时间且对网络有要求。

核心亮点

  • 并行解码,生成速度优于自回归模型
  • 支持多种采样策略,生成质量可调
  • 代码简洁,基于 PyTorch,易于扩展

不足之处

  • 扩散模型在文本生成上仍处于实验阶段,成熟度不及自回归
  • 文档和社区生态相对薄弱,待观察

适用场景

  • 学术研究:探索非自回归语言模型
  • 低延迟文本生成场景,如实时对话
  • 可控文本生成,如风格或主题控制

替代项目

Diffusion-LM、DiffuSeq、GENIE

上一篇:FreedomGPT

下一篇:Awesome-LLM-KG

同类项目推荐

TabPFN 开源

几行代码搞定表格数据预测,小样本也能媲美调优后的 XGBoost。

⚡ TabPFN: Foundation Model for Tabular Data ⚡

★ 8380 2026-08-09
Valley 开源

一个模型同时看懂文字、图片、视频和音频

Valley is a cutting-edge multimodal large model designed to handle a variety of task···

★ 300 2026-10-07
Otter 开源

让开源多模态模型听懂指令,看图说话更听话

Otter, a multi-modal model based on OpenFlamingo (open-sourced version of DeepMind's···

★ 3442 2026-08-09
awesome-japanese-llm 开源

一站式查找日语大模型,快速选型不踩坑

日本語LLMまとめ - Overview of Japanese LLMs

★ 1446 2026-08-09
awesome-ai 开源

一站式导航,快速找到AI学习与开发资源

A curated list of artificial intelligence resources (Courses, Tools, App, Open Sourc···

★ 557 2026-08-09
mPLUG-Owl 开源

看图说话+指令对话,让AI同时读懂文字和图像

mPLUG-Owl: The Powerful Multi-modal Large Language Model Family

★ 2540 2026-08-09
Awesome-LLM-Ensemble 开源

一页看尽LLM集成研究,快速定位核心论文

A curated list of Awesome-LLM-Ensemble papers for the survey "Harnessing Multiple La···

★ 257 2026-08-09
DeSTA2 开源

不用语音指令数据,也能让模型听懂并执行语音指令

Code and model for ICASSP 2025 Paper "Developing Instruction-Following Speech Langua···

★ 127 2026-08-09
awesome-harness-engineering 开源

一站式收藏AI智能体开发工具,快速上手构建生产级应用。

️ Awesome tools & guides for harness engineering.

★ 4642 2026-08-09