PyTorch AO v0.9.0发布:稀疏化技术成熟与量化API重大升级
PyTorch AO(torchao)是PyTorch生态系统中专注于模型优化的重要组件,主要提供模型量化和稀疏化等前沿优化技术。近日发布的v0.9.0版本标志着该项目在稀疏化技术成熟度和量化API设计方面取得了重大进展。
稀疏化技术正式进入生产阶段
本次版本最引人注目的变化是将块稀疏(Block Sparsity)技术从原型状态提升为正式功能。块稀疏是一种高效的内存压缩技术,通过将权重矩阵划分为固定大小的块并选择性保留重要块来实现模型压缩和加速。
新版本提供了简洁易用的API接口,开发者只需几行代码即可实现模型稀疏化:
from torchao.sparsity import sparsify, block_sparse_weight
sparsify_(model, block_sparse_weight(blocksize=64))
性能测试数据显示,在Meta-Llama-3.1-8B模型上,使用64x64块大小和90%稀疏率时,解码速度达到262.94 tokens/s,同时模型大小压缩至4.88GB,相比原始模型实现了显著的性能提升和存储节省。
超级掩码技术提升稀疏模型精度
针对稀疏化可能带来的精度损失问题,v0.9.0引入了Supermask技术。这是一种训练阶段的技术,通过在训练过程中学习最优的块稀疏掩码,有效缓解了稀疏化带来的精度下降问题。
使用方式上,开发者可以先使用Supermask进行训练,再转换为常规稀疏格式进行推理:
from torchao.sparsity import SupermaskLinear
sparsify_(model, lambda x: SupermaskLinear.from_linear(x, block_size=64, sparsity_level=0.9))
# 训练代码...
sparsify_(model, lambda x: SupermaskLinear.to_linear(x, sparsity_level=0.9))
sparsify_(model, block_sparse_weight(blocksize=64))
量化API架构重构
v0.9.0对量化API进行了重大重构,从原先基于可调用对象的配置方式转向更直观的配置对象模式。这一变化使API设计更加一致,便于配置检查和后续扩展。
新旧API对比示例:
# 旧版API (v0.8.0及之前)
quantize_(model, int8_weight_only(group_size=128))
# 新版API (v0.9.0)
from torchao.quantization import Int8WeightOnlyConfig
quantize_(model, Int8WeightOnlyConfig(group_size=128))
尽管旧版API仍可继续使用,但建议开发者逐步迁移到新的配置对象模式。这一变化为未来更多训练优化技术的引入奠定了良好基础。
4位动态量化新内核
针对资源受限场景,v0.9.0新增了基于CUTLASS的4位动态激活+4位权重量化内核,进一步降低模型内存占用和计算需求:
from torchao.quantization import int4_dynamic_activation_int4_weight
quantize_(model, int4_dynamic_activation_int4_weight)
面向NVIDIA Blackwell的MXFP支持
作为早期原型特性,v0.9.0开始支持NVIDIA Blackwell GPU的MXFP8和MXFP4训练与推理。MX格式是一种新兴的微缩放浮点格式,可在保持精度的同时显著提升计算效率。
训练示例:
from torchao.prototype.mx_formats import swap_linear_with_mx_linear
from torchao.prototype.mx_formats.config import MXLinearConfig
config = MXLinearConfig(elem_dtype=torch.float8_e4m3fn, block_size=32)
swap_linear_with_mx_linear(model, config=config)
需要注意的是,当前MX支持仍处于早期阶段,性能和API稳定性将在后续版本中持续改进。
其他重要改进
- 浮点8训练支持2的幂次缩放因子,并使用e4m3格式提升前向和反向传播效率
- 优化了自动量化(autoquant)对不同数据类型的支持
- 修复了多项与分布式训练、CPU卸载优化器等相关的关键问题
- 大幅扩充了文档体系,新增快速入门指南和API迁移教程
总结
PyTorch AO v0.9.0通过将块稀疏技术正式化、重构量化API架构、引入4位量化内核等重大改进,为开发者提供了更强大、更易用的模型优化工具。特别是稀疏化技术的成熟,使得在保持模型精度的同时实现显著加速成为可能。随着MXFP等新兴格式支持的逐步完善,PyTorch AO正在为下一代AI硬件的性能优化奠定基础。
- GGLM-4.5-AirGLM-4.5 系列模型是专为智能体设计的基础模型。GLM-4.5拥有 3550 亿总参数量,其中 320 亿活跃参数;GLM-4.5-Air采用更紧凑的设计,拥有 1060 亿总参数量,其中 120 亿活跃参数。GLM-4.5模型统一了推理、编码和智能体能力,以满足智能体应用的复杂需求Jinja00
- QQwen3-Coder-480B-A35B-InstructQwen3-Coder-480B-A35B-Instruct是当前最强大的开源代码模型之一,专为智能编程与工具调用设计。它拥有4800亿参数,支持256K长上下文,并可扩展至1M,特别擅长处理复杂代码库任务。模型在智能编码、浏览器操作等任务上表现卓越,性能媲美Claude Sonnet。支持多种平台工具调用,内置优化的函数调用格式,能高效完成代码生成与逻辑推理。推荐搭配温度0.7、top_p 0.8等参数使用,单次输出最高支持65536个token。无论是快速排序算法实现,还是数学工具链集成,都能流畅执行,为开发者提供接近人类水平的编程辅助体验。【此简介由AI生成】Python00
cherry-studio
🍒 Cherry Studio 是一款支持多个 LLM 提供商的桌面客户端TypeScript045note-gen
一款跨平台的 Markdown AI 笔记软件,致力于使用 AI 建立记录和写作的桥梁。TSX02chatgpt-on-wechat
基于大模型搭建的聊天机器人,同时支持 微信公众号、企业微信应用、飞书、钉钉 等接入,可选择GPT3.5/GPT-4o/GPT-o1/ DeepSeek/Claude/文心一言/讯飞星火/通义千问/ Gemini/GLM-4/Claude/Kimi/LinkAI,能处理文本、语音和图片,访问操作系统和互联网,支持基于自有知识库进行定制企业智能客服。Python021
热门内容推荐
最新内容推荐
项目优选









