vllm.v1.attention.backends.mla.prefill.registry ¶
Registry for MLA prefill backends.
This module provides an enumeration of all available MLA prefill backends and utilities for loading and registering them.
Classes:
-
MLAPrefillBackendEnum–Enumeration of all supported MLA prefill backends.
Functions:
-
register_mla_prefill_backend–Register or override an MLA prefill backend implementation.
MLAPrefillBackendEnum ¶
Bases: Enum
Enumeration of all supported MLA prefill backends.
Methods:
-
clear_override–Clear any override for this backend, reverting to the default.
-
get_class–Get the backend class (respects overrides).
-
get_path–Get the class path for this backend (respects overrides).
-
is_overridden–Check if this backend has been overridden.
Source code in vllm/v1/attention/backends/mla/prefill/registry.py
clear_override() ¶
get_class() ¶
Get the backend class (respects overrides).
Returns:
-
type[MLAPrefillBackend]–The backend class
Raises:
-
ImportError–If the backend class cannot be imported
-
ValueError–If CUSTOM is used without being registered
Source code in vllm/v1/attention/backends/mla/prefill/registry.py
get_path() ¶
Get the class path for this backend (respects overrides).
Returns:
-
str–The fully qualified class path string
Raises:
-
ValueError–If Backend.CUSTOM is used without being registered
Source code in vllm/v1/attention/backends/mla/prefill/registry.py
_MLAPrefillBackendEnumMeta ¶
Bases: EnumMeta
Metaclass for MLAPrefillBackendEnum to provide better error messages.
Source code in vllm/v1/attention/backends/mla/prefill/registry.py
register_mla_prefill_backend(backend, class_path=None) ¶
Register or override an MLA prefill backend implementation.
Parameters:
-
(backend¶MLAPrefillBackendEnum) –The MLAPrefillBackendEnum member to register.
-
(class_path¶str | None, default:None) –Optional class path. If not provided and used as decorator, will be auto-generated from the class.
Returns:
Examples:
Override an existing MLA prefill backend¶
@register_mla_prefill_backend(MLAPrefillBackendEnum.FLASH_ATTN) class MyCustomFlashAttn(MLAPrefillBackend): ...
Register a custom third-party MLA prefill backend¶
@register_mla_prefill_backend(MLAPrefillBackendEnum.CUSTOM) class MyCustomPrefillBackend(MLAPrefillBackend): ...
Direct registration¶
register_mla_prefill_backend( MLAPrefillBackendEnum.CUSTOM, "my.module.MyCustomPrefillBackend" )