code: def __init__(self, *args, **kwargs) -> None:
      ArgillaTrainerSkeleton.__init__(self, *args, **kwargs)
  
      import torch
      from span_marker import SpanMarkerModel
  
      self.trainer_model = None
  
      self.device = "cpu"
      if torch.backends.mps.is_available():
          self.device = "mps"
      elif torch.cuda.is_available():
          self.device = "cuda"
  
      if self._seed is None:
          self._seed = 42
  
      if self._model is None:
          self._model = "bert-base-cased"
  
      if isinstance(self._dataset, DatasetDict):
          self._train_dataset = self._dataset["train"]
          self._eval_dataset = self._dataset["test"]
      else:
          self._train_dataset = self._dataset
          self._eval_dataset = None
  
      if self._record_class == TokenClassificationRecord:
          self._column_mapping = {
              "text": "text",
              "token": "tokens",
              "ner_tags": "ner_tags",
          }
          self._label_list = self._train_dataset.features[
              "ner_tags"
          ].feature.names
  
          self._model_class = SpanMarkerModel
      else:
          raise NotImplementedError(
              "Text2TextRecord and TextClassification are not supported."
          )
  
      self.init_training_args()
  
file_path: argilla/src/argilla/client/feedback/training/frameworks/span_marker.py
imports: from typing import TYPE_CHECKING
  from datasets import DatasetDict
  from argilla.client.feedback.training.base import ArgillaTrainerSkeleton
  from argilla.client.models import TokenClassificationRecord
  from argilla.training.span_marker import ArgillaSpanMarkerTrainer
label_desc: Use image node_id 1 to create a new ArgillaSpanMarkerTrainer object from inherited base classes: ArgillaSpanMarkerTrainerV1, ArgillaTrainerSkeleton with example: obj = ArgillaSpanMarkerTrainer()