{"record":{"id":"7b54f4d026f1c1fa","repo":"sgl-project/sglang","slug":"cannot-find-corresponding-multimodal-processor-reg","errorCode":null,"errorMessage":"Cannot find corresponding multimodal processor registered in sglang for model type `{model_type}`","messagePattern":"Cannot find corresponding multimodal processor registered in sglang for model type `(.+?)`","errorType":"validation","errorClass":"ValueError","httpStatus":null,"severity":"error","filePath":"python/sglang/srt/multimodal/processors/llava.py","lineNumber":285,"sourceCode":"\nclass LlavaMultimodalProcessor(BaseMultimodalProcessor):\n    \"\"\"\n    This is a wrapper class used to identify the multimodal processor for Llava architectures' vision model.\n    \"\"\"\n\n    models = [LlavaForConditionalGeneration, Mistral3ForConditionalGeneration]\n\n    def _get_sgl_processor_cls(self, model_type: str):\n        if model_type == \"clip_vision_model\":\n            return LlavaImageProcessor\n        if hf_name := HF_MAPPING_NAMES.get(model_type):\n            sgl_mm_processor_set = sgl_mm_processor_utils.PROCESSOR_MAPPING.values()\n            sgl_processor_cls = list(\n                filter(lambda p: p.__name__ == hf_name, sgl_mm_processor_set)\n            )\n            if sgl_processor_cls:\n                return sgl_processor_cls[0]\n        raise ValueError(\n            f\"Cannot find corresponding multimodal processor registered in sglang for model type `{model_type}`\"\n        )\n\n    def __init__(self, hf_config, server_args, _processor, *args, **kwargs):\n        assert hasattr(hf_config, \"vision_config\")\n        assert hasattr(hf_config, \"text_config\")\n        self.vision_config = hf_config.vision_config\n        self.text_config = hf_config.text_config\n        self.hf_config = hf_config\n\n        if vision_type := getattr(self.vision_config, \"model_type\"):\n            self.inner = self._get_sgl_processor_cls(vision_type)(\n                hf_config, server_args, _processor, *args, **kwargs\n            )\n        else:\n            raise ValueError(\n                f\"Required `vision_config.model_type` is not found in hf_config: `{hf_config}`\"\n            )","sourceCodeStart":267,"sourceCodeEnd":303,"githubUrl":"https://github.com/sgl-project/sglang/blob/0132848349585cfe6aae51c4941cbae872505f8a/python/sglang/srt/multimodal/processors/llava.py#L267-L303","documentation":"LLaVA-style models wrap a vision tower whose model_type selects an SGLang multimodal processor implementation. No processor class in sglang's PROCESSOR_MAPPING matches that vision model_type, so loading fails.","triggerScenarios":"Serving a LLaVA-variant model whose config.json vision_config.model_type (e.g. a new or renamed SigLIP/CLIP variant) is not registered in sglang's multimodal processor mapping.","commonSituations":"Using a newly released vision tower version, a community fine-tune with a custom vision model_type, or an older sglang version lacking a newly added processor.","solutions":["Upgrade sglang to a version that registers a processor for this vision model_type","Check sgl_mm_processor_utils.PROCESSOR_MAPPING for supported types and use a model with a supported vision tower","Register a custom processor class in the mapping if you control the deployment"],"exampleFix":null,"handlingStrategy":"fallback","validationCode":"from sglang.srt.multimodal.processors import PROCESSOR_MAPPING\nvt = config.vision_config.model_type\nsupported = any(p.__name__ == vt for p in PROCESSOR_MAPPING.values())","typeGuard":null,"tryCatchPattern":null,"preventionTips":["Pre-check the model's vision model_type against supported processors before launching the server","Pin sglang versions tested with your model repo"],"tags":["multimodal","llava","model-loading","unsupported-model"],"backgroundTag":"unsupported-model-type","analyzedSha":"0132848349585cfe6aae51c4941cbae872505f8a","analyzedAt":"2026-08-28T05:10:05.995Z","schemaVersion":2},"datasetVersion":"2026-08-28T06:17:29.519Z"}