From 2d85ba28460807f5eef4bfef07cc052c67a68dac Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ond=C5=99ej=20=C4=8Cert=C3=ADk?= Date: Wed, 13 Mar 2024 13:59:27 -0600 Subject: [PATCH] Add support for I8, I16 and I32 These types are allowed in the GGUF specification. --- gguf-py/gguf/constants.py | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/gguf-py/gguf/constants.py b/gguf-py/gguf/constants.py index b23badb1019c1a..9044d5d26725fb 100644 --- a/gguf-py/gguf/constants.py +++ b/gguf-py/gguf/constants.py @@ -661,6 +661,10 @@ class GGMLQuantizationType(IntEnum): IQ3_S = 21 IQ2_S = 22 IQ4_XS = 23 + I8 = 24 + I16 = 25 + I32 = 26 + class GGUFEndian(IntEnum): @@ -727,6 +731,9 @@ def get_type(val: Any) -> GGUFValueType: GGMLQuantizationType.IQ3_S: (256, 2 + QK_K // 4 + QK_K // 8 + QK_K // 32 + 4), GGMLQuantizationType.IQ2_S: (256, 2 + QK_K // 4 + QK_K // 16), GGMLQuantizationType.IQ4_XS: (256, 2 + 2 + QK_K // 2 + QK_K // 64), + GGMLQuantizationType.I8: (1, 1), + GGMLQuantizationType.I16: (1, 2), + GGMLQuantizationType.I32: (1, 4), }