[Model][LoRA] Enable LoRA support for VoyageQwen3BidirectionalEmbedModel (#57708)

Signed-off-by: Mahir Dursunoglu <142054011+mahird3@users.noreply.github.com>

mahird3 committed Sep 20, 2026 at 11:50 UTC 0748d3bd57cb5c4303e58c8465e21f069629480d
1 file changed +7 -1
vllm/model_executor/models/voyage.py
+7 -1
@@ -8,6 +8,7 @@ import torch
8 import torch.nn as nn
9
10 from vllm.config import VllmConfig
11 +from vllm.model_executor.models.interfaces import SupportsLoRA
12 from vllm.model_executor.models.qwen3 import Qwen3Model
13 from vllm.model_executor.models.utils import AutoWeightsLoader, maybe_prefix
14 from vllm.sequence import IntermediateTensors
@@ -15,7 +16,7 @@ from vllm.sequence import IntermediateTensors
16 WeightItem = tuple[str, torch.Tensor]
17
18
18 -class VoyageQwen3BidirectionalEmbedModel(nn.Module):
19 +class VoyageQwen3BidirectionalEmbedModel(nn.Module, SupportsLoRA):
20 """Qwen3Model + Voyage embedding head + bidirectional attention.
21
22 Checkpoint conventions (HF):
@@ -30,6 +31,11 @@ class VoyageQwen3BidirectionalEmbedModel(nn.Module):
31 - No "model." prefix
32 """
33
34 + packed_modules_mapping = {
35 + "qkv_proj": ["q_proj", "k_proj", "v_proj"],
36 + "gate_up_proj": ["gate_proj", "up_proj"],
37 + }
38 +
39 def __init__(self, *, vllm_config: VllmConfig, prefix: str = ""):
40 super().__init__()
41 self.config = vllm_config.model_config.hf_config