Glossaire / Comment il vous entend

Core ML

Aussi : CoreML, Apple Core ML

Mis à jour le

Demander à l’IA ChatGPT Claude Perplexity Grok

Définition

Core ML est le framework d’Apple pour exécuter des modèles d’apprentissage automatique dans une app, sur l’appareil. Il utilise le CPU, le GPU et le Neural Engine, et n’a besoin d’aucune connexion réseau pour faire une prédiction.

Core ML fait partie des systèmes d’Apple depuis 2017, avec macOS 10.13 et iOS 11. Une app lui confie un modèle et une entrée, comme de l’audio, une image ou du texte, et il renvoie la réponse du modèle. C’est Core ML qui décide où se font les calculs.

Vous n’installez pas Core ML et vous ne l’ouvrez pas. Il fait partie de macOS. Vous rencontrez ce nom dans la description d’une app, dans le nom de fichier d’un modèle, ou quand un téléchargement indique qu’il contient des poids Core ML.

Ce que ça fait

La description d’Apple : Core ML fournit une représentation unifiée pour tous les modèles, et une app s’en sert pour faire des prédictions, et pour entraîner ou affiner des modèles, le tout sur l’appareil de la personne.

Côté performances, Apple indique que Core ML optimise les performances sur l’appareil en tirant parti du CPU, du GPU et du Neural Engine, tout en réduisant son empreinte mémoire et sa consommation d’énergie. Le Neural Engine est la partie des puces Apple conçue pour ce type de calcul, et Core ML est le moyen habituel pour une app d’y accéder.

Pourquoi l’exécution sur l’appareil compte

Apple avance elle-même l’argument : exécuter un modèle strictement sur l’appareil de la personne supprime tout besoin de connexion réseau, ce qui aide à garder ses données privées et l’app réactive.

Pour la parole, cela veut dire que l’audio n’a pas besoin de quitter le Mac pour devenir du texte. Qu’une app donnée l’y garde dépend de l’app, mais le framework le rend possible.

Les types de fichiers

Les modèles Core ML existent sous trois formes, et l’extension indique laquelle.

  • `.mlmodel` : le fichier de définition du modèle d’origine.
  • `.mlpackage` : le format de paquet plus récent, qui sépare les poids du programme. Il est pris en charge à partir de Xcode 13.
  • `.mlmodelc` : un modèle compilé, celui que charge une app. Un dossier avec cette extension dans une app ou ses téléchargements est un modèle Core ML prêt à tourner.

D’où viennent les modèles

La plupart des modèles sont entraînés avec d’autres outils, puis convertis. Apple publie Core ML Tools pour cela, afin de convertir au format Core ML des modèles issus de bibliothèques d’entraînement comme PyTorch et TensorFlow.

Les mêmes outils peuvent compresser un modèle au passage, par quantification ou par palettisation, ce qui le rend plus petit et souvent plus rapide sur le Neural Engine.

Core ML et MLX

Apple décrit les deux différemment. Core ML sert à intégrer des modèles dans des apps. MLX est un framework open source de calcul sur tableaux pour expérimenter, entraîner et affiner des modèles génératifs sur Apple silicon. Selon la documentation d’Apple, MLX tourne sur le CPU et le GPU, tandis que Core ML peut aussi utiliser le Neural Engine.

Les pages d’Apple orientent aussi désormais les développeurs qui travaillent avec les architectures de modèles les plus récentes vers un framework distinct, Core AI. Core ML reste le moyen établi de longue date pour exécuter un modèle dans une app.

Les questions qu’on se pose.

À quoi sert Core ML ?

À exécuter des modèles d’apprentissage automatique dans des apps sur les appareils Apple : reconnaître la parole, classer des images, lire du texte et autres tâches similaires, sans envoyer les données à un serveur.

Core ML a-t-il besoin d’internet ?

Non. Apple indique qu’exécuter un modèle strictement sur l’appareil supprime tout besoin de connexion réseau.

Core ML utilise-t-il le Neural Engine ?

Oui. Apple indique que Core ML tire parti du CPU, du GPU et du Neural Engine.

Qu’est-ce qu’un fichier .mlmodelc ?

Un modèle Core ML compilé, la forme qu’une app charge et exécute.

Quelle est la différence entre Core ML et MLX ?

Apple décrit Core ML comme le moyen d’intégrer des modèles dans des apps, et MLX comme un framework de calcul sur tableaux pour expérimenter et affiner des modèles génératifs sur Apple silicon. Core ML peut utiliser le Neural Engine ; MLX tourne sur le CPU et le GPU.

Core ML existe-t-il sur les Mac Intel ?

Oui. Core ML fait partie de macOS depuis la version 10.13. Le Neural Engine n’existe que sur Apple silicon : sur un Mac Intel, Core ML utilise le CPU et le GPU.

Termes associés

Votre voix a toujours été plus rapide.

7 jours gratuits, puis $19 USD une seule fois. Sans compte, sans abonnement, rien n’est envoyé en ligne.

macOS 14 ou ultérieur · Apple silicon