core.models.backends#
Module Contents#
Classes#
A protocol for providing the submodules used in Spec building. |
|
A protocol for providing Local submodules used in Spec building. |
|
A protocol for providing the submodules used in Spec building. |
API#
- class core.models.backends.BackendSpecProvider#
Bases:
typing.ProtocolA protocol for providing the submodules used in Spec building.
- abstractmethod fuse_layernorm_and_linear() bool#
Does the backend support a single module for layernorm and linear
- abstractmethod column_parallel_layer_norm_linear() Optional[type]#
Which module for sequential layernorm and linear
- abstractmethod layer_norm(rms_norm: bool = False, for_qk: bool = False) type#
Which module for layernorm
- class core.models.backends.LocalSpecProvider#
Bases:
core.models.backends.BackendSpecProviderA protocol for providing Local submodules used in Spec building.
- fuse_layernorm_and_linear() bool#
Does the backend choose a single module for layernorm and linear
- column_parallel_layer_norm_linear() Optional[type]#
Which module for sequential layernorm and linear
- class core.models.backends.InferenceSpecProvider#
Bases:
core.models.backends.BackendSpecProviderA protocol for providing the submodules used in Spec building.
- fuse_layernorm_and_linear() bool#
TE backend chooses a single module for layernorm and linear
- column_parallel_layer_norm_linear() type[megatron.core.tensor_parallel.inference_layers.InferenceLayerNormColumnParallelLinear]#
Which module for sequential layernorm and linear