[Model] Remove unused DeepseekV32Indexer forward (#53021)
Signed-off-by: Woosuk Kwon <woosuk@inferact.ai> Co-authored-by: OpenAI Codex <codex@openai.com>
Woosuk Kwon committed
Aug 19, 2026 at 19:39 UTC
c0233fcf0100c07820d7f7a725de458a0e14df64
1 file changed
-51
vllm/models/deepseek_v32/attention.py
-51
@@ -21,9 +21,6 @@ from vllm.model_executor.layers.linear import (
21
RowParallelLinear,
22
)
23
from vllm.model_executor.layers.quantization import QuantizationConfig
24
-from vllm.model_executor.layers.quantization.utils.fp8_utils import (
25
- per_token_group_quant_fp8,
26
-)
24
from vllm.model_executor.layers.rotary_embedding import get_rope
25
from vllm.model_executor.layers.sparse_attn_indexer import (
26
SparseAttnIndexer,
@@ -117,54 +114,6 @@ class DeepseekV32Indexer(nn.Module):
114
self.topk_indices_buffer,
115
)
116
120
- def forward(
121
- self,
122
- hidden_states: torch.Tensor,
123
- qr: torch.Tensor,
124
- positions: torch.Tensor,
125
- rotary_emb: nn.Module,
126
- ) -> torch.Tensor:
127
- q, _ = self.wq_b(qr)
128
- q = q.view(-1, self.n_head, self.head_dim)
129
-
130
- q_pe, q_nope = torch.split(
131
- q, [self.rope_dim, self.head_dim - self.rope_dim], dim=-1
132
- )
133
-
134
- kw, _ = self.wk_weights_proj(hidden_states)
135
- k = kw[:, : self.head_dim]
136
- weights = kw[:, self.head_dim :]
137
-
138
- k = self.k_norm(k)
139
- k_pe, k_nope = torch.split(
140
- k, [self.rope_dim, self.head_dim - self.rope_dim], dim=-1
141
- )
142
-
143
- q_pe, k_pe = rotary_emb(positions, q_pe, k_pe.unsqueeze(1))
144
-
145
- q_pe = q_pe.reshape(-1, self.n_head, self.rope_dim)
146
- k_pe = k_pe.reshape(-1, 1, self.rope_dim)
147
-
148
- q = torch.cat([q_pe, q_nope], dim=-1)
149
- k = torch.cat([k_pe.squeeze(-2), k_nope], dim=-1)
150
-
151
- q = q.view(-1, self.head_dim)
152
- q_fp8, q_scale = per_token_group_quant_fp8(
153
- q,
154
- self.quant_block_size,
155
- column_major_scales=False,
156
- use_ue8m0=self.scale_fmt is not None,
157
- )
158
- q_fp8 = q_fp8.view(-1, self.n_head, self.head_dim)
159
- q_scale = q_scale.view(-1, self.n_head, 1)
160
-
161
- weights = (
162
- weights.unsqueeze(-1) * q_scale * self.softmax_scale * self.n_head**-0.5
163
- )
164
- weights = weights.squeeze(-1)
165
-
166
- return self.indexer_op(hidden_states, q_fp8, k, weights)
167
-
117
118
class DeepseekV32Attention(MLAAttention):
119
indexer: "DeepseekV32Indexer | None"