Hugging Face 实测 SDXL 推理的简单优化方法
Hugging Face 在 A100(40GB)上测试了 SDXL 的多种推理优化,未优化管线需 28GB 显存、72.2 秒,改用 fp16 后降至 21.7GB 和 14.8 秒。
推荐理由:原文给出 SDXL 在 A100 上的逐项优化实测数据,读者可据此按显存与延迟取舍推理配置。
拿来就能用的实操内容:提示词技巧、工作流搭建、工具用法与踩坑经验。
Hugging Face 在 A100(40GB)上测试了 SDXL 的多种推理优化,未优化管线需 28GB 显存、72.2 秒,改用 fp16 后降至 21.7GB 和 14.8 秒。
推荐理由:原文给出 SDXL 在 A100 上的逐项优化实测数据,读者可据此按显存与延迟取舍推理配置。
Hugging Face 发布面向非工程师的教程,用 Spaces、AutoTrain 和 ChatUI 三个工具、全程不写一行代码,把 LLaMA 2 7b 基础模型微调成聊天机器人并部署成可分享的聊天应用。
推荐理由:Hugging Face 官方给出零代码微调 LLaMA 2 并部署聊天应用的完整三步流程,可迁移到其他开源模型。
Hugging Face 博客发布 3D Gaussian Splatting 入门解读,介绍这一来自论文《3D Gaussian Splatting for Real-Time Radiance Field Rendering》的栅格化技术如何从少量图像实时渲染逼真场景。
推荐理由:文章拆解了 3D Gaussian Splatting 的完整流程与显存、磁盘等实际限制,便于判断它离生产渲染管线还有多远。
Hugging Face 发布教程,介绍如何用 PyTorch FSDP 配合 Transformers、Accelerate 和 TRL 微调 Llama 2 70B,并给出在 2 节点 16 张 A100 80GB 上的完整配置。
推荐理由:原文给出 70B 模型 FSDP 微调中 CPU 内存、检查点保存与显存三个问题的具体解法,可迁移到同类大模型训练。
Hugging Face 博客介绍如何在 Diffusers 库中加速 AudioLDM 2 的文本到音频推理,通过半精度、flash attention、torch.compile 和更换调度器等方法,把 10 秒音频的生成时间从约 14 秒降到 1 秒以内,音质下降很小。
推荐理由:原文给出四种开箱即用的推理优化手段,读者可据此把 AudioLDM 2 的生成耗时从 14 秒压到 1 秒以内。
Hugging Face 在 TRL 库中上线 Direct Preference Optimization(DPO)方法,并给出用 QLoRA 在 Llama v2 7B 上基于 stack-exchange 偏好数据微调的完整流程。
推荐理由:TRL 官方给出 DPO 在 Llama 2 上的完整训练流程与代码,读者可据此在自己的偏好数据上复现。
Hugging Face 与 Apple 合作把 Stable Diffusion XL 移植到 Core ML,可在运行 macOS 14 公测版的 Apple Silicon Mac 上本地运行。
推荐理由:原文给出混合位宽调色板量化的完整方法与脚本,读者可据此把 SD XL 压缩到 4.5 bit 并自行复现。
Hugging Face 博客介绍如何用 Transformers.js 制作实时 ML 网页游戏 Doodle Dash,模型完全在浏览器本地运行,每秒可做 60 次以上预测。
推荐理由:完整复现了从微调 MobileViT 到用 Transformers.js 在浏览器实时推理的流程,可迁移到其他端侧 ML 项目。
Hugging Face 介绍如何借助 Core ML 的新优化在 iPhone、iPad 和 Mac 上更快运行 Stable Diffusion。Core ML 新增 6-bit palettization 量化,将权重从 16-bit 浮点压缩到每参数 6 bit,并在推理时逐层解压,从而减少存储和内存占用。
推荐理由:文章给出 6-bit palettization 的量化原理与转换命令,读者可据此在 Apple 设备上自行压缩并运行 Stable Diffusion。
Hugging Face 发布辅助生成(assisted generation)方法,用一个比主模型小一个数量级、且共享同一 tokenizer 的助手模型先草拟候选 token,再由主模型一次前向验证,从而减少前向次数。
推荐理由:Hugging Face 官方给出辅助生成方法的原理与实测数据,读者可据此判断它是否适合自己现有的推理部署。
Hugging Face 团队介绍如何将 16B 参数的 StarCoder 微调为对话式编码助手 StarChat,使用 OpenAssistant 约 2.1 万条英文对话数据,并采用 ChatML 格式标记对话角色。
推荐理由:原文完整给出用对话数据微调 StarCoder 的流程与代码,读者可据此复现一个开源编码助手。
Hugging Face 博客介绍如何在免费版 Google Colab(13GB CPU 内存、15GB T4 显存)上用 diffusers 运行 DeepFloyd 的 IF 文生图模型。
推荐理由:原文给出在免费 Colab 上分阶段加载 IF 各组件并做 8bit 量化的完整步骤,可迁移到其他大模型的低显存部署。
Hugging Face 发布 StackLLaMA 模型并公开完整 RLHF 训练流程,涵盖监督微调、奖励模型和 PPO 强化学习三个阶段,全部代码集成在 TRL 库中。
推荐理由:Hugging Face 公开了用 RLHF 训练 LLaMA 的完整流程与代码,读者可据此复现并迁移到自己的任务。
Hugging Face 发布教程,介绍用 diffusers 训练 ControlNet 的三个步骤:规划条件、构建数据集、训练模型,并以人脸姿态为例训练出 Uncanny Faces 模型。
推荐理由:Hugging Face 官方给出从条件设计、数据集构建到 diffusers 训练脚本的完整 ControlNet 训练流程,含显存优化参数。
Hugging Face 正式发布 trl 与 peft 的集成,让大语言模型的 RLHF 微调更易上手。文章以 gpt-neox-20b 为例,通过 8-bit 加载、低秩适配器和 disable_adapters 复用同一模型,在 24GB NVIDIA 4090 上完成微调,完整训练则在单张 A100 上运行。作者指出该方案的主要代价是训练速度约慢一倍,后续将探索多 GPU 扩展与提速。
推荐理由:trl 与 peft 集成后,读者可了解在 24GB 消费级 GPU 上完成 20B 模型 RLHF 微调的具体步骤与内存取舍。
Salesforce Research 的 BLIP-2 视觉语言模型已集成到 Hugging Face Transformers,本指南演示如何用它完成图像描述、带提示的图像描述、视觉问答和对话式提示。
推荐理由:文章给出 BLIP-2 在 Transformers 中的完整调用示例,读者可据此复现图像描述与视觉问答流程。
Hugging Face 在 diffusers 中正式加入 LoRA 微调支持,可用于 Dreambooth 和完整微调,训练显存最低约 11 GB,新增权重文件约 3 MB,比原 UNet 小约一千倍。
推荐理由:Hugging Face 官方给出 LoRA 微调 Stable Diffusion 的脚本与推理流程,并说明显存和权重体积的实际变化。
Hugging Face 博客图解 RLHF 的完整流程,将其拆为预训练语言模型、收集人类偏好数据训练奖励模型、用 PPO 微调语言模型三个核心步骤。文中说明奖励模型输出标量奖励,并用 KL 散度惩罚约束策略偏离初始模型,同时介绍了 TRL、TRLX、RL4LMs 等开源实现及 Anthropic 在 Hub 上发布的数据集。
推荐理由:文章把 RLHF 拆成预训练、奖励模型、PPO 微调三步,并梳理了 TRL、TRLX、RL4LMs 等开源工具与主要论文,适合作为理解该流程的入门参考。
借助 Apple 工程师提供的转换脚本和推理代码,Stable Diffusion 现在可以在 Apple Silicon 上通过 Core ML 运行,Hugging Face 已把 v1.4、v1.5、v2 base、v2.1 base 的官方权重转换好并放到 Hub 上。
推荐理由:原文给出在 Apple Silicon 上用 Core ML 运行 Stable Diffusion 的完整流程与性能数据,可据此复现或自行转换权重。
Hugging Face 博客介绍对比搜索(Contrastive Search)已集成进 transformers,PyTorch 和 TensorFlow 均可用,需安装 transformers==4.24.0。
推荐理由:对比搜索已进入 transformers,文中给出可复现代码与三种解码方法的生成效果对照。