Skip to content

Commit 9ad0688

Browse files
authored
[Bugfix] Fix hidden_size for multimodal classification model (vllm-project#24501)
Signed-off-by: Jee Jee Li <pandaleefree@gmail.com>
1 parent b9a1c4c commit 9ad0688

File tree

2 files changed

+10
-2
lines changed

2 files changed

+10
-2
lines changed

vllm/model_executor/models/adapters.py

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -255,17 +255,18 @@ def as_seq_cls_model(cls: _T) -> _T:
255255
from vllm.model_executor.models.interfaces import SupportsCrossEncoding
256256
from vllm.sequence import IntermediateTensors
257257

258-
from .utils import maybe_prefix
258+
from .utils import get_model_hidden_size, maybe_prefix
259259

260260
class ModelForSequenceClassification(_create_pooling_model_cls(cls),
261261
SupportsCrossEncoding):
262262

263263
def _init_pooler(self, vllm_config: "VllmConfig", prefix: str = ""):
264264
config = vllm_config.model_config.hf_config
265265
quant_config = vllm_config.quant_config
266+
hidden_size = get_model_hidden_size(config)
266267

267268
self.score = ReplicatedLinear(
268-
config.hidden_size,
269+
hidden_size,
269270
config.num_labels,
270271
bias=False,
271272
params_dtype=torch.float32,

vllm/model_executor/models/utils.py

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -761,3 +761,10 @@ def fast_topk(values: torch.Tensor, topk: int,
761761
else:
762762
# Use topk for efficiency with larger k values
763763
return torch.topk(values, topk, dim=dim)
764+
765+
766+
def get_model_hidden_size(hf_config: PretrainedConfig) -> int:
767+
if hasattr(hf_config, "hidden_size"):
768+
return hf_config.hidden_size
769+
text_config = hf_config.get_text_config()
770+
return text_config.hidden_size

0 commit comments

Comments
 (0)