code: def test_prepare_for_training_with_spacy(self):
      ner_dataset = datasets.load_dataset(
          "argilla/gutenberg_spacy-ner",
          use_auth_token=_HF_HUB_ACCESS_TOKEN,
          split="train",
      )
      rb_dataset: DatasetForTokenClassification = read_datasets(
          ner_dataset, task="TokenClassification"
      )
      for r in rb_dataset:
          r.annotation = [
              (label, start, end)
              for label, start, end, _ in r.prediction
          ]
  
      with pytest.raises(ValueError):
          train = rb_dataset.prepare_for_training(
              framework="spacy", seed=42
          )
  
      train = rb_dataset.prepare_for_training(
          framework="spacy", lang=spacy.blank("en"), seed=42
      )
      assert isinstance(train, spacy.tokens.DocBin)
      assert len(train) == 100
  
      nlp = spacy.blank("en")
      train, test = rb_dataset.prepare_for_training(
          framework="spacy", lang=nlp, train_size=0.8, seed=42
      )
      assert isinstance(train, spacy.tokens.DocBin)
      assert isinstance(test, spacy.tokens.DocBin)
      assert len(train) == 80
      assert len(test) == 20
  
      train_doc = next(train.get_docs(nlp.vocab))
      test_doc = next(test.get_docs(nlp.vocab))
  
      assert "id" in train_doc.user_data
      assert "id" in test_doc.user_data
  
imports: import copy
  import os
  import sys
  from time import sleep
  import datasets
  import pandas
  import pytest
  import spacy
  from argilla.client.datasets import DatasetBase, DatasetForText2Text, DatasetForTextClassification, DatasetForTokenClassification, WrongRecordTypeError, read_datasets, read_pandas
  from argilla.client.models import Text2TextRecord, TextClassificationRecord, TokenClassificationRecord
  from argilla.datasets import TextClassificationSettings
label_desc: Use image node_id 8 for calling the TestDatasetForTokenClassification obj's underlying member method code with example usage: obj.test_prepare_for_training_with_spacy() without return types