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

torchao.quantization

autoquant

自动量化是一个过程,旨在确定在某些潜在 qtensor 子类上量化模型每一层的最快方法。

quantize_

使用 apply_tensor_subclass 转换模型中线性模块的权重,模型将就地修改

int8_dynamic_activation_int4_weight

将 int8 动态按 token 非对称激活量化和 int4 按组权重对称量化应用于线性层。这用于生成 executorch 后端的模型,但目前 executorch 尚不支持从此流程中降低量化模型

int8_dynamic_activation_int8_weight

将 int8 动态对称按 token 激活量化和 int8 按通道权重量化应用于线性层

int4_weight_only

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

int8_weight_only

将 int8 仅权重对称按通道量化应用于线性层。

float8_weight_only

将 float8 仅权重对称按通道量化应用于线性层。

float8_dynamic_activation_float8_weight

将 float8 动态对称量化应用于线性层的激活和权重。

float8_static_activation_float8_weight

将 float8 静态对称量化应用于

uintx_weight_only

将 uintx 仅权重非对称按组量化应用于线性层,使用 uintx 量化,其中 x 是由 dtype 指定的位数

fpx_weight_only

ebits 定义的子字节浮点数据类型:指数位和 mbits:尾数位,例如

to_linear_activation_quantized

swap_linear_with_smooth_fq_linear

用其 SmoothFakeDynamicallyQuantizedLinear 等效项替换模型中的线性层。

smooth_fq_linear_to_inference

通过计算每个 SmoothFakeDynamicallyQuantizedLinear 层的 smoothquant 比例,为推理准备模型。

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 核心中尚不存在的数据类型的占位符。

文档

访问 PyTorch 的全面开发者文档

查看文档

教程

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

查看教程

资源

查找开发资源并获得解答

查看资源