[Model] Add torch.compile support for InternVL vision encoder (#38049)

Signed-off-by: tianrengao <terrygao87@gmail.com>
This commit is contained in:
Terry Gao
2026-03-25 23:52:29 -07:00
committed by GitHub
parent 2bfbdca23c
commit 38de822310
2 changed files with 20 additions and 3 deletions

View File

@@ -15,6 +15,10 @@ import torch.nn as nn
import torch.nn.functional as F
from transformers import PretrainedConfig
from vllm.compilation.decorators import (
should_torch_compile_mm_encoder,
support_torch_compile,
)
from vllm.distributed import (
divide,
get_tensor_model_parallel_rank,
@@ -280,6 +284,11 @@ class InternMLP(nn.Module):
return hidden_states
@support_torch_compile(
dynamic_arg_dims={"hidden_states": 0},
enable_if=should_torch_compile_mm_encoder,
is_encoder=True,
)
class InternVisionEncoderLayer(nn.Module):
def __init__(
self,
@@ -364,8 +373,8 @@ class InternVisionEncoder(nn.Module):
self.layers = nn.ModuleList(
[
self.layer_cls(
config,
quant_config,
config=config,
quant_config=quant_config,
num_dummy_heads=num_dummy_heads,
prefix=f"{prefix}.layers.{layer_idx}",
)