Skip broken AutoModel mapping entries when resolving Llava submodules (#21892)

This commit is contained in:
Xiaoyu Zhang
2026-04-03 09:04:26 +08:00
committed by GitHub
parent 29d8e959d7
commit 89affff290
2 changed files with 110 additions and 1 deletions
+19 -1
View File
@@ -53,6 +53,9 @@ from sglang.srt.multimodal.mm_utils import (
)
from sglang.srt.utils import add_prefix, flatten_nested_list, logger
_KNOWN_BROKEN_AUTOMODEL_CONFIG = "VoxtralRealtimeTextConfig"
_KNOWN_BROKEN_AUTOMODEL_ERROR = "Could not find VoxtralRealtimeTextModel"
class LlavaBaseForCausalLM(nn.Module):
def pad_input_ids(self, input_ids: List[int], image_inputs: MultimodalInputs):
@@ -657,7 +660,22 @@ class LlavaForConditionalGeneration(LlavaBaseForCausalLM):
) -> Dict[str, str]:
mapping = {}
for config_cls in auto_model_type._model_mapping.keys():
archs = auto_model_type._model_mapping.get(config_cls, None)
try:
archs = auto_model_type._model_mapping.get(config_cls, None)
except ValueError as exc:
if (
auto_model_type is not AutoModel
or config_cls.__name__ != _KNOWN_BROKEN_AUTOMODEL_CONFIG
or _KNOWN_BROKEN_AUTOMODEL_ERROR not in str(exc)
):
raise
logger.warning(
"Skipping broken %s mapping for config %s: %s",
auto_model_type.__name__,
config_cls.__name__,
exc,
)
continue
if archs is not None:
if isinstance(archs, tuple):
mapping[config_cls.__name__] = tuple(