[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"similar-dome272--Diffusion-Models-pytorch":3,"tool-dome272--Diffusion-Models-pytorch":64},[4,17,26,40,48,56],{"id":5,"name":6,"github_repo":7,"description_zh":8,"stars":9,"difficulty_score":10,"last_commit_at":11,"category_tags":12,"status":16},3808,"stable-diffusion-webui","AUTOMATIC1111\u002Fstable-diffusion-webui","stable-diffusion-webui 是一个基于 Gradio 构建的网页版操作界面，旨在让用户能够轻松地在本地运行和使用强大的 Stable Diffusion 图像生成模型。它解决了原始模型依赖命令行、操作门槛高且功能分散的痛点，将复杂的 AI 绘图流程整合进一个直观易用的图形化平台。\n\n无论是希望快速上手的普通创作者、需要精细控制画面细节的设计师，还是想要深入探索模型潜力的开发者与研究人员，都能从中获益。其核心亮点在于极高的功能丰富度：不仅支持文生图、图生图、局部重绘（Inpainting）和外绘（Outpainting）等基础模式，还独创了注意力机制调整、提示词矩阵、负向提示词以及“高清修复”等高级功能。此外，它内置了 GFPGAN 和 CodeFormer 等人脸修复工具，支持多种神经网络放大算法，并允许用户通过插件系统无限扩展能力。即使是显存有限的设备，stable-diffusion-webui 也提供了相应的优化选项，让高质量的 AI 艺术创作变得触手可及。",162132,3,"2026-04-05T11:01:52",[13,14,15],"开发框架","图像","Agent","ready",{"id":18,"name":19,"github_repo":20,"description_zh":21,"stars":22,"difficulty_score":23,"last_commit_at":24,"category_tags":25,"status":16},2271,"ComfyUI","Comfy-Org\u002FComfyUI","ComfyUI 是一款功能强大且高度模块化的视觉 AI 引擎，专为设计和执行复杂的 Stable Diffusion 图像生成流程而打造。它摒弃了传统的代码编写模式，采用直观的节点式流程图界面，让用户通过连接不同的功能模块即可构建个性化的生成管线。\n\n这一设计巧妙解决了高级 AI 绘图工作流配置复杂、灵活性不足的痛点。用户无需具备编程背景，也能自由组合模型、调整参数并实时预览效果，轻松实现从基础文生图到多步骤高清修复等各类复杂任务。ComfyUI 拥有极佳的兼容性，不仅支持 Windows、macOS 和 Linux 全平台，还广泛适配 NVIDIA、AMD、Intel 及苹果 Silicon 等多种硬件架构，并率先支持 SDXL、Flux、SD3 等前沿模型。\n\n无论是希望深入探索算法潜力的研究人员和开发者，还是追求极致创作自由度的设计师与资深 AI 绘画爱好者，ComfyUI 都能提供强大的支持。其独特的模块化架构允许社区不断扩展新功能，使其成为当前最灵活、生态最丰富的开源扩散模型工具之一，帮助用户将创意高效转化为现实。",107662,2,"2026-04-03T11:11:01",[13,14,15],{"id":27,"name":28,"github_repo":29,"description_zh":30,"stars":31,"difficulty_score":23,"last_commit_at":32,"category_tags":33,"status":16},2268,"ML-For-Beginners","microsoft\u002FML-For-Beginners","ML-For-Beginners 是由微软推出的一套系统化机器学习入门课程，旨在帮助零基础用户轻松掌握经典机器学习知识。这套课程将学习路径规划为 12 周，包含 26 节精炼课程和 52 道配套测验，内容涵盖从基础概念到实际应用的完整流程，有效解决了初学者面对庞大知识体系时无从下手、缺乏结构化指导的痛点。\n\n无论是希望转型的开发者、需要补充算法背景的研究人员，还是对人工智能充满好奇的普通爱好者，都能从中受益。课程不仅提供了清晰的理论讲解，还强调动手实践，让用户在循序渐进中建立扎实的技能基础。其独特的亮点在于强大的多语言支持，通过自动化机制提供了包括简体中文在内的 50 多种语言版本，极大地降低了全球不同背景用户的学习门槛。此外，项目采用开源协作模式，社区活跃且内容持续更新，确保学习者能获取前沿且准确的技术资讯。如果你正寻找一条清晰、友好且专业的机器学习入门之路，ML-For-Beginners 将是理想的起点。",84991,"2026-04-05T10:45:23",[14,34,35,36,15,37,38,13,39],"数据工具","视频","插件","其他","语言模型","音频",{"id":41,"name":42,"github_repo":43,"description_zh":44,"stars":45,"difficulty_score":10,"last_commit_at":46,"category_tags":47,"status":16},3128,"ragflow","infiniflow\u002Fragflow","RAGFlow 是一款领先的开源检索增强生成（RAG）引擎，旨在为大语言模型构建更精准、可靠的上下文层。它巧妙地将前沿的 RAG 技术与智能体（Agent）能力相结合，不仅支持从各类文档中高效提取知识，还能让模型基于这些知识进行逻辑推理和任务执行。\n\n在大模型应用中，幻觉问题和知识滞后是常见痛点。RAGFlow 通过深度解析复杂文档结构（如表格、图表及混合排版），显著提升了信息检索的准确度，从而有效减少模型“胡编乱造”的现象，确保回答既有据可依又具备时效性。其内置的智能体机制更进一步，使系统不仅能回答问题，还能自主规划步骤解决复杂问题。\n\n这款工具特别适合开发者、企业技术团队以及 AI 研究人员使用。无论是希望快速搭建私有知识库问答系统，还是致力于探索大模型在垂直领域落地的创新者，都能从中受益。RAGFlow 提供了可视化的工作流编排界面和灵活的 API 接口，既降低了非算法背景用户的上手门槛，也满足了专业开发者对系统深度定制的需求。作为基于 Apache 2.0 协议开源的项目，它正成为连接通用大模型与行业专有知识之间的重要桥梁。",77062,"2026-04-04T04:44:48",[15,14,13,38,37],{"id":49,"name":50,"github_repo":51,"description_zh":52,"stars":53,"difficulty_score":10,"last_commit_at":54,"category_tags":55,"status":16},519,"PaddleOCR","PaddlePaddle\u002FPaddleOCR","PaddleOCR 是一款基于百度飞桨框架开发的高性能开源光学字符识别工具包。它的核心能力是将图片、PDF 等文档中的文字提取出来，转换成计算机可读取的结构化数据，让机器真正“看懂”图文内容。\n\n面对海量纸质或电子文档，PaddleOCR 解决了人工录入效率低、数字化成本高的问题。尤其在人工智能领域，它扮演着连接图像与大型语言模型（LLM）的桥梁角色，能将视觉信息直接转化为文本输入，助力智能问答、文档分析等应用场景落地。\n\nPaddleOCR 适合开发者、算法研究人员以及有文档自动化需求的普通用户。其技术优势十分明显：不仅支持全球 100 多种语言的识别，还能在 Windows、Linux、macOS 等多个系统上运行，并灵活适配 CPU、GPU、NPU 等各类硬件。作为一个轻量级且社区活跃的开源项目，PaddleOCR 既能满足快速集成的需求，也能支撑前沿的视觉语言研究，是处理文字识别任务的理想选择。",74913,"2026-04-05T10:44:17",[38,14,13,37],{"id":57,"name":58,"github_repo":59,"description_zh":60,"stars":61,"difficulty_score":23,"last_commit_at":62,"category_tags":63,"status":16},2471,"tesseract","tesseract-ocr\u002Ftesseract","Tesseract 是一款历史悠久且备受推崇的开源光学字符识别（OCR）引擎，最初由惠普实验室开发，后由 Google 维护，目前由全球社区共同贡献。它的核心功能是将图片中的文字转化为可编辑、可搜索的文本数据，有效解决了从扫描件、照片或 PDF 文档中提取文字信息的难题，是数字化归档和信息自动化的重要基础工具。\n\n在技术层面，Tesseract 展现了强大的适应能力。从版本 4 开始，它引入了基于长短期记忆网络（LSTM）的神经网络 OCR 引擎，显著提升了行识别的准确率；同时，为了兼顾旧有需求，它依然支持传统的字符模式识别引擎。Tesseract 原生支持 UTF-8 编码，开箱即用即可识别超过 100 种语言，并兼容 PNG、JPEG、TIFF 等多种常见图像格式。输出方面，它灵活支持纯文本、hOCR、PDF、TSV 等多种格式，方便后续数据处理。\n\nTesseract 主要面向开发者、研究人员以及需要构建文档处理流程的企业用户。由于它本身是一个命令行工具和库（libtesseract），不包含图形用户界面（GUI），因此最适合具备一定编程能力的技术人员集成到自动化脚本或应用程序中",73286,"2026-04-03T01:56:45",[13,14],{"id":65,"github_repo":66,"name":67,"description_en":68,"description_zh":69,"ai_summary_zh":69,"readme_en":70,"readme_zh":71,"quickstart_zh":72,"use_case_zh":73,"hero_image_url":74,"owner_login":75,"owner_name":76,"owner_avatar_url":77,"owner_bio":78,"owner_company":79,"owner_location":80,"owner_email":79,"owner_twitter":81,"owner_website":82,"owner_url":83,"languages":84,"stars":89,"forks":90,"last_commit_at":91,"license":92,"difficulty_score":10,"env_os":93,"env_gpu":94,"env_ram":93,"env_deps":95,"category_tags":100,"github_topics":79,"view_count":23,"oss_zip_url":79,"oss_zip_packed_at":79,"status":16,"created_at":101,"updated_at":102,"faqs":103,"releases":134},3873,"dome272\u002FDiffusion-Models-pytorch","Diffusion-Models-pytorch","Pytorch implementation of Diffusion Models (https:\u002F\u002Farxiv.org\u002Fpdf\u002F2006.11239.pdf)","Diffusion-Models-pytorch 是一个基于 PyTorch 框架的扩散模型开源实现，旨在以极简的代码帮助开发者理解扩散模型的核心原理。它主要解决了现有实现往往过于复杂、难以快速上手的问题，将核心算法浓缩在约 100 行代码内，让学习者能轻松掌握从训练到生成的完整流程。\n\n该项目非常适合希望深入理解扩散模型底层逻辑的 AI 研究人员、学生以及入门级开发者。不同于其他使用复杂下界公式进行采样的实现，Diffusion-Models-pytorch 严格遵循 DDPM 原始论文中的算法步骤，确保了代码的纯粹性与易读性。项目提供了无条件生成和条件生成两种模式，其中条件生成版本还集成了分类器自由引导（CFG）和指数移动平均（EMA）等进阶技术，显著提升了生成图像的质量与可控性。此外，作者还配套了详细的理论讲解与代码实现视频，并提供了在风景数据集和 CIFAR-10 上的训练示例及预训练权重，让用户能够迅速在自己的数据上复现效果。如果你需要一个清晰、透明且功能完备的学习范本，这是一个理想的选择。","# Diffusion Models\nThis is an easy-to-understand implementation of diffusion models within 100 lines of code. Different from other implementations, this code doesn't use the lower-bound formulation for sampling and strictly follows Algorithm 1 from the [DDPM](https:\u002F\u002Farxiv.org\u002Fpdf\u002F2006.11239.pdf) paper, which makes it extremely short and easy to follow. There are two implementations: `conditional` and `unconditional`. Furthermore, the conditional code also implements Classifier-Free-Guidance (CFG) and Exponential-Moving-Average (EMA). Below you can find two explanation videos for the theory behind diffusion models and the implementation.\n\n\u003Ca href=\"https:\u002F\u002Fwww.youtube.com\u002Fwatch?v=HoKDTa5jHvg\">\n   \u003Cimg alt=\"Qries\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fdome272_Diffusion-Models-pytorch_readme_53430a918861.jpg\"\n   width=\"300\">\n\u003C\u002Fa>\n\n\u003Ca href=\"https:\u002F\u002Fwww.youtube.com\u002Fwatch?v=TBCRlnwJtZU\">\n   \u003Cimg alt=\"Qries\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fdome272_Diffusion-Models-pytorch_readme_698e8abcf990.png\"\n   width=\"300\">\n\u003C\u002Fa>\n\n\u003Chr>\n\n## Train a Diffusion Model on your own data:\n### Unconditional Training\n1. (optional) Configure Hyperparameters in ```ddpm.py```\n2. Set path to dataset in ```ddpm.py```\n3. ```python ddpm.py```\n\n### Conditional Training\n1. (optional) Configure Hyperparameters in ```ddpm_conditional.py```\n2. Set path to dataset in ```ddpm_conditional.py```\n3. ```python ddpm_conditional.py```\n\n## Sampling\nThe following examples show how to sample images using the models trained in the video on the [Landscape Dataset](https:\u002F\u002Fwww.kaggle.com\u002Fdatasets\u002Farnaud58\u002Flandscape-pictures). You can download the checkpoints for the models [here](https:\u002F\u002Fdrive.google.com\u002Fdrive\u002Ffolders\u002F1beUSI-edO98i6J9pDR67BKGCfkzUL5DX?usp=sharing).\n### Unconditional Model\n```python\n    device = \"cuda\"\n    model = UNet().to(device)\n    ckpt = torch.load(\"unconditional_ckpt.pt\")\n    model.load_state_dict(ckpt)\n    diffusion = Diffusion(img_size=64, device=device)\n    x = diffusion.sample(model, n=16)\n    plot_images(x)\n```\n\n### Conditional Model\nThis model was trained on [CIFAR-10 64x64](https:\u002F\u002Fwww.kaggle.com\u002Fdatasets\u002Fjoaopauloschuler\u002Fcifar10-64x64-resized-via-cai-super-resolution) with 10 classes ```airplane:0, auto:1, bird:2, cat:3, deer:4, dog:5, frog:6, horse:7, ship:8, truck:9```\n```python\n    n = 10\n    device = \"cuda\"\n    model = UNet_conditional(num_classes=10).to(device)\n    ckpt = torch.load(\"conditional_ema_ckpt.pt\")\n    model.load_state_dict(ckpt)\n    diffusion = Diffusion(img_size=64, device=device)\n    y = torch.Tensor([6] * n).long().to(device)\n    x = diffusion.sample(model, n, y, cfg_scale=3)\n    plot_images(x)\n```\n\u003Chr>\n\nA more advanced version of this code can be found [here](https:\u002F\u002Fgithub.com\u002Ftcapelle\u002FDiffusion-Models-pytorch) by [@tcapelle](https:\u002F\u002Fgithub.com\u002Ftcapelle). It introduces better logging, faster & more efficient training and other nice features and is also being followed by a nice [write-up](https:\u002F\u002Fwandb.ai\u002Fcapecape\u002Ftrain_sd\u002Freports\u002FTraining-a-Conditional-Diffusion-model-from-scratch--VmlldzoyODMxNjE3).\n","# 扩散模型\n这是一个易于理解的扩散模型实现，代码不超过100行。与其他实现不同，这段代码没有使用采样的下界公式，而是严格遵循[DDPM](https:\u002F\u002Farxiv.org\u002Fpdf\u002F2006.11239.pdf)论文中的算法1，因此代码非常简洁且容易跟进。提供了两种实现方式：`conditional`（条件）和`unconditional`（无条件）。此外，条件版本的代码还实现了无分类器指导（CFG）和指数移动平均（EMA）。下方是两段讲解视频，分别介绍扩散模型的理论基础和代码实现。\n\n\u003Ca href=\"https:\u002F\u002Fwww.youtube.com\u002Fwatch?v=HoKDTa5jHvg\">\n   \u003Cimg alt=\"Qries\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fdome272_Diffusion-Models-pytorch_readme_53430a918861.jpg\"\n   width=\"300\">\n\u003C\u002Fa>\n\n\u003Ca href=\"https:\u002F\u002Fwww.youtube.com\u002Fwatch?v=TBCRlnwJtZU\">\n   \u003Cimg alt=\"Qries\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fdome272_Diffusion-Models-pytorch_readme_698e8abcf990.png\"\n   width=\"300\">\n\u003C\u002Fa>\n\n\u003Chr>\n\n## 在自己的数据上训练扩散模型：\n### 无条件训练\n1. （可选）在`ddpm.py`中配置超参数\n2. 在`ddpm.py`中设置数据集路径\n3. 运行`python ddpm.py`\n\n### 条件训练\n1. （可选）在`ddpm_conditional.py`中配置超参数\n2. 在`ddpm_conditional.py`中设置数据集路径\n3. 运行`python ddpm_conditional.py`\n\n## 采样\n以下示例展示了如何使用视频中训练的模型，从[Landscape Dataset](https:\u002F\u002Fwww.kaggle.com\u002Fdatasets\u002Farnaud58\u002Flandscape-pictures)中采样图像。您可以从[这里](https:\u002F\u002Fdrive.google.com\u002Fdrive\u002Ffolders\u002F1beUSI-edO98i6J9pDR67BKGCfkzUL5DX?usp=sharing)下载这些模型的检查点。\n### 无条件模型\n```python\n    device = \"cuda\"\n    model = UNet().to(device)\n    ckpt = torch.load(\"unconditional_ckpt.pt\")\n    model.load_state_dict(ckpt)\n    diffusion = Diffusion(img_size=64, device=device)\n    x = diffusion.sample(model, n=16)\n    plot_images(x)\n```\n\n### 条件模型\n该模型是在[CIFAR-10 64x64](https:\u002F\u002Fwww.kaggle.com\u002Fdatasets\u002Fjoaopauloschuler\u002Fcifar10-64x64-resized-via-cai-super-resolution)数据集上训练的，包含10个类别：```airplane:0, auto:1, bird:2, cat:3, deer:4, dog:5, frog:6, horse:7, ship:8, truck:9```。\n```python\n    n = 10\n    device = \"cuda\"\n    model = UNet_conditional(num_classes=10).to(device)\n    ckpt = torch.load(\"conditional_ema_ckpt.pt\")\n    model.load_state_dict(ckpt)\n    diffusion = Diffusion(img_size=64, device=device)\n    y = torch.Tensor([6] * n).long().to(device)\n    x = diffusion.sample(model, n, y, cfg_scale=3)\n    plot_images(x)\n```\n\u003Chr>\n\n该代码的更高级版本可在[@tcapelle](https:\u002F\u002Fgithub.com\u002Ftcapelle)的[这里](https:\u002F\u002Fgithub.com\u002Ftcapelle\u002FDiffusion-Models-pytorch)找到。它引入了更好的日志记录、更快更高效的训练以及其他实用功能，并配有精彩的[文章](https:\u002F\u002Fwandb.ai\u002Fcapecape\u002Ftrain_sd\u002Freports\u002FTraining-a-Conditional-Diffusion-model-from-scratch--VmlldzoyODMxNjE3)。","# Diffusion-Models-pytorch 快速上手指南\n\n## 环境准备\n\n本工具基于 PyTorch 构建，适用于 Linux、macOS 和 Windows 系统。\n\n**前置依赖：**\n*   Python >= 3.8\n*   PyTorch (建议安装支持 CUDA 的版本以加速训练和采样)\n*   torchvision\n*   matplotlib (用于可视化生成结果)\n\n**推荐安装命令（使用国内镜像源）：**\n```bash\npip install torch torchvision -i https:\u002F\u002Fpypi.tuna.tsinghua.edu.cn\u002Fsimple\npip install matplotlib -i https:\u002F\u002Fpypi.tuna.tsinghua.edu.cn\u002Fsimple\n```\n\n## 安装步骤\n\n该项目代码极其精简（核心逻辑约 100 行），无需通过 `pip` 安装包，直接克隆源码即可使用。\n\n1.  **克隆仓库：**\n    ```bash\n    git clone https:\u002F\u002Fgithub.com\u002Fhuggingface\u002Fdiffusion-models-pytorch.git\n    cd diffusion-models-pytorch\n    ```\n\n2.  **验证文件：**\n    确保目录下存在 `ddpm.py` (无条件生成) 和 `ddpm_conditional.py` (有条件生成) 等核心脚本。\n\n## 基本使用\n\n### 1. 训练模型\n\n你可以使用自己的数据集训练无条件或有条件的扩散模型。只需修改脚本中的数据集路径和超参数（可选）。\n\n**无条件训练 (Unconditional Training)：**\n编辑 `ddpm.py` 设置数据路径后运行：\n```bash\npython ddpm.py\n```\n\n**有条件训练 (Conditional Training)：**\n编辑 `ddpm_conditional.py` 设置数据路径后运行（支持 Classifier-Free-Guidance 和 EMA）：\n```bash\npython ddpm_conditional.py\n```\n\n### 2. 图像采样 (Sampling)\n\n加载预训练权重或你自己训练的模型进行图像生成。以下示例展示了如何加载检查点并生成图像。\n\n**无条件模型采样：**\n```python\n    device = \"cuda\"\n    model = UNet().to(device)\n    ckpt = torch.load(\"unconditional_ckpt.pt\")\n    model.load_state_dict(ckpt)\n    diffusion = Diffusion(img_size=64, device=device)\n    x = diffusion.sample(model, n=16)\n    plot_images(x)\n```\n\n**有条件模型采样：**\n以下示例基于 CIFAR-10 数据集（10 个类别），生成类别为 \"frog\" (标签 6) 的图像，并启用 CFG 引导比例 3.0。\n```python\n    n = 10\n    device = \"cuda\"\n    model = UNet_conditional(num_classes=10).to(device)\n    ckpt = torch.load(\"conditional_ema_ckpt.pt\")\n    model.load_state_dict(ckpt)\n    diffusion = Diffusion(img_size=64, device=device)\n    y = torch.Tensor([6] * n).long().to(device)\n    x = diffusion.sample(model, n, y, cfg_scale=3)\n    plot_images(x)\n```\n\n> **提示：** 如需体验视频演示中的效果，可前往 [Google Drive](https:\u002F\u002Fdrive.google.com\u002Fdrive\u002Ffolders\u002F1beUSI-edO98i6J9pDR67BKGCfkzUL5DX?usp=sharing) 下载预训练检查点文件。","一家初创游戏工作室的美术团队急需为独立游戏生成大量风格统一的 64x64 像素角色头像，但缺乏大规模算力集群和复杂的深度学习工程经验。\n\n### 没有 Diffusion-Models-pytorch 时\n- **代码门槛过高**：主流扩散模型实现往往包含数千行复杂代码，涉及繁琐的下界公式推导，新手难以理解核心逻辑，调试困难。\n- **训练流程僵化**：想要基于自定义的像素画数据集进行微调，需要重写大量数据加载和训练循环代码，耗时数周才能跑通第一个 Demo。\n- **缺乏关键特性**：开源简易版通常不支持“无分类器引导（CFG）”或“指数移动平均（EMA）”，导致生成的图像多样性差、细节模糊，无法满足美术需求。\n- **理论验证缓慢**：团队成员想验证 DDPM 论文中的算法细节，却因现有代码未严格遵循原始算法而不得不花费大量时间比对差异。\n\n### 使用 Diffusion-Models-pytorch 后\n- **极速上手复现**：依托其不到 100 行的核心代码，团队半天内即可读懂并运行严格遵循 DDPM 论文算法的模型，迅速建立技术信心。\n- **灵活定制训练**：只需修改几行配置指向本地像素画数据集，即可直接启动无条件或有条件训练，快速产出专属风格的角色头像。\n- **生成质量跃升**：直接利用内置的 CFG 和 EMA 功能，在采样阶段显著提升了图像的清晰度与类别准确性，生成的“青蛙”或“骑士”角色特征鲜明。\n- **教学与迭代高效**：清晰的代码结构成为团队内部的技术教材，成员能快速定位问题并尝试改进，将模型迭代周期从月缩短至天。\n\nDiffusion-Models-pytorch 通过极简且严谨的代码实现，让资源有限的团队也能低门槛地掌握并落地前沿的扩散模型技术。","https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fdome272_Diffusion-Models-pytorch_698e8abc.png","dome272","Dominic Rampas","https:\u002F\u002Foss.gittoolsai.com\u002Favatars\u002Fdome272_ac0aad58.jpg","I make youtube",null,"Germany","dome39931447","https:\u002F\u002Fwww.youtube.com\u002F@outliier","https:\u002F\u002Fgithub.com\u002Fdome272",[85],{"name":86,"color":87,"percentage":88},"Python","#3572A5",100,1440,309,"2026-04-04T21:43:26","Apache-2.0","未说明","示例代码中指定使用 CUDA (device = \"cuda\")，表明训练和采样推荐使用 NVIDIA GPU。具体显卡型号、显存大小及 CUDA 版本未在文中明确说明，但考虑到扩散模型特性及示例中的图像尺寸 (64x64)，建议具备支持 CUDA 的 NVIDIA 显卡。",{"notes":96,"python":93,"dependencies":97},"该工具是一个极简实现（约 100 行代码），严格遵循 DDPM 论文算法。提供无条件生成和有条件生成（支持 Classifier-Free-Guidance 和 EMA）两种模式。示例代码默认使用 CUDA 加速，若无 GPU 需将设备改为 'cpu'。预训练模型检查点需从提供的 Google Drive 链接手动下载。",[98,99],"torch","matplotlib (推断自 plot_images 函数)",[14],"2026-03-27T02:49:30.150509","2026-04-06T05:17:30.100086",[104,109,114,119,124,129],{"id":105,"question_zh":106,"answer_zh":107,"source_url":108},17724,"如何将训练图像尺寸从 64 增加到更大（如 128）？","直接更改图像尺寸会导致训练失败，因为图像尺寸的改变需要同步调整每个注意力块（attention block）的输入输出维度，以及 ConvTranspose 和 Upscale 块的尺寸以匹配图像变换。这通常比较繁琐。解决方案是手动修改网络架构中相关层的维度配置，使其适配新的图像分辨率。目前代码主要针对 64x64 图像优化。","https:\u002F\u002Fgithub.com\u002Fdome272\u002FDiffusion-Models-pytorch\u002Fissues\u002F7",{"id":110,"question_zh":111,"answer_zh":112,"source_url":113},17725,"DoubleConv 模块中为什么在非残差连接时没有使用 GELU 激活函数？","这是一个架构选择问题。维护者表示当前设计在训练中未遇到问题，但用户完全可以尝试在非残差分支也添加 GELU。修改后的代码逻辑应为：如果 self.residual 为真，返回 F.gelu(x + self.double_conv(x))；否则返回 F.gelu(self.double_conv(x))。您可以自行测试这种改动是否对结果有提升。","https:\u002F\u002Fgithub.com\u002Fdome272\u002FDiffusion-Models-pytorch\u002Fissues\u002F5",{"id":115,"question_zh":116,"answer_zh":117,"source_url":118},17726,"如何在多张 GPU 上训练模型？","该项目本身未直接封装多卡训练脚本，但这属于 PyTorch 的标准功能。建议参考 PyTorch 官方关于分布式数据并行（DDP）的教程（https:\u002F\u002Fpytorch.org\u002Ftutorials\u002Fbeginner\u002Fddp_series_intro.html）。您需要修改 train() 函数中的部分变量以符合 DDP 规范，只要熟悉 PyTorch，这一过程相对直接。","https:\u002F\u002Fgithub.com\u002Fdome272\u002FDiffusion-Models-pytorch\u002Fissues\u002F35",{"id":120,"question_zh":121,"answer_zh":122,"source_url":123},17727,"如何使用预训练权重进行推理（Inference）？","虽然该特定 Issue 下暂无详细回复，但结合项目常见用法，推理通常需要实例化相同的模型架构，使用 model.load_state_dict(torch.load('权重路径')) 加载预训练参数，并将模型设置为 eval 模式（model.eval()），然后在 torch.no_grad() 上下文中调用采样函数生成图像。确保加载权重时的图像尺寸和网络配置与训练时一致。","https:\u002F\u002Fgithub.com\u002Fdome272\u002FDiffusion-Models-pytorch\u002Fissues\u002F36",{"id":125,"question_zh":126,"answer_zh":127,"source_url":128},17728,"如何实现 img2img（图生图）功能？","可以利用 CLIP 嵌入来实现。不需要大幅修改代码，只需将模型稍作扩大，并将原本基于学习到的类别嵌入（class embeddings）的条件机制，替换为提供 CLIP 嵌入向量。由于 CLIP 嵌入也是向量形式，其处理方式与类别嵌入类似，可直接用于条件扩散模型。","https:\u002F\u002Fgithub.com\u002Fdome272\u002FDiffusion-Models-pytorch\u002Fissues\u002F19",{"id":130,"question_zh":131,"answer_zh":132,"source_url":133},17729,"是否有支持自定义图像尺寸、DDIM 采样及分布式训练等高级功能的改进版本？","社区成员已基于此项目开发了一个增强版本，包含了多项新功能：支持自定义图像尺寸、集成 DDIM 采样代码、优化生成器和训练器方法、实现余弦及热身余弦学习率调度、支持多卡分布式训练、添加随机种子以确保可复现性、支持半精度训练以节省显存、允许选择不同优化器和激活函数、增加训练断点恢复功能、支持服务器部署接口以及代码模块化重构。相关代码可在 Industrial-Defect-Diffusion-Model 仓库找到。","https:\u002F\u002Fgithub.com\u002Fdome272\u002FDiffusion-Models-pytorch\u002Fissues\u002F37",[]]