此量化方式为浮点稀疏量化,对已有权重作如下两步操作:
稀疏:模型稀疏工具通过算法判断模型权重中每个元素对精度结果的重要性,并将模型权重中对最终精度影响小的权重值置零。
压缩:权重压缩工具将模型权重通过压缩算法进一步编码压缩,最大程度地降低权重体积,生成压缩后权重和索引文件。
[object Object]
稀疏后权重目录结构:
[object Object]- 稀疏后产物包含:权重文件quant_model_weights.safetensors和权重描述文件quant_model_description.json。
- 目录中的其余文件为推理时所需的配置文件,不同模型略有差异。
以下展示了稀疏后权重描述文件quant_model_description.json中的部分内容:
[object Object]压缩后权重目录结构:
[object Object]压缩前会先加载权重,并进行多卡切分,压缩算法须在切分后的权重上执行。
以下展示了压缩后权重描述文件part0-of-4/quant_model_description.json中的部分内容:
[object Object]压缩后的MatMul权重相比稀疏新增了index和outdim,index用于还原权重,outdim用于还原输出维度。
图 1 量化权重推理时流程[object Object][object Object]
表 1 float16权重量化后dtype及shape信息(假设原始权重的shape为[n, k])
在使用稀疏量化脚本之前,需要安装压缩工具msModelSlim,安装步骤参见《msModelSlim工具》的“”章节。
以Qwen3-32B为例:
使用以下指令生成W16A16S浮点稀疏权重。
[object Object]使用以下指令设置msModelSlim工具所在的Python路径环境变量,{Python Lib Path}为安装msmodelslim时编译步骤中所在的Python路径。
[object Object]使用以下指令对浮点稀疏权重进行压缩,生成W16A16SC量化权重。
[object Object]TP数为张量并行个数,需和权重运行时的张量并行个数保持一致。
以Qwen3-32B为例,您可以使用以下指令执行对话测试,推理内容为"What's deep learning?"。