Core ML is an Apple framework to integrate machine learning models into your app.
Use the coremltools Python package to convert models from third-party training libraries such as TensorFlow and PyTorch to the Core ML format. You can then use Core ML to integrate the models into your app.
Core ML provides a unified representation for all models. Your app uses Core ML APIs and user data to make predictions, and to fine-tune models, all on the user’s device. Running a model strictly on the user’s device removes any need for a network connection, which helps keep the user’s data private and your app responsive.
Core ML optimizes on-device performance by leveraging the CPU, GPU, and Neural Engine while minimizing its memory footprint and power consumption.


Additional resources
- The Machine Learning page provides educational material, tutorials, guides, and documentation for Apple developers.
- The WWDC session videos are a great place to start if you are new to machine learning technology and Core ML.
- The Core ML documentation walks you through the first steps in developing an app with a machine learning model.
- Try out coremltools in your browser with Binder:
What is coremltools?
The coremltools Python package is the primary way to convert third-party models to the Core ML format.
With coremltools, you can do the following:
- Convert trained models from libraries and frameworks such as TensorFlow and PyTorch to the Core ML format.
- Read, write, and optimize Core ML models.
- Verify conversion/creation in macOS by making predictions using Core ML.
Supported libraries and frameworks
You can convert trained models from the following libraries and frameworks to Core ML format:
Model Family | Supported Packages |
---|---|
Neural Networks | TensorFlow 1 (1.14.0+) |
Tree Ensembles | |
Generalized Linear Models | |
Support Vector Machines | |
Pipelines (pre- and post-processing) |
Updated 10 days ago
What's Next
Installation |
Quickstart |