class_docstr: This class defines the minimal interface of a model object which is
  backed by a C++ model implementation.
  
  All state in a Model must be stored in the C++-side __proxy__ object.
  
  _native_name must be implemented. _native_name can returns a list if there
  are multiple C++ types for the same Python object. The native names *must*
  match the registered name of the model (name() method)
  
  The constructor must also permit construction from only 1 argument : the proxy object.
  
  For instance:
  
  class MyModel:
      @classmethod
      def _native_name(cls):
          return "MyModel"
  
  Or:
  
  class NearestNeighborsModel:
      @classmethod
      def _native_name(cls):
          return ["nearest_neighbors_ball_tree", "nearest_neighbors_brute_force", "nearest_neighbors_lsh"]
docstr: Print a summary of the model. The summary includes a description of
  training data, options, hyper-parameters, and statistics measured
  during model creation.
  
  Parameters
  ----------
  output : str, None
      The type of summary to return.
  
      - None or 'stdout' : print directly to stdout.
  
      - 'str' : string of summary
  
      - 'dict' : a dict with 'sections' and 'section_titles' ordered
        lists. The entries in the 'sections' list are tuples of the form
        ('label', 'value').
  
  Examples
  --------
  >>> m.summary()
docstr_tok: ["Print","a","summary","of","the","model",".","The","summary","includes","a","description","of","training","data",",","options",",","hyper-parameters",",","and","statistics","measured","during","model","creation",".","Parameters","--","--","--","--","--","output",":","str",",","None","The","type","of","summary","to","return",".","-","None","or","'stdout","'",":","print","directly","to","stdout",".","-","'str","'",":","string","of","summary","-","'dict","'",":","a","dict","with","'sections","'","and","'section_titles","'","ordered","lists",".","The","entries","in","the","'sections","'","list","are","tuples","of","the","form","(","'label","'",",","'value","'",")",".","Examples","--","--","--","--",">",">",">","m.summary","(",")"]
code: def summary(self, output=None):
      """
      Print a summary of the model. The summary includes a description of
      training data, options, hyper-parameters, and statistics measured
      during model creation.
  
      Parameters
      ----------
      output : str, None
          The type of summary to return.
  
          - None or 'stdout' : print directly to stdout.
  
          - 'str' : string of summary
  
          - 'dict' : a dict with 'sections' and 'section_titles' ordered
            lists. The entries in the 'sections' list are tuples of the form
            ('label', 'value').
  
      Examples
      --------
      >>> m.summary()
      """
      if output is None or output == "stdout":
          try:
              print(self.__repr__())
          except:
              return self.__class__.__name__
      elif output == "str":
          return self.__repr__()
      elif output == "dict":
          return _toolkit_serialize_summary_struct(
              self, *self._get_summary_struct()
          )
      else:
          raise ToolkitError(
              "Unsupported argument "
              + str(output)
              + ' for "summary" parameter.'
          )
  
imports: from __future__ import print_function
  from __future__ import division
  from __future__ import absolute_import
  import turicreate
  import turicreate._connect.main
  from turicreate.data_structures.sframe import SFrame
  import turicreate.extensions
  from turicreate.extensions import _wrap_function_return
  from turicreate.toolkits._internal_utils import _toolkit_serialize_summary_struct
  from turicreate.util import _make_internal_url
  from turicreate.toolkits._main import ToolkitError
  from turicreate._deps.minimal_package import _minimal_package_import_check
  import turicreate.util._file_util
  import os
  from copy import copy
  import six
  import warnings
label_desc: Use image node_id 5 for calling the Model obj's underlying member method code with example usage: obj.summary(output) and returns: self, self, _toolkit_serialize_summary_struct