快捷方式

int4_weight_only

torchao.quantization.int4_weight_only(group_size=128, layout=TensorCoreTiledLayout(inner_k_tiles=8), use_hqq=False, zero_point_domain=None)[source]

对线性层应用 uint4 权重专用非对称逐组量化,使用 “tensor_core_tiled” 布局以加速 tinygemm 内核

注意

这是针对 tinygemm int4mm 内核 (torch.ops.aten._weight_int4pack_mmtorch.ops.aten._weight_int4pack_mm_for_cpu),与更传统的整数量化类型相比,量化算法的主要区别在于:1). 零点在浮点域而不是整数域 (zero_point_domain`=`ZeroPointDomain.FLOAT) 2). 浮点零不必完全可表示 (choose_qparams_affine 中的 preserve_zero`=False) 请遵循 choose_qparams_affinequantize_affinedequantize_affine 中的相关代码,以了解如何选择量化参数以及如何为 tinygemm 量化/反量化张量

参数:
  • group_size – 量化参数,控制量化的粒度,尺寸越小粒度越细,选项为 [256, 128, 64, 32]

  • layout – 量化张量的布局类型,默认为 TensorCoreTiledLayout(inner_k_tiles=8)

  • use_hqq – 是否使用 hqq 或默认量化模式,默认为 False

  • zero_point_domain – 零点的数据类型,选项为 [None(然后值由布局决定), ZeroPointDomain.FLOAT, ZeroPointDomain.INT, ZeroPointDomain.NONE]

文档

访问 PyTorch 的综合开发者文档

查看文档

教程

获取面向初学者和高级开发者的深入教程

查看教程

资源

查找开发资源并获得问题解答

查看资源