QuantConfig
功能说明
量化参数配置类,保存量化过程中配置的参数。
函数原型
QuantConfig(w_bit=8, a_bit=8, act_method=1, disable_names=None, w_hessian=False, pr=1.0, mm_tensor=True, dev_type='cpu')
参数说明
参数名 |
输入/返回值 |
含义 |
使用限制 |
---|---|---|---|
w_bit |
输入 |
权重量化bit。 |
可选。 数据类型:int。 默认为8,不支持修改。 |
a_bit |
输入 |
激活层量化bit。 |
可选。 数据类型:int。 默认为8,不支持修改。 |
act_method |
输入 |
激活值量化方法。 |
可选。 数据类型:int。 可选值如下所示,默认为1。
|
disable_names |
输入 |
需排除量化的节点名称,即手动回退的量化层名称。 如精度太差,推荐回退量化敏感层,如分类层、输入层、检测head层等。 当前该参数为空时会自动回退最后一层,无需手动指定。例如LLaMA-13B模型的[lm_head],ChatGLM_V2-6B的[transformer.output_layer]。 |
可选。 数据类型:object。 默认值None。 |
w_hessian |
输入 |
是否开启hessian(海森矩阵)统计。 |
可选。 数据类型:bool。 默认值:False。 |
pr |
输入 |
量化选择概率。 |
可选。 数据类型:float。 取值范围:[0,1]。 默认值:1.0,建议取值0.5。 |
mm_tensor |
输入 |
选择进行per-channel量化或per-tensor量化。 |
可选。 数据类型:bool。 默认值:True。
|
dev_type |
输入 |
device类型。 |
可选。 数据类型:object。 默认为'cpu',不支持用户修改。 |
调用示例
from modelslim.pytorch.llm_ptq.llm_ptq_tools import Calibrator, QuantConfig quant_config = QuantConfig(pr=0.5, mm_tensor=Flase)
父主题: 大模型量化接口