class_docstr: This class defines the minimal interface to a CoreML object in Python.
  
  At a high level, the protobuf specification consists of:
  
  - Model description: Encodes names and type information of the inputs and outputs to the model.
  - Model parameters: The set of parameters required to represent a specific instance of the model.
  - Metadata: Information about the origin, license, and author of the model.
  
  With this class, you can inspect a CoreML model, modify metadata, and make
  predictions for the purposes of testing (on select platforms).
  
  Examples
  --------
  .. sourcecode:: python
  
      # Load the model
      model = MLModel("HousePricer.mlmodel")
  
      # Set the model metadata
      model.author = "Author"
      model.license = "BSD"
      model.short_description = "Predicts the price of a house in the Seattle area."
  
      # Get the interface to the model
      model.input_description
      model.output_description
  
      # Set feature descriptions manually
      model.input_description["bedroom"] = "Number of bedrooms"
      model.input_description["bathrooms"] = "Number of bathrooms"
      model.input_description["size"] = "Size (in square feet)"
  
      # Set
      model.output_description["price"] = "Price of the house"
  
      # Make predictions
      predictions = model.predict({"bedroom": 1.0, "bath": 1.0, "size": 1240})
  
      # Get the spec of the model
      spec = model.get_spec()
  
      # Save the model
      model.save("HousePricer.mlpackage")
  
      # Load the model from the spec object
      spec = model.get_spec()
      # modify spec (e.g. rename inputs/outputs etc)
      model = MLModel(spec)
      # if model type is mlprogram, i.e. spec.WhichOneof('Type') == "mlProgram", then:
      model = MLModel(spec, weights_dir=model.weights_dir)
  
  See Also
  --------
  predict
class_docstr_tok: ["This","class","defines","the","minimal","interface","to","a","CoreML","object","in","Python",".","At","a","high","level",",","the","protobuf","specification","consists","of",":","-","Model","description",":","Encodes","names","and","type","information","of","the","inputs","and","outputs","to","the","model",".","-","Model","parameters",":","The","set","of","parameters","required","to","represent","a","specific","instance","of","the","model",".","-","Metadata",":","Information","about","the","origin",",","license",",","and","author","of","the","model",".","With","this","class",",","you","can","inspect","a","CoreML","model",",","modify","metadata",",","and","make","predictions","for","the","purposes","of","testing","(","on","select","platforms",")",".","Examples","--","--","--","--","..","sourcecode",":",":","python","#","Load","the","model","model","=","MLModel","(","``","HousePricer.mlmodel","''",")","#","Set","the","model","metadata","model.author","=","``","Author","''","model.license","=","``","BSD","''","model.short_description","=","``","Predicts","the","price","of","a","house","in","the","Seattle","area",".","''","#","Get","the","interface","to","the","model","model.input_description","model.output_description","#","Set","feature","descriptions","manually","model.input_description","[","``","bedroom","''","]","=","``","Number","of","bedrooms","''","model.input_description","[","``","bathrooms","''","]","=","``","Number","of","bathrooms","''","model.input_description","[","``","size","''","]","=","``","Size","(","in","square","feet",")","''","#","Set","model.output_description","[","``","price","''","]","=","``","Price","of","the","house","''","#","Make","predictions","predictions","=","model.predict","(","{","``","bedroom","''",":","1.0",",","``","bath","''",":","1.0",",","``","size","''",":","1240","}",")","#","Get","the","spec","of","the","model","spec","=","model.get_spec","(",")","#","Save","the","model","model.save","(","``","HousePricer.mlpackage","''",")","#","Load","the","model","from","the","spec","object","spec","=","model.get_spec","(",")","#","modify","spec","(","e.g",".","rename","inputs\/outputs","etc",")","model","=","MLModel","(","spec",")","#","if","model","type","is","mlprogram",",","i.e",".","spec.WhichOneof","(","'Type","'",")","==","``","mlProgram","''",",","then",":","model","=","MLModel","(","spec",",","weights_dir=model.weights_dir",")","See","Also","--","--","--","--","predict"]
code: def input_description(self):
      return self._input_description
  
imports: import atexit
  import os
  import shutil
  import tempfile
  import warnings
  from copy import deepcopy
  import numpy
  import numpy
  from coremltools import ComputeUnit
  from coremltools._deps import _HAS_TF_1, _HAS_TF_2, _HAS_TORCH
  from coremltools.converters.mil.mil.program import Program
  from ..proto import FeatureTypes_pb2
  from ..proto import MIL_pb2
  from ..proto import Model_pb2
  from .utils import _MLMODEL_EXTENSION, _MLPACKAGE_AUTHOR_NAME, _MLPACKAGE_EXTENSION, _MODEL_FILE_NAME, _WEIGHTS_DIR_NAME, _create_mlpackage, _has_custom_layer, _is_macos, _macos_version
  from .utils import load_spec
  from .utils import save_spec
label_desc: Use image node_id 4 for calling the MLModel obj's underlying member method code with example usage: obj.input_description() and returns: self