From: compilade Date: Mon, 22 Dec 2025 19:25:16 +0000 (-0500) Subject: gguf-py : do not align the data start offset (#18291) X-Git-Tag: upstream/0.0.7599~85 X-Git-Url: https://git.djapps.eu/?a=commitdiff_plain;h=8f48807380305a5985df78f67e29862664c9afec;p=pkg%2Fggml%2Fsources%2Fllama.cpp gguf-py : do not align the data start offset (#18291) The safetensors format doesn't require alignment. --- diff --git a/gguf-py/gguf/utility.py b/gguf-py/gguf/utility.py index 4918ae97..154351d8 100644 --- a/gguf-py/gguf/utility.py +++ b/gguf-py/gguf/utility.py @@ -110,7 +110,6 @@ class SafetensorRemote: """ BASE_DOMAIN = "https://huggingface.co" - ALIGNMENT = 8 # bytes @classmethod def get_list_tensors_hf_model(cls, model_id: str) -> dict[str, RemoteTensor]: @@ -204,9 +203,6 @@ class SafetensorRemote: # Calculate the data start offset data_start_offset = 8 + metadata_length - alignment = SafetensorRemote.ALIGNMENT - if data_start_offset % alignment != 0: - data_start_offset += alignment - (data_start_offset % alignment) # Check if we have enough data to read the metadata if len(raw_data) < 8 + metadata_length: @@ -298,7 +294,6 @@ class SafetensorsLocal: Custom parsing gives a bit more control over the memory usage. The official safetensors library doesn't expose file ranges. """ - ALIGNMENT = 8 # bytes tensors: dict[str, LocalTensor] @@ -316,9 +311,6 @@ class SafetensorsLocal: raise ValueError(f"Failed to parse safetensors metadata as JSON: {e}") data_start_offset = f.tell() - alignment = self.ALIGNMENT - if data_start_offset % alignment != 0: - data_start_offset += alignment - (data_start_offset % alignment) tensors: dict[str, LocalTensor] = {} for name, meta in metadata.items():