From ba5dff351b629f44aebf080541018653464b6907 Mon Sep 17 00:00:00 2001 From: Qubitium Date: Sun, 12 Oct 2025 19:13:47 +0000 Subject: [PATCH 1/3] use pypcre Signed-off-by: Qubitium --- auto_switch_cuda_toolkit.sh | 2 +- gptqmodel/adapter/adapter.py | 2 +- gptqmodel/models/writer.py | 2 +- gptqmodel/quantization/config.py | 2 +- gptqmodel/utils/mmlupro.py | 2 +- gptqmodel/utils/model.py | 2 +- gptqmodel/utils/structure.py | 2 +- pyproject.toml | 1 + requirements.txt | 1 + setup.py | 2 +- tests/tasks/gpqa/cot_n_shot/utils.py | 2 +- tests/tasks/gpqa/cot_zeroshot/utils.py | 2 +- tests/tasks/gpqa/generative/utils.py | 2 +- tests/tasks/gpqa/n_shot/utils.py | 2 +- tests/tasks/gpqa/zeroshot/utils.py | 2 +- tests/tasks/hellaswag/utils.py | 2 +- tests/tasks/mmlu/flan_cot_zeroshot/utils.py | 2 +- tests/tasks/mmlu/flan_n_shot/generative/utils.py | 2 +- 18 files changed, 18 insertions(+), 16 deletions(-) diff --git a/auto_switch_cuda_toolkit.sh b/auto_switch_cuda_toolkit.sh index 6357517c5..5fd15dcc7 100755 --- a/auto_switch_cuda_toolkit.sh +++ b/auto_switch_cuda_toolkit.sh @@ -79,7 +79,7 @@ config_output=$({ printf '\n'; } | ${SUDO} update-alternatives --config cuda 2>& selection=$(CONFIG_OUTPUT="${config_output}" "${python_cmd}" - "${target_version}" <<'PY' import os -import re +import pcre as re import sys target = sys.argv[1] diff --git a/gptqmodel/adapter/adapter.py b/gptqmodel/adapter/adapter.py index e04ce8647..7a0545085 100644 --- a/gptqmodel/adapter/adapter.py +++ b/gptqmodel/adapter/adapter.py @@ -4,7 +4,7 @@ # Contact: qubitium@modelcloud.ai, x.com/qubitium -import re +import pcre as re from dataclasses import dataclass from typing import Dict, List, Optional, Tuple, Union diff --git a/gptqmodel/models/writer.py b/gptqmodel/models/writer.py index f0ac0dbba..6e78fac26 100644 --- a/gptqmodel/models/writer.py +++ b/gptqmodel/models/writer.py @@ -9,7 +9,7 @@ import csv import json import os -import re +import pcre as re from os.path import isfile, join from typing import Any, Dict, Optional, Union diff --git a/gptqmodel/quantization/config.py b/gptqmodel/quantization/config.py index 0b4bb4dfc..d8dd7aab2 100644 --- a/gptqmodel/quantization/config.py +++ b/gptqmodel/quantization/config.py @@ -5,7 +5,7 @@ import json import os.path -import re +import pcre as re from dataclasses import dataclass, field, fields from enum import Enum from os.path import join diff --git a/gptqmodel/utils/mmlupro.py b/gptqmodel/utils/mmlupro.py index a9ec6e963..a0f9a2e23 100644 --- a/gptqmodel/utils/mmlupro.py +++ b/gptqmodel/utils/mmlupro.py @@ -7,7 +7,7 @@ import json import os import random -import re +import pcre as re import time import torch diff --git a/gptqmodel/utils/model.py b/gptqmodel/utils/model.py index 7eab07662..c73694370 100644 --- a/gptqmodel/utils/model.py +++ b/gptqmodel/utils/model.py @@ -11,7 +11,7 @@ import math import operator import os -import re +import pcre as re import shutil import struct import threading diff --git a/gptqmodel/utils/structure.py b/gptqmodel/utils/structure.py index ecfd943f9..27d411add 100644 --- a/gptqmodel/utils/structure.py +++ b/gptqmodel/utils/structure.py @@ -24,7 +24,7 @@ - Collapsing is generic: any numeric-indexed ModuleList whose qualified name matches `experts-regex`. """ -import re +import pcre as re from typing import Dict, Iterable, Optional, Set, Tuple import torch diff --git a/pyproject.toml b/pyproject.toml index 2b8dda4bc..bdd5a064e 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -41,6 +41,7 @@ dependencies = [ "device-smi>=0.5.1", "protobuf>=6.32.0", "pillow>=11.3.0", + "pypcre>=0.2.1", "hf_transfer>=0.1.9", "huggingface_hub>=0.34.4", "random_word>=1.0.13", diff --git a/requirements.txt b/requirements.txt index a46dbea2c..6a4252725 100644 --- a/requirements.txt +++ b/requirements.txt @@ -8,6 +8,7 @@ packaging>=24.2 device-smi>=0.5.1 protobuf>=6.32.0 pillow>=11.3.0 +pypcre>=0.2.1 hf_transfer>=0.1.9 huggingface_hub>=0.34.4 random_word>=1.0.13 diff --git a/setup.py b/setup.py index b7129226d..b9f62cd64 100644 --- a/setup.py +++ b/setup.py @@ -3,7 +3,7 @@ # SPDX-License-Identifier: Apache-2.0 # Contact: qubitium@modelcloud.ai, x.com/qubitium import os -import re +import pcre as re import subprocess import sys from pathlib import Path diff --git a/tests/tasks/gpqa/cot_n_shot/utils.py b/tests/tasks/gpqa/cot_n_shot/utils.py index 7ffab3c6d..f960f95e4 100644 --- a/tests/tasks/gpqa/cot_n_shot/utils.py +++ b/tests/tasks/gpqa/cot_n_shot/utils.py @@ -4,7 +4,7 @@ # Contact: qubitium@modelcloud.ai, x.com/qubitium import random -import re +import pcre as re import datasets diff --git a/tests/tasks/gpqa/cot_zeroshot/utils.py b/tests/tasks/gpqa/cot_zeroshot/utils.py index 7ffab3c6d..f960f95e4 100644 --- a/tests/tasks/gpqa/cot_zeroshot/utils.py +++ b/tests/tasks/gpqa/cot_zeroshot/utils.py @@ -4,7 +4,7 @@ # Contact: qubitium@modelcloud.ai, x.com/qubitium import random -import re +import pcre as re import datasets diff --git a/tests/tasks/gpqa/generative/utils.py b/tests/tasks/gpqa/generative/utils.py index 7ffab3c6d..f960f95e4 100644 --- a/tests/tasks/gpqa/generative/utils.py +++ b/tests/tasks/gpqa/generative/utils.py @@ -4,7 +4,7 @@ # Contact: qubitium@modelcloud.ai, x.com/qubitium import random -import re +import pcre as re import datasets diff --git a/tests/tasks/gpqa/n_shot/utils.py b/tests/tasks/gpqa/n_shot/utils.py index 23cc6b43e..edc6a2106 100644 --- a/tests/tasks/gpqa/n_shot/utils.py +++ b/tests/tasks/gpqa/n_shot/utils.py @@ -4,7 +4,7 @@ # Contact: qubitium@modelcloud.ai, x.com/qubitium import random -import re +import pcre as re import datasets diff --git a/tests/tasks/gpqa/zeroshot/utils.py b/tests/tasks/gpqa/zeroshot/utils.py index ad9c1bdbe..79772b3d4 100644 --- a/tests/tasks/gpqa/zeroshot/utils.py +++ b/tests/tasks/gpqa/zeroshot/utils.py @@ -4,7 +4,7 @@ # Contact: qubitium@modelcloud.ai, x.com/qubitium import random -import re +import pcre as re import datasets diff --git a/tests/tasks/hellaswag/utils.py b/tests/tasks/hellaswag/utils.py index 43f04577e..7de3c7984 100644 --- a/tests/tasks/hellaswag/utils.py +++ b/tests/tasks/hellaswag/utils.py @@ -3,7 +3,7 @@ # SPDX-License-Identifier: Apache-2.0 # Contact: qubitium@modelcloud.ai, x.com/qubitium -import re +import pcre as re import datasets diff --git a/tests/tasks/mmlu/flan_cot_zeroshot/utils.py b/tests/tasks/mmlu/flan_cot_zeroshot/utils.py index 515cfeaf9..e53e1db7e 100644 --- a/tests/tasks/mmlu/flan_cot_zeroshot/utils.py +++ b/tests/tasks/mmlu/flan_cot_zeroshot/utils.py @@ -3,7 +3,7 @@ # SPDX-License-Identifier: Apache-2.0 # Contact: qubitium@modelcloud.ai, x.com/qubitium -import re +import pcre as re import sys import unicodedata diff --git a/tests/tasks/mmlu/flan_n_shot/generative/utils.py b/tests/tasks/mmlu/flan_n_shot/generative/utils.py index 515cfeaf9..e53e1db7e 100644 --- a/tests/tasks/mmlu/flan_n_shot/generative/utils.py +++ b/tests/tasks/mmlu/flan_n_shot/generative/utils.py @@ -3,7 +3,7 @@ # SPDX-License-Identifier: Apache-2.0 # Contact: qubitium@modelcloud.ai, x.com/qubitium -import re +import pcre as re import sys import unicodedata From 2f21f1c9a935dc82d7aa71f00f0985c80c9bd9d0 Mon Sep 17 00:00:00 2001 From: Qubitium Date: Sun, 12 Oct 2025 19:18:25 +0000 Subject: [PATCH 2/3] disable flash atten during quant.. pytorch 2.10 nightly broken Signed-off-by: Qubitium --- tests/models/test_llama3_2.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/models/test_llama3_2.py b/tests/models/test_llama3_2.py index 838f6af81..346662e6a 100644 --- a/tests/models/test_llama3_2.py +++ b/tests/models/test_llama3_2.py @@ -23,7 +23,7 @@ class TestLlama3_2(ModelTest): DATASET_SIZE = 1024 DATASET_SORT = "desc" QUANT_BATCH_SIZE = 4 - # USE_FLASH_ATTN = False + USE_FLASH_ATTN = False # EORA = Lora( # # for quant, path is save path. for load, it is loading path # path="./eora_test", From 68be78930571bfa4c1509b25aece1608c427d82a Mon Sep 17 00:00:00 2001 From: Qubitium Date: Sun, 12 Oct 2025 20:40:30 +0000 Subject: [PATCH 3/3] re-enable fa for test Signed-off-by: Qubitium --- tests/models/test_llama3_2.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/models/test_llama3_2.py b/tests/models/test_llama3_2.py index 346662e6a..51476212b 100644 --- a/tests/models/test_llama3_2.py +++ b/tests/models/test_llama3_2.py @@ -23,7 +23,7 @@ class TestLlama3_2(ModelTest): DATASET_SIZE = 1024 DATASET_SORT = "desc" QUANT_BATCH_SIZE = 4 - USE_FLASH_ATTN = False + USE_FLASH_ATTN = True # EORA = Lora( # # for quant, path is save path. for load, it is loading path # path="./eora_test",