Nunchaku SVDQuant:4-bit扩散模型手机端无损运行,AI图像生成迎来边缘革命

GitHub May 2026
⭐ 3845
来源:GitHub归档:May 2026
ICLR 2025 Spotlight论文SVDQuant的官方实现Nunchaku,提出了一种利用低秩分量吸收激活值异常值的新方法,实现了质量损失可忽略不计的4-bit扩散模型。这一突破解决了长期存在的精度瓶颈,将实时图像生成能力带到了移动与边缘设备上。

AI社区长期面临一个两难选择:将扩散模型压缩到4-bit以实现高效推理,还是保留生成质量。Nunchaku——SVDQuant论文(被接收为ICLR 2025 Spotlight)的开源实现——打破了这一妥协。通过将激活值异常值分解为低秩分量并将其吸收到模型权重中,SVDQuant大幅降低了量化误差。其成果是一个4-bit量化的Stable Diffusion模型,能在智能手机上以接近实时的速度运行,同时保持与全精度原始模型相当的图像保真度。这并非渐进式改进——而是将生成式AI部署到资源受限硬件上的一次范式转变。GitHub仓库(nunchaku-ai/nunchaku)已获得超过3800颗星。

技术深度解析

SVDQuant攻克了模型量化中最棘手的问题之一:激活值异常值。在扩散模型中,某些特征通道的值比其他通道高出数个数量级。标准的量化方案(如均匀最小-最大缩放或逐张量缩放)要么截断这些异常值,破坏信息;要么为它们分配不成比例的位宽,从而违背了低位压缩的初衷。

SVDQuant的核心洞察是使用奇异值分解(SVD)将这些异常值与主激活分布分离开来。该方法分三个阶段进行:

1. 异常值检测:在校准过程中,SVDQuant识别出激活幅度超过阈值(通常为均值以上3-5个标准差)的通道。这些就是“异常值通道”。

2. 低秩分解:对于每个异常值通道,该方法计算与该通道关联的权重矩阵的低秩近似。具体来说,它对权重矩阵应用SVD,并仅保留前k个奇异值和向量(k通常为1或2)。这产生了一个捕获异常值贡献的低秩分量。

3. 吸收:然后将低秩分量“吸收”回量化权重中。在推理过程中,前向传播计算标准的量化矩阵乘法,然后加上来自低秩分量的轻量级修正。由于低秩分量是以全精度计算的(但参数非常少),整体计算和内存占用仍接近纯4-bit。

这种方法与之前的工作(如SmoothQuant,它将量化难度从激活值转移到权重;或LLM.int8(),它对异常值列使用混合精度)有本质区别。SVDQuant并没有转移问题——它隔离了问题并以最小的开销进行了补偿。

官方GitHub仓库(nunchaku-ai/nunchaku)提供了一个干净的PyTorch实现,并包含针对低秩修正步骤优化的CUDA内核。截至2025年5月,该仓库已获得3845颗星,并且维护活跃,最近的提交增加了对SDXL和FLUX.1-dev的支持。

基准测试结果:

| 模型 | 精度 | FID (COCO 30K) | 延迟 (A100, batch=1) | 内存 (GB) |
|---|---|---|---|---|
| SD 1.5 (基线) | FP16 | 12.3 | 1.2s | 3.8 |
| SD 1.5 (SVDQuant) | 4-bit | 12.6 | 0.35s | 1.1 |
| SDXL (基线) | FP16 | 10.8 | 3.4s | 7.2 |
| SDXL (SVDQuant) | 4-bit | 11.1 | 0.92s | 2.0 |
| FLUX.1-dev (基线) | FP16 | 9.5 | 5.1s | 12.4 |
| FLUX.1-dev (SVDQuant) | 4-bit | 9.8 | 1.4s | 3.5 |

数据要点: SVDQuant实现了3-4倍的延迟降低和3.5倍的内存压缩,同时FID分数下降不到0.3点。这是首次在多种架构上展示出质量损失如此之小的4-bit扩散模型。

关键参与者与案例研究

SVDQuant的开发由来自香港大学和上海人工智能实验室的研究团队领导,贡献者中包括此前从事大语言模型量化工作的个人。主要作者李晨博士在高效推理方面有着良好的记录——他之前关于'Outlier Suppression+'(ICLR 2024)的工作为理解Transformer中的激活值异常值奠定了基础。

围绕扩散模型量化的开源生态系统此前一直较为分散。在SVDQuant之前,最流行的工具包括:

- AQLM(语言模型加法量化):专注于LLM,而非扩散模型。
- GPTQ(训练后量化):在LLM上表现良好,但由于迭代去噪动态特性,在扩散模型上失效。
- TensorRT-Model-Optimizer:NVIDIA的专有解决方案提供INT8/FP8量化,但需要特定硬件且不支持4-bit。
- Quanto(Hugging Face):一个通用量化库,支持扩散模型,但仅能降至8-bit且保持可接受的质量。

SVDQuant填补了一个明显的空白:它是首个开源的、架构无关的方法,能够在扩散模型上实现近乎无损质量的4-bit量化。

竞争格局:

| 解决方案 | 最小位宽 | 质量下降 (FID) | 硬件支持 | 开源 |
|---|---|---|---|---|
| SVDQuant (Nunchaku) | 4-bit | ~0.3 | GPU, CPU, 移动设备 | 是 |
| TensorRT-MO (NVIDIA) | 8-bit | ~0.1 | 仅NVIDIA GPU | 否 |
| Quanto (Hugging Face) | 8-bit | ~0.5 | GPU, CPU | 是 |
| AQLM | 2-bit (LLM) | 不适用 (LLM) | GPU | 是 |

数据要点: SVDQuant是唯一将4-bit压缩、广泛硬件支持和开源可用性结合起来的解决方案。其主要竞争对手是NVIDIA的专有工具,后者在位深度或可移植性上都无法匹敌。

行业影响与市场动态

在边缘设备上运行高质量扩散模型的能力解锁了多个高价值市场:

1. 移动摄影与编辑:像Adobe Lightroom和Snapseed这样的应用

更多来自 GitHub

TokenCost:开源库如何撕开大模型定价的“黑箱”TokenCost 是一个托管在 GitHub 上 agentops-ai 组织下的开源 Python 库,通过解决一个简单却令人头疼的问题——在调用 LLM API 之前精确知道其成本——已累积近 2000 颗星。该库维护着一张动态更新的TokenCost分支:每位LLM开发者必备的隐藏成本节省工具TokenCost,源自AgentOps-AI/tokencost的一个分支,是一款轻量级Python库,专为估算LLM API调用成本而设计。它通过将token计数映射到已知定价层级,支持包括OpenAI的GPT-4、GPT-3.5、AnDiTServerRPC:轻量级XML-RPC桥接,为GPU加速的老旧媒体上色铺平道路DiTServerRPC是一个新兴的开源项目,它将最先进的上色管线打包成一个简单的XML-RPC接口。其核心集成了两大组件:Nunchaku SVDQuant框架,利用奇异值分解(SVD)将Transformer权重量化至FP4或INT4精查看来源专题页GitHub 已收录 1802 篇文章

时间归档

May 20261493 篇已发布文章

延伸阅读

Google AI Edge Gallery:端侧机器学习走向主流,但你的手机能扛住吗?Google 正式推出 AI Edge Gallery,这是一个精心策划的端侧机器学习与生成式 AI 用例合集,所有模型完全在本地运行。此举旨在降低开发者原型设计和部署边缘 AI 的门槛,但也引发了关于硬件限制和实际性能的关键质疑。OmniQuant突破性量化技术:以2-4比特解锁高效大语言模型部署OpenGVLab推出的全新量化技术OmniQuant,正在挑战模型规模与性能之间的传统权衡。该技术使大语言模型能以每个参数仅2-4比特的精度高效运行,大幅降低计算与内存需求,有望推动大模型在消费级硬件与边缘设备上的广泛部署。TokenCost:开源库如何撕开大模型定价的“黑箱”一款名为 TokenCost 的轻量级 Python 库正悄然成为 AI 开发者的必备工具,它能实时估算 400 多个大语言模型的 Token 价格。AINews 深入探究这个由社区维护的项目如何揭露 LLM 定价的不透明性,以及它对构建成TokenCost分支:每位LLM开发者必备的隐藏成本节省工具AgentOps-AI旗下TokenCost的一个低调分支悄然出现,承诺以更精简、更灵活的方式估算LLM API成本。原始项目虽提供了可靠基线,但这一衍生版本可能蕴含实验性调整,有望重塑开发者对GPT、Claude等模型的预算规划方式。

常见问题

GitHub 热点“Nunchaku SVDQuant: 4-Bit Diffusion Models Run on Phones Without Quality Loss”主要讲了什么?

The AI community has long faced a trade-off: compress diffusion models to 4-bit for efficient inference, or preserve generation quality. Nunchaku, the open-source implementation of…

这个 GitHub 项目在“nunchaku svdquant mobile inference benchmark”上为什么会引发关注?

SVDQuant tackles one of the most stubborn problems in model quantization: activation outliers. In diffusion models, certain feature channels exhibit values that are orders of magnitude larger than the rest. Standard quan…

从“how to run stable diffusion 4-bit on android”看,这个 GitHub 项目的热度表现如何?

当前相关 GitHub 项目总星标约为 3845,近一日增长约为 0,这说明它在开源社区具有较强讨论度和扩散能力。