Exécuter un LLM local (Gemma 3) sur iOS avec MLC-LLM
(blog.devstory.co.kr)Voici un billet qui récapitule la méthode pour exécuter localement le modèle Gemma 3 sur un appareil iOS via MLC-LLM, ainsi que des indicateurs de performances mesurés en conditions réelles.
Résumé
- Utilisation de MLC-LLM : mise en place d’un environnement d’inférence fluide sur mobile, avec une latence quasiment nulle grâce à l’accélération par l’API Metal
- Processus de build de Gemma 3 1B : guide complet du workflow, du téléchargement du modèle depuis Hugging Face à la quantification q4f16_1, en passant par l’application du template de dialogue (gemma3_instruction) et la compilation des kernels Metal
- Indicateurs de performances et de ressources :
- Gemma 2 2B : environ 2,4 Go de VRAM utilisés
- Gemma 3 1B : environ 1,14 Go de VRAM utilisés
- Conseils d’exécution : inclut la méthode pour packager un modèle personnalisé dans un projet Xcode via la configuration
mlc-package-config.json
Évaluation
- Avec MLC-LLM, il est possible de porter directement des LLM performants sur des appareils iOS tout en bénéficiant à la fois de la protection de la vie privée et d’une exécution hors ligne
- Le modèle semble avoir un peu de mal à générer des réponses structurées, comme au format JSON
- Pour des fonctionnalités nécessitant des system prompts complexes ou des tâches d’extraction de données, un travail complémentaire de prompt engineering ou de fine-tuning supplémentaire semble nécessaire
- Si l’on y ajoute à l’avenir une connexion à des pipelines dédiés au modèle et un travail d’optimisation du projet, il devrait être possible de construire des services d’IA on-device encore plus pratiques
Aucun commentaire pour le moment.