code: def create(graph, kmin=0, kmax=10, verbose=True):
      """
      Compute the K-core decomposition of the graph. Return a model object with
      total number of cores as well as the core id for each vertex in the graph.
  
      Parameters
      ----------
      graph : SGraph
          The graph on which to compute the k-core decomposition.
  
      kmin : int, optional
          Minimum core id. Vertices having smaller core id than `kmin` will be
          assigned with core_id = `kmin`.
  
      kmax : int, optional
          Maximum core id. Vertices having larger core id than `kmax` will be
          assigned with core_id=`kmax`.
  
      verbose : bool, optional
          If True, print progress updates.
  
      Returns
      -------
      out : KcoreModel
  
      References
      ----------
      - Alvarez-Hamelin, J.I., et al. (2005) `K-Core Decomposition: A Tool for the
        Visualization of Large Networks <http://arxiv.org/abs/cs/0504107>`_.
  
      Examples
      --------
      If given an :class:`~turicreate.SGraph` ``g``, we can create
      a :class:`~turicreate.kcore.KcoreModel` as follows:
  
      >>> g = turicreate.load_sgraph('http://snap.stanford.edu/data/email-Enron.txt.gz', format='snap')
      >>> kc = turicreate.kcore.create(g)
  
      We can obtain the ``core id`` corresponding to each vertex in the graph
      ``g`` using:
  
      >>> kcore_id = kc['core_id']     # SFrame
  
      We can add the new core id field to the original graph g using:
  
      >>> g.vertices['core_id'] = kc['graph'].vertices['core_id']
  
      Note that the task above does not require a join because the vertex
      ordering is preserved through ``create()``.
  
      See Also
      --------
      KcoreModel
      """
      from turicreate._cython.cy_server import QuietProgress
  
      if not isinstance(graph, _SGraph):
          raise TypeError("graph input must be a SGraph object.")
  
      opts = {"graph": graph.__proxy__, "kmin": kmin, "kmax": kmax}
  
      with QuietProgress(verbose):
          params = _tc.extensions._toolkits.graph.kcore.create(opts)
  
      return KcoreModel(params["model"])
  
file_path: turicreate/src/python/turicreate/toolkits/graph_analytics/kcore.py
imports: from __future__ import print_function
  from __future__ import division
  from __future__ import absolute_import
  import turicreate
  from turicreate.data_structures.sgraph import SGraph
  from turicreate.toolkits.graph_analytics._model_base import GraphAnalyticsModel
label_desc: Use image node_id 1 for calling a global function with example usage: create(graph, kmin, kmax, verbose) and returns: KcoreModel