<!--
{
  "availability" : [
    "iOS: 11.0.0 -",
    "iPadOS: 11.0.0 -",
    "macCatalyst: 13.1.0 -",
    "macOS: 10.13.0 -",
    "tvOS: 11.0.0 -",
    "visionOS: 1.0.0 -",
    "watchOS: 4.0.0 -"
  ],
  "documentType" : "symbol",
  "framework" : "CoreML",
  "identifier" : "/documentation/CoreML/MLModelDescription",
  "metadataVersion" : "0.1.0",
  "role" : "Class",
  "symbol" : {
    "kind" : "Class",
    "modules" : [
      "Core ML"
    ],
    "preciseIdentifier" : "c:objc(cs)MLModelDescription"
  },
  "title" : "MLModelDescription"
}
-->

# MLModelDescription

Information about a model, primarily the input and output format for each feature the model expects, and optional metadata.

```
class MLModelDescription
```

## Topics

### Accessing feature descriptions

[`stateDescriptionsByName`](/documentation/CoreML/MLModelDescription/stateDescriptionsByName)

Description of the state features.

[`inputDescriptionsByName`](/documentation/CoreML/MLModelDescription/inputDescriptionsByName)

A dictionary of input feature descriptions, which the model keys by the input’s name.

[`outputDescriptionsByName`](/documentation/CoreML/MLModelDescription/outputDescriptionsByName)

A dictionary of output feature descriptions, which the model keys by the output’s name.

[`MLFeatureDescription`](/documentation/CoreML/MLFeatureDescription)

The name, type, and constraints of an input or output feature.

### Accessing metadata

[`classLabels`](/documentation/CoreML/MLModelDescription/classLabels)

An array of labels, which can be either strings or a numbers, for classifier models.

[`metadata`](/documentation/CoreML/MLModelDescription/metadata)

A dictionary of the model’s creation information, such as its description, author, version, and license.

[`MLModelMetadataKey`](/documentation/CoreML/MLModelMetadataKey)

The set of keys the model uses to store values in its metadata dictionary.

### Accessing prediction names

[`predictedFeatureName`](/documentation/CoreML/MLModelDescription/predictedFeatureName)

The name of the primary prediction feature output description.

[`predictedProbabilitiesName`](/documentation/CoreML/MLModelDescription/predictedProbabilitiesName)

The name of the feature output description for all probabilities of a prediction.

### Accessing update descriptions

[`isUpdatable`](/documentation/CoreML/MLModelDescription/isUpdatable)

A Boolean value that indicates whether you can update the model with additional training.

[`trainingInputDescriptionsByName`](/documentation/CoreML/MLModelDescription/trainingInputDescriptionsByName)

A dictionary of the training input feature descriptions, which the model keys by the input’s name.

[`parameterDescriptionsByKey`](/documentation/CoreML/MLModelDescription/parameterDescriptionsByKey)

A dictionary of the descriptions for the model’s parameters.

[`MLParameterDescription`](/documentation/CoreML/MLParameterDescription)

A description of a model parameter that includes a default value and a constraint, if applicable.



---

Copyright &copy; 2026 Apple Inc. All rights reserved. | [Terms of Use](https://www.apple.com/legal/internet-services/terms/site.html) | [Privacy Policy](https://www.apple.com/privacy/privacy-policy)