---
title: MLCLSTMDescriptor
framework: ML Compute
role: symbol
role_heading: Class
platforms: [iOS 14.0+, iPadOS 14.0+, Mac Catalyst 14.0+, macOS 11.0+, tvOS 14.0+]
path: mlcompute/mlclstmdescriptor
---

# MLCLSTMDescriptor

The configuration object you use to create the LSTM layer.

## Declaration

```swift
class MLCLSTMDescriptor
```

## Topics

### Creating LSTM Descriptors

- [init(inputSize:hiddenSize:layerCount:)](mlcompute/mlclstmdescriptor/init(inputsize:hiddensize:layercount:).md)
- [init(inputSize:hiddenSize:layerCount:usesBiases:isBidirectional:dropout:)](mlcompute/mlclstmdescriptor/init(inputsize:hiddensize:layercount:usesbiases:isbidirectional:dropout:).md)
- [init(inputSize:hiddenSize:layerCount:usesBiases:batchFirst:isBidirectional:dropout:)](mlcompute/mlclstmdescriptor/init(inputsize:hiddensize:layercount:usesbiases:batchfirst:isbidirectional:dropout:).md)
- [init(inputSize:hiddenSize:layerCount:usesBiases:batchFirst:isBidirectional:returnsSequences:dropout:)](mlcompute/mlclstmdescriptor/init(inputsize:hiddensize:layercount:usesbiases:batchfirst:isbidirectional:returnssequences:dropout:).md)
- [init(inputSize:hiddenSize:layerCount:usesBiases:batchFirst:isBidirectional:returnsSequences:dropout:resultMode:)](mlcompute/mlclstmdescriptor/init(inputsize:hiddensize:layercount:usesbiases:batchfirst:isbidirectional:returnssequences:dropout:resultmode:).md)

### Inspecting LSTM Descriptors

- [batchFirst](mlcompute/mlclstmdescriptor/batchfirst.md)
- [dropout](mlcompute/mlclstmdescriptor/dropout.md)
- [hiddenSize](mlcompute/mlclstmdescriptor/hiddensize.md)
- [inputSize](mlcompute/mlclstmdescriptor/inputsize.md)
- [isBidirectional](mlcompute/mlclstmdescriptor/isbidirectional.md)
- [layerCount](mlcompute/mlclstmdescriptor/layercount.md)
- [resultMode](mlcompute/mlclstmdescriptor/resultmode.md)
- [returnsSequences](mlcompute/mlclstmdescriptor/returnssequences.md)
- [usesBiases](mlcompute/mlclstmdescriptor/usesbiases.md)

## Relationships

### Inherits From

- [NSObject](objectivec/nsobject-swift.class.md)

### Conforms To

- [CVarArg](swift/cvararg.md)
- [CustomDebugStringConvertible](swift/customdebugstringconvertible.md)
- [CustomStringConvertible](swift/customstringconvertible.md)
- [Equatable](swift/equatable.md)
- [Hashable](swift/hashable.md)
- [NSCopying](foundation/nscopying.md)
- [NSObjectProtocol](objectivec/nsobjectprotocol.md)

## See Also

### Creating LSTM Layers

- [init(descriptor:inputWeights:hiddenWeights:biases:)](mlcompute/mlclstmlayer/init(descriptor:inputweights:hiddenweights:biases:).md)
- [init(descriptor:inputWeights:hiddenWeights:peepholeWeights:biases:)](mlcompute/mlclstmlayer/init(descriptor:inputweights:hiddenweights:peepholeweights:biases:).md)
- [init(descriptor:inputWeights:hiddenWeights:peepholeWeights:biases:gateActivations:outputResultActivation:)](mlcompute/mlclstmlayer/init(descriptor:inputweights:hiddenweights:peepholeweights:biases:gateactivations:outputresultactivation:).md)
- [MLCLSTMResultMode](mlcompute/mlclstmresultmode.md)
