class_docstr: Run a pre-trained bidirectional language model, outputting the activations at each
  layer for weighting together into an ELMo representation (with
  `allennlp.modules.seq2seq_encoders.Elmo`).  This is a lower level class, useful
  for advanced uses, but most users should use `allennlp.modules.Elmo` directly.
  
  # Parameters
  
  options_file : `str`
      ELMo JSON options file
  weight_file : `str`
      ELMo hdf5 weight file
  requires_grad : `bool`, optional, (default = `False`).
      If True, compute gradient of ELMo parameters for fine tuning.
  vocab_to_cache : `List[str]`, optional, (default = `None`).
      A list of words to pre-compute and cache character convolutions
      for. If you use this option, _ElmoBiLm expects that you pass word
      indices of shape (batch_size, timesteps) to forward, instead
      of character indices. If you use this option and pass a word which
      wasn't pre-cached, this will break.
class_docstr_tok: ["Run","a","pre-trained","bidirectional","language","model",",","outputting","the","activations","at","each","layer","for","weighting","together","into","an","ELMo","representation","(","with","`","allennlp.modules.seq2seq_encoders.Elmo","`",")",".","This","is","a","lower","level","class",",","useful","for","advanced","uses",",","but","most","users","should","use","`","allennlp.modules.Elmo","`","directly",".","#","Parameters","options_file",":","`","str","`","ELMo","JSON","options","file","weight_file",":","`","str","`","ELMo","hdf5","weight","file","requires_grad",":","`","bool","`",",","optional",",","(","default","=","`","False","`",")",".","If","True",",","compute","gradient","of","ELMo","parameters","for","fine","tuning",".","vocab_to_cache",":","`","List","[","str","]","`",",","optional",",","(","default","=","`","None","`",")",".","A","list","of","words","to","pre-compute","and","cache","character","convolutions","for",".","If","you","use","this","option",",","_ElmoBiLm","expects","that","you","pass","word","indices","of","shape","(","batch_size",",","timesteps",")","to","forward",",","instead","of","character","indices",".","If","you","use","this","option","and","pass","a","word","which","was","n't","pre-cached",",","this","will","break","."]
code: def get_output_dim(self):
      return 2 * self._token_embedder.get_output_dim()
  
imports: import json
  import logging
  import warnings
  from typing import Any, Dict, List, Union
  import numpy
  import torch
  from torch.nn.modules import Dropout
  from allennlp.common import FromParams
  from allennlp.common.checks import ConfigurationError
  from allennlp.common.file_utils import cached_path
  from allennlp.common.util import lazy_groups_of
  from allennlp.data.instance import Instance
  from allennlp.data.tokenizers.token_class import Token
  from allennlp.data.vocabulary import Vocabulary
  from allennlp.data.batch import Batch
  from allennlp.data.fields import TextField
  from allennlp.data.token_indexers.elmo_indexer import ELMoCharacterMapper, ELMoTokenCharactersIndexer
  from allennlp.modules.elmo_lstm import ElmoLstm
  from allennlp.modules.highway import Highway
  from allennlp.modules.scalar_mix import ScalarMix
  from allennlp.nn.util import add_sentence_boundary_token_ids, get_device_of, remove_sentence_boundaries
label_desc: Use image node_id 2 for calling the _ElmoBiLm obj's underlying member method code with example usage: obj.get_output_dim() and returns: unknown