From 8817777e119516e095063090c6b48a5648c01985 Mon Sep 17 00:00:00 2001 From: akemimadoka Date: Wed, 26 Feb 2025 03:50:12 +0800 Subject: [PATCH] Fix RuntimeError on Windows caused by integer overflow in np.prod --- ktransformers/util/custom_gguf.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/ktransformers/util/custom_gguf.py b/ktransformers/util/custom_gguf.py index 86051b5..84ada15 100644 --- a/ktransformers/util/custom_gguf.py +++ b/ktransformers/util/custom_gguf.py @@ -27,6 +27,7 @@ import torch import KTransformersOps from .custom_loader import SafeTensorLoader import ctypes +import math class GGMLQuantizationType(IntEnum): F32 = 0 @@ -230,7 +231,7 @@ class GGUFLoader: shape = [read_value(f, DATA_TYPES["uint64"]) for _ in range(shape_len)] ggml_type = read_value(f, DATA_TYPES["uint32"]) bad_offset = read_value(f, DATA_TYPES["uint64"]) - n_elems = int(np.prod(shape)) + n_elems = int(math.prod(shape)) block_size, type_size = GGML_QUANT_SIZES[ggml_type] n_bytes = n_elems * type_size // block_size np_dims = tuple(reversed(shape))