code: def test_save_mutliple(self):
      model_a = SequenceLabeler()
      model_b = SequenceLabeler()
      model_a.fit(
          ["test text"] * 20,
          [[{"start": 0, "end": 4, "label": "test"}]] * 20,
      )
      model_b.fit(
          ["test text"] * 20,
          [[{"start": 5, "end": 9, "label": "test"}]] * 20,
      )
  
      preds_a_1 = model_a.predict(["test text"])
      preds_b_1 = model_b.predict(["test text"])
  
      SequenceLabeler.save_multiple(
          "multiple_models.jl", {"a": model_a, "b": model_b}
      )
      shed = Scheduler()
      preds_a_2 = shed.predict(
          "multiple_models.jl", ["test text"], key="a"
      )
      preds_b_2 = shed.predict(
          "multiple_models.jl", ["test text"], key="b"
      )
      self.preds_equal(preds_a_1, preds_a_2)
      self.preds_equal(preds_b_1, preds_b_2)
  
imports: import unittest
  from collections import Counter
  import pytest
  import numpy
  import tensorflow
  import unicodedata
  from finetune.encoding.sequence_encoder import finetune_to_indico_sequence
  from finetune.optimizers.gradient_accumulation import get_grad_accumulation_optimizer
  from finetune.util.imbalance import compute_class_weights
  from finetune.util.optimize_loss import OPTIMIZERS
  from finetune.util.timing import ProgressBar
  from finetune.errors import FinetuneError
  from finetune import Classifier, SequenceLabeler
  from finetune.base_models.gpt.encoder import GPTEncoder
  from finetune.base_models.gpt2.encoder import GPT2Encoder
  from finetune.base_models.bert.roberta_encoder import RoBERTaEncoderV2, RoBERTaEncoder, RoBERTaEncoderSlow
  from finetune.base_models.bert.encoder import BERTEncoderMultuilingal, BERTEncoder
  from finetune.base_models.oscar.encoder import GPCEncoder
  from finetune.scheduler import Scheduler
label_desc: Use image node_id 3 for calling the TestSaveMultiple obj's underlying member method code with example usage: obj.test_save_mutliple() without return types