diff --git a/python/sglang/srt/models/llama.py b/python/sglang/srt/models/llama.py index d8810c508..f955ac750 100644 --- a/python/sglang/srt/models/llama.py +++ b/python/sglang/srt/models/llama.py @@ -252,8 +252,13 @@ class LlamaDecoderLayer(nn.Module): ) -> None: super().__init__() self.hidden_size = config.hidden_size - rope_theta = config.rope_parameters["rope_theta"] - rope_scaling = config.rope_parameters + rope_parameters = getattr(config, "rope_parameters", None) + if rope_parameters is not None: + rope_theta = rope_parameters.get("rope_theta", 10000) + rope_scaling = rope_parameters + else: + rope_theta = getattr(config, "rope_theta", 10000) + rope_scaling = getattr(config, "rope_scaling", None) if rope_scaling is not None and getattr( config, "original_max_position_embeddings", None ): diff --git a/python/sglang/srt/models/llama_eagle3.py b/python/sglang/srt/models/llama_eagle3.py index a4022dba0..e9a383ddc 100644 --- a/python/sglang/srt/models/llama_eagle3.py +++ b/python/sglang/srt/models/llama_eagle3.py @@ -111,13 +111,17 @@ class LlamaModel(nn.Module): super().__init__() self.config = config - rope_scaling = config.rope_parameters + rope_parameters = getattr(config, "rope_parameters", None) + if rope_parameters is not None: + rope_scaling = rope_parameters + else: + rope_scaling = getattr(config, "rope_scaling", None) self.is_mrope_enabled = ( rope_scaling is not None and "mrope_section" in rope_scaling ) # fix rope_scaling for qwen2.5-vl if self.is_mrope_enabled: - config.rope_parameters["rope_type"] = "default" + rope_scaling["rope_type"] = "default" self.vocab_size = config.vocab_size self.embed_tokens = VocabParallelEmbedding(