main
py 26 lines 686 Bytes
Raw
1 # SPDX-License-Identifier: Apache-2.0
2 # SPDX-FileCopyrightText: Copyright contributors to the vLLM project
3
4 import abc
5 from dataclasses import dataclass
6
7 import torch
8
9
10 @dataclass(frozen=True)
11 class RecoverSSMPostprocessMetadata:
12 """Metadata used during postprocessing for align-mode prefix caching."""
13
14 num_spec_decodes: int
15 request_indices: torch.Tensor | None
16 block_table: torch.Tensor
17 num_computed_tokens: torch.Tensor
18 block_size: int
19
20
21 class RecoverSSMMetadata(abc.ABC):
22 @abc.abstractmethod
23 def commit_recoverssm_state(
24 self, num_accepted_tokens: torch.Tensor
25 ) -> RecoverSSMPostprocessMetadata | None:
26 raise NotImplementedError