Bases: ABC
, RegistryMixin
Methods:
-
from_modifiers
– Infer which calibration pipeline to use based on the available modifiers and
from_modifiers classmethod
from_modifiers(
modifiers: List[Modifier], user: Optional[str] = None
) -> CalibrationPipeline
Infer which calibration pipeline to use based on the available modifiers and any user specifications
Parameters:
-
modifiers
(List[Modifier]
) – modifiers to apply to model
-
user
(Optional[str]
, default: None
) – pipeline name passed by user
Returns:
Source code in llmcompressor/pipelines/registry.py
| @classmethod
def from_modifiers(
cls, modifiers: List[Modifier], user: Optional[str] = None
) -> "CalibrationPipeline":
"""
Infer which calibration pipeline to use based on the available modifiers and
any user specifications
:param modifiers: modifiers to apply to model
:param user: pipeline name passed by user
:return: CalibrationPipeline instance to be called with data (if not datafree)
"""
user = standardize_lookup_name(user) if user else None
inferred = standardize_lookup_name(cls._infer_pipeline(modifiers))
independent = standardize_lookup_name("independent")
if user == independent:
inferred = independent
if user is not None and user != inferred:
logger.warning(
f"Calibration pipeline is set to `{user}`, but it is recommended to "
f"use `{inferred}`"
)
pipeline = user or inferred
return cls.load_from_registry(pipeline)
|