code: def test_span_f1_can_build_from_params(self):
      params = Params(
          {
              "type": "span_f1",
              "tag_namespace": "tags",
              "ignore_classes": ["V"],
          }
      )
      metric = Metric.from_params(params=params, vocabulary=self.vocab)
      assert metric._ignore_classes == ["V"]
      assert (
          metric._label_vocabulary
          == self.vocab.get_index_to_token_vocabulary("tags")
      )
  
file_path: magnitude/pymagnitude/third_party/allennlp/tests/training/metrics/span_based_f1_measure_test.py
imports: from __future__ import division
  from __future__ import with_statement
  from __future__ import absolute_import
  import os
  import subprocess
  import torch
  import numpy
  from allennlp.common.testing import AllenNlpTestCase
  from allennlp.data import Vocabulary
  from allennlp.training.metrics import SpanBasedF1Measure, Metric
  from allennlp.models.semantic_role_labeler import write_to_conll_eval_file
  from allennlp.common.params import Params
  from io import open
label_desc: Use image node_id 4 for calling the SpanBasedF1Test obj's underlying member method code with example usage: obj.test_span_f1_can_build_from_params() without return types