<!--
{
  "availability" : [
    "iOS: 15.0.0 -",
    "iPadOS: 15.0.0 -",
    "macCatalyst: 15.0.0 -",
    "macOS: 11.0.0 -",
    "tvOS: 16.0.0 -",
    "visionOS: 1.0.0 -"
  ],
  "documentType" : "symbol",
  "framework" : "CreateML",
  "identifier" : "/documentation/CreateML/MLJob",
  "metadataVersion" : "0.1.0",
  "role" : "Class",
  "symbol" : {
    "kind" : "Class",
    "modules" : [
      "Create ML"
    ],
    "preciseIdentifier" : "s:8CreateML5MLJobC"
  },
  "title" : "MLJob"
}
-->

# MLJob

The representation of a model’s asynchronous training session you use to
monitor the session’s progress or terminate its execution.

```
final class MLJob<Result>
```

## Topics

### Receiving progress updates

[`checkpoints`](/documentation/CreateML/MLJob/checkpoints)

A publisher that sends a checkpoint for each of the session’s checkpoint
intervals.

[`result`](/documentation/CreateML/MLJob/result)

A publisher that provides a result when the training session has
finished.

[`phase`](/documentation/CreateML/MLJob/phase)

Phase publisher.

### Managing a job

[`cancel()`](/documentation/CreateML/MLJob/cancel())

Stops the training session’s execution.

[`isCanceled`](/documentation/CreateML/MLJob/isCanceled)

A Boolean value that indicates whether you canceled the job.

### Inspecting a job

[`startDate`](/documentation/CreateML/MLJob/startDate)

The date and time when the training session began.

[`progress`](/documentation/CreateML/MLJob/progress)

The training session’s current progress.

[`MLProgress`](/documentation/CreateML/MLProgress)

A convenience type that exposes information about the progress of a training
session.



---

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)