code: def get_siblings(x, collection=None):
      """Get sibling random variables of input.
  
      Args:
        x: RandomVariable or tf.Tensor.
          Query node to find siblings of.
        collection: list of RandomVariable.
          The collection of random variables to check with respect to;
          defaults to all random variables in the graph.
  
      Returns:
        list of RandomVariable.
        Sibling random variables of x.
  
      #### Examples
  
      ```python
      a = Normal(0.0, 1.0)
      b = Normal(a, 1.0)
      c = Normal(a, 1.0)
      assert ed.get_siblings(b) == [c]
      ```
      """
      parents = get_parents(x, collection)
      siblings = set()
      for parent in parents:
          siblings.update(get_children(parent, collection))
  
      siblings.discard(x)
      return list(siblings)
  
imports: from __future__ import absolute_import
  from __future__ import division
  from __future__ import print_function
  import numpy
  import six
  import tensorflow
  from copy import deepcopy
  from edward.models.random_variable import RandomVariable
  from edward.models.random_variables import TransformedDistribution
  from edward.models import PointMass
  from edward.util.graphs import random_variables
  from tensorflow.core.framework import attr_value_pb2
  from tensorflow.python.framework.ops import set_shapes_for_outputs
  from tensorflow.python.util import compat
label_desc: Use image node_id 12 for calling a global function with example usage: get_siblings(x, collection) and returns: list