__init__.py 1.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940
  1. from typing import Type
  2. from aphrodite.modeling.layers.quantization.aqlm import AQLMConfig
  3. from aphrodite.modeling.layers.quantization.awq import AWQConfig
  4. from aphrodite.modeling.layers.quantization.base_config import \
  5. QuantizationConfig
  6. from aphrodite.modeling.layers.quantization.bitsandbytes import \
  7. BitsandBytesConfig
  8. from aphrodite.modeling.layers.quantization.eetq import EETQConfig
  9. from aphrodite.modeling.layers.quantization.exl2 import Exl2Config
  10. from aphrodite.modeling.layers.quantization.gguf import GGUFConfig
  11. from aphrodite.modeling.layers.quantization.gptq import GPTQConfig
  12. from aphrodite.modeling.layers.quantization.marlin import MarlinConfig
  13. from aphrodite.modeling.layers.quantization.quip import QuipConfig
  14. from aphrodite.modeling.layers.quantization.squeezellm import SqueezeLLMConfig
  15. _QUANTIZATION_CONFIG_REGISTRY = {
  16. "aqlm": AQLMConfig,
  17. "awq": AWQConfig,
  18. "bnb": BitsandBytesConfig,
  19. "eetq": EETQConfig,
  20. "exl2": Exl2Config,
  21. "gguf": GGUFConfig,
  22. "gptq": GPTQConfig,
  23. "quip": QuipConfig,
  24. "squeezellm": SqueezeLLMConfig,
  25. "marlin": MarlinConfig,
  26. }
  27. def get_quantization_config(quantization: str) -> Type[QuantizationConfig]:
  28. if quantization not in _QUANTIZATION_CONFIG_REGISTRY:
  29. raise ValueError(f"Invalid quantization method: {quantization}")
  30. return _QUANTIZATION_CONFIG_REGISTRY[quantization]
  31. __all__ = [
  32. "QuantizationConfig",
  33. "get_quantization_config",
  34. ]