code: def __init__(
      self,
      max_steps: int,
      expected_rewards: Tensor,
      arm_ids: Optional[List[str]] = None,
  ):
      self.max_steps = max_steps
      self.expected_rewards = expected_rewards
      self.best_action_value = expected_rewards.max().item()
      self.best_action_id = torch.argmax(expected_rewards).item()
      if arm_ids is None:
          self.arm_ids = list(map(str, range(len(expected_rewards))))
      else:
          self.arm_ids = arm_ids
      self.t = 0
  
imports: from abc import ABC, abstractmethod
  from functools import partial
  from multiprocessing import Pool
  from typing import Dict, List, Optional, Tuple, Type, Union
  import numpy
  import torch
  from reagent.mab.mab_algorithm import MABAlgo
  from torch import Tensor
label_desc: Use image node_id 1 to create a new MAB object from inherited base classes: ABC with example: obj = MAB(max_steps, expected_rewards, arm_ids)