code: def create_rnn_cell(
      unit_type,
      num_units,
      num_layers,
      num_residual_layers,
      forget_bias,
      dropout,
      mode,
      num_gpus,
      base_gpu=0,
      single_cell_fn=None,
  ):
      """Create multi-layer RNN cell.
  
      Args:
        unit_type: string representing the unit type, i.e. "lstm".
        num_units: the depth of each unit.
        num_layers: number of cells.
        num_residual_layers: Number of residual layers from top to bottom. For
          example, if `num_layers=4` and `num_residual_layers=2`, the last 2 RNN
          cells in the returned list will be wrapped with `ResidualWrapper`.
        forget_bias: the initial forget bias of the RNNCell(s).
        dropout: floating point value between 0.0 and 1.0:
          the probability of dropout.  this is ignored if `mode != TRAIN`.
        mode: either tf.contrib.learn.TRAIN/EVAL/INFER
        num_gpus: The number of gpus to use when performing round-robin
          placement of layers.
        base_gpu: The gpu device id to use for the first RNN cell in the
          returned list. The i-th RNN cell will use `(base_gpu + i) % num_gpus`
          as its device id.
        single_cell_fn: allow for adding customized cell.
          When not specified, we default to model_helper._single_cell
      Returns:
        An `RNNCell` instance.
      """
      cell_list = _cell_list(
          unit_type=unit_type,
          num_units=num_units,
          num_layers=num_layers,
          num_residual_layers=num_residual_layers,
          forget_bias=forget_bias,
          dropout=dropout,
          mode=mode,
          num_gpus=num_gpus,
          base_gpu=base_gpu,
          single_cell_fn=single_cell_fn,
      )
  
      if len(cell_list) == 1:  # Single layer.
          return cell_list[0]
      else:  # Multi layers
          return tf.contrib.rnn.MultiRNNCell(cell_list)
  
imports: from __future__ import print_function
  import collections
  import os
  import time
  import numpy
  import six
  import tensorflow
  from tensorflow.python.ops import lookup_ops
  from .utils import misc_utils, vocab_utils, iterator_utils
label_desc: Use image node_id 12 for calling a global function with example usage: create_rnn_cell(unit_type, num_units, num_layers, num_residual_layers, forget_bias, dropout, mode, num_gpus, base_gpu, single_cell_fn) and returns: cell_list, tf