diff --git a/python/sglang/srt/multimodal/processors/glm4v.py b/python/sglang/srt/multimodal/processors/glm4v.py index 0dce4e956..33cce6fe2 100644 --- a/python/sglang/srt/multimodal/processors/glm4v.py +++ b/python/sglang/srt/multimodal/processors/glm4v.py @@ -3,7 +3,6 @@ from typing import List, Union from sglang.srt.layers.rotary_embedding import MRotaryEmbedding from sglang.srt.models.glm4v import Glm4vForConditionalGeneration from sglang.srt.models.glm4v_moe import Glm4vMoeForConditionalGeneration -from sglang.srt.models.glm_ocr import GlmOcrForConditionalGeneration from sglang.srt.multimodal.processors.base_processor import ( BaseMultimodalProcessor as SGLangBaseProcessor, ) @@ -11,12 +10,21 @@ from sglang.srt.multimodal.processors.base_processor import ( MultimodalSpecialTokens, ) +try: + from sglang.srt.models.glm_ocr import GlmOcrForConditionalGeneration +except ImportError: + GlmOcrForConditionalGeneration = None + class Glm4vImageProcessor(SGLangBaseProcessor): models = [ - Glm4vForConditionalGeneration, - Glm4vMoeForConditionalGeneration, - GlmOcrForConditionalGeneration, + m + for m in [ + Glm4vForConditionalGeneration, + Glm4vMoeForConditionalGeneration, + GlmOcrForConditionalGeneration, + ] + if m is not None ] def __init__(self, hf_config, server_args, _processor, *args, **kwargs):