diff --git a/convert-hf-to-gguf.py b/convert-hf-to-gguf.py index ffdba7444..e72b1ee2a 100755 --- a/convert-hf-to-gguf.py +++ b/convert-hf-to-gguf.py @@ -28,6 +28,9 @@ from convert import HfVocab ###### MODEL DEFINITIONS ###### +AnyModel = TypeVar("AnyModel", bound="type[Model]") + + class SentencePieceTokenTypes(IntEnum): NORMAL = 1 UNKNOWN = 2 @@ -36,7 +39,6 @@ class SentencePieceTokenTypes(IntEnum): UNUSED = 5 BYTE = 6 -AnyModel = TypeVar("AnyModel", bound="type[Model]") class Model(ABC): _model_classes: dict[str, type[Model]] = {} @@ -187,10 +189,12 @@ class Model(ABC): @classmethod def register(cls, *names: str) -> Callable[[AnyModel], AnyModel]: assert names + def func(modelcls: type[Model]): for name in names: cls._model_classes[name] = modelcls return modelcls + return func @classmethod