torchao.quantization¶
主要量化 API¶
使用 config 量化模型中的線性模組的權重,模型會原地修改 |
|
Autoquantization 是一個過程,用於識別在某些潛在 qtensor 子類集上量化模型每個層的最快方法。 |
quantize_ 的推理 API¶
用於對線性層應用 uint4 僅權重非對稱每組量化的配置,使用 "tensor_core_tiled" 佈局透過 tinygemm 核心加速 |
|
用於對線性層應用 float8 動態每行量化和 int4 每組權重量化的配置(目前僅支援 group_size 128,因為底層核心僅支援 128 及以上,且沒有更大的好處) |
|
用於對線性層的啟用和權重應用 float8 動態對稱量化的配置。 |
|
用於對線性層應用 float8 僅權重對稱每通道量化的配置。 |
|
用於對 |
|
用於對線性層應用 int8 動態每 token 非對稱啟用量化和 int4 每組權重對稱量化的配置。這用於為 executorch 後端生成模型,但目前 executorch 尚未支援從該流程量化模型的降低。 |
|
應用僅權重 4 或 8 位整數量化,並利用 gemlite triton 核心及其關聯的權重打包格式。 |
|
用於對線性層應用 int8 僅權重對稱每通道量化的配置。 |
|
用於對線性層應用 int8 動態對稱每 token 啟用和 int8 每通道權重量化的配置。 |
|
用於對線性層應用 uintx 僅權重非對稱每組量化的配置,使用 uintx 量化,其中 x 是由 dtype 指定的位數 |
|
由 ebits:指數位數和 mbits:尾數位數定義的亞位元組浮點資料型別,例如。 |
量化原語¶
|
|
是 |
|
|
|
|
|
執行安全的整數矩陣乘法,考慮 torch.compile、cublas 和回退情況的不同路徑。 |
|
執行帶縮放的整數矩陣乘法。 |
|
浮點數如何對映到整數 |
|
列舉,指示零點是在整數域還是浮點域 |
|
PyTorch 核心中尚不存在的資料型別的佔位符。 |
其他¶
將模型中的線性層替換為其 SmoothFakeDynamicallyQuantizedLinear 等效項。 |
|
透過計算每個 SmoothFakeDynamicallyQuantizedLinear 層的 smoothquant 比例來準備模型進行推理。 |