code: def histogram_summary(tag, values, bins):
      
      tag = _clean_tag(tag)
      values = _make_numpy_array(values)
      hist = _make_histogram(values.astype(float), bins)
      return Summary(value=[Summary.Value(tag=tag, histo=hist)])
docs: Outputs a `Summary` protocol buffer with a histogram.
      Adding a histogram summary makes it possible to visualize the data's distribution in
      TensorBoard. See detailed explanation of the TensorBoard histogram dashboard at
      https://www.tensorflow.org/get_started/tensorboard_histograms
      This op reports an `InvalidArgument` error if any value is not finite.
      Adapted from the TensorFlow function `histogram()` at
      https://github.com/tensorflow/tensorflow/blob/master/tensorflow/python/summary/summary.py
  
      Parameters
      ----------
          tag : str
              A name for the summary of the histogram. Will also serve as a series name in
              TensorBoard.
          values : MXNet `NDArray` or `numpy.ndarray`
              Values for building the histogram.
  
      Returns
      -------
          A `Summary` protobuf of the histogram.