• 文档 >
  • torchao.quantization
快捷方式

torchao.quantization

主要量化 API

quantize_

使用 config 转换模型中线性模块的权重,模型会被原地修改

autoquant

自动量化是一个过程,它可以在一组潜在的 qtensor 子类中,识别出对模型每一层进行量化的最快方式。

quantize_ 的量化 API

int4_weight_only

Int4WeightOnlyConfig 的别名

int8_weight_only

Int8WeightOnlyConfig 的别名

int8_dynamic_activation_int4_weight

Int8DynamicActivationInt4WeightConfig 的别名

int8_dynamic_activation_int8_weight

Int8DynamicActivationInt8WeightConfig 的别名

uintx_weight_only

UIntXWeightOnlyConfig 的别名

gemlite_uintx_weight_only

GemliteUIntXWeightOnlyConfig 的别名

intx_quantization_aware_training

IntXQuantizationAwareTrainingConfig 的别名

float8_weight_only

Float8WeightOnlyConfig 的别名

float8_dynamic_activation_float8_weight

Float8DynamicActivationFloat8WeightConfig 的别名

float8_static_activation_float8_weight

Float8StaticActivationFloat8WeightConfig 的别名

fpx_weight_only

FPXWeightOnlyConfig 的别名

量化原语

choose_qparams_affine

参数 input:

fp32, bf16, fp16 输入张量

choose_qparams_affine_with_min_max

choose_qparams_affine() 算子的一种变体,它直接传入 min_val 和 max_val,而不是从单个输入中导出它们。

choose_qparams_affine_floatx

quantize_affine

参数 input:

原始的 float32、float16 或 bfloat16 张量

quantize_affine_floatx

将 float32 高精度浮点张量量化为低精度浮点数,并将结果转换为未打包的浮点格式,格式为 00SEEEMM(对于 fp6_e3m2),其中 S 表示符号位,e 表示指数位,m 表示尾数位

dequantize_affine

参数 input:

量化张量,应与 dtype dtype 参数匹配

dequantize_affine_floatx

choose_qparams_and_quantize_affine_hqq

fake_quantize_affine

用于量化感知训练 (QAT) 的通用伪量化算子。

fake_quantize_affine_cachemask

用于量化感知训练 (QAT) 的通用伪量化算子。

safe_int_mm

执行安全的整数矩阵乘法,考虑了 torch.compile、cublas 和回退情况下的不同路径。

int_scaled_matmul

执行缩放的整数矩阵乘法。

MappingType

浮点数如何映射到整数

ZeroPointDomain

指示 zero_point 是在整数域还是浮点域中的枚举

TorchAODType

PyTorch 核心中尚不存在的数据类型的占位符。

其他

to_linear_activation_quantized

swap_linear_with_smooth_fq_linear

将模型中的线性层替换为其等效的 SmoothFakeDynamicallyQuantizedLinear 层。

smooth_fq_linear_to_inference

通过计算每个 SmoothFakeDynamicallyQuantizedLinear 层的 smoothquant 比例来准备模型进行推理。

文档

访问 PyTorch 的全面开发者文档

查看文档

教程

获取面向初学者和进阶开发者的深入教程

查看教程

资源

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

查看资源