code: def _preempt_by_swap(
      self,
      seq_group: SequenceGroup,
      blocks_to_swap_out: Dict[int, int],
  ) -> None:
      self._swap_out(seq_group, blocks_to_swap_out)
      self.swapped.append(seq_group)
  
imports: import enum
  import time
  from typing import Dict, Iterable, List, Optional, Tuple, Union
  from bigdl.llm.vllm.config import SchedulerConfig
  from bigdl.llm.vllm.core.policy import PolicyFactory
  from bigdl.llm.vllm.logger import init_logger
  from bigdl.llm.vllm.sequence import SequenceData, SequenceStatus
  from bigdl.llm.vllm.sequence import Sequence, SequenceGroup, SequenceGroupMetadata
  from bigdl.llm.utils.common import invalidInputError
label_desc: Use image node_id 12 for calling the FixedWindowScheduler obj's underlying member method code with example usage: obj._preempt_by_swap(seq_group, blocks_to_swap_out) without return types