Débutant 10 minMobile

Faire tourner un LLM en local sur Android

Un LLM local sur Android, c'est un assistant qui répond hors ligne, sans cloud, directement sur le processeur de votre téléphone. Les modèles 1 à 4 milliards de paramètres quantifiés tiennent aujourd'hui dans la RAM d'un smartphone milieu de gamme et répondent à une vitesse utilisable. Ce guide couvre trois approches — PocketPal et MLC Chat pour démarrer sans ligne de commande, llama.cpp via Termux pour aller plus loin — avec les vraies contraintes de vitesse, de chauffe et d'autonomie.

Par Léa B.·Màj 2026-07-19·Testé sur Windows, macOS, Linux

#Pourquoi faire tourner un LLM local sur Android

Faire tourner un LLM local sur Android répond à trois besoins concrets : la confidentialité totale (vos prompts ne quittent jamais l'appareil), le fonctionnement hors ligne (avion, zone blanche, roaming coûteux), et la gratuité d'usage (pas d'abonnement ni de facturation au token). Le compromis est la taille : un téléphone fait tourner des modèles bien plus petits qu'un PC, donc moins capables. Mais pour du résumé, de la reformulation, de la traduction ou une discussion simple, un modèle 3B suffit largement.

Confidentialité
Le modèle s'exécute sur le SoC du téléphone. Aucune donnée n'est envoyée sur Internet, ce qui est vérifiable en coupant le Wi-Fi et les données mobiles.
Hors ligne
Une fois le modèle téléchargé, tout fonctionne en mode avion. Pratique en déplacement ou dans les zones sans réseau.
Gratuit à l'usage
Pas de compte, pas de quota, pas de coût au token. Vous ne payez que la batterie consommée.
Limite à connaître
Un smartphone plafonne autour de 4B paramètres en pratique. Pour du raisonnement complexe ou du code, un LLM local sur PC reste bien supérieur.
i
Local sur téléphone ≠ local sur PC
Ne comparez pas un 3B sur mobile à GPT-4. Comparez-le à ce qu'un assistant hors ligne peut faire : reformuler un message, résumer un texte collé, répondre à une question de culture générale. Dans ce cadre, c'est bluffant. Au-delà, ça montre vite ses limites.

#Ce qu'il faut comme téléphone

Le facteur déterminant est la RAM, exactement comme sur PC où c'est la VRAM qui plafonne la taille du modèle. Un modèle quantifié Q4 de 3B occupe environ 2 Go, auxquels s'ajoute la mémoire du système et de l'application. En pratique, il faut de la marge car Android ferme agressivement les applications qui consomment trop.

RAM 6 Go
Le minimum viable. Modèles 1B à 3B en Q4. Fermez les autres applications avant de lancer une inférence.
RAM 8 Go
Confortable pour du 3B, possible en 4B. Le sweet spot du milieu de gamme récent.
RAM 12 Go et plus
Flagships récents. Permet du 4B sans stress, voire du 7B quantifié agressivement mais lentement.
Stockage
Prévoyez 2 à 5 Go libres par modèle téléchargé. Les fichiers GGUF sont volumineux.
SoC
Un Snapdragon 8-series ou équivalent récent accélère nettement. Les puces d'entrée de gamme fonctionnent mais restent lentes.
Vérifiez votre RAM réelle
La RAM annoncée n'est pas toute disponible : le système en réserve une partie. Sur un téléphone 8 Go, comptez 5 à 6 Go réellement allouables à une application. C'est la marge utile pour charger un modèle.

#PocketPal : un LLM local en 5 minutes

PocketPal AI est l'application la plus simple pour démarrer. C'est un projet open source disponible sur le Play Store qui embarque llama.cpp et un catalogue de modèles téléchargeables directement depuis Hugging Face, sans aucune ligne de commande.

  1. 01
    Installer l'application
    Cherchez « PocketPal AI » sur le Google Play Store et installez-la. L'app est gratuite et open source (code disponible sur GitHub).
  2. 02
    Ouvrir le catalogue de modèles
    Dans l'onglet Models, parcourez la liste des modèles recommandés. PocketPal indique la taille du fichier et signale ceux adaptés à votre RAM.
  3. 03
    Télécharger un modèle 1-3B
    Choisissez un petit modèle pour commencer, par exemple un Gemma 3 1B ou un Llama 3.2 3B en quantization Q4. Le téléchargement se fait sur le réseau, une seule fois.
  4. 04
    Charger et discuter
    Appuyez sur Load à côté du modèle téléchargé, attendez le chargement en mémoire, puis ouvrez le chat. La première réponse démarre après quelques secondes de préchauffage.

PocketPal permet aussi de régler les paramètres d'inférence (température, taille de contexte, nombre de threads CPU) et d'importer vos propres fichiers GGUF si vous voulez un modèle qui n'est pas au catalogue. Pour une première expérience de LLM local sur Android, c'est le chemin le plus court.

Coupez le réseau pour tester
Une fois le modèle chargé, activez le mode avion et lancez une conversation. Ça marche : la preuve concrète que l'inférence est 100 % locale, sans aucun appel réseau.

#MLC Chat et l'accélération GPU

MLC Chat est l'application de démonstration du projet MLC LLM, qui compile les modèles pour tirer parti du GPU mobile via l'API Vulkan/OpenCL plutôt que de tout exécuter sur le CPU. Sur un SoC récent, cela peut améliorer la vitesse et réduire un peu la consommation par rapport à une exécution CPU pure.

  1. 01
    Récupérer l'APK
    MLC Chat n'est pas toujours sur le Play Store. Téléchargez l'APK officiel depuis le site du projet MLC LLM (llm.mlc.ai) et autorisez l'installation depuis une source externe.
  2. 02
    Télécharger un modèle compilé
    L'app propose des modèles déjà convertis au format MLC (Phi, Gemma, Llama, Qwen en petites tailles). Choisissez-en un adapté à votre RAM.
  3. 03
    Lancer le chat
    Sélectionnez le modèle, attendez l'initialisation, puis discutez. MLC affiche la vitesse en tokens/seconde en bas de l'écran.
i
GPU mobile : le gain n'est pas garanti
L'accélération GPU dépend fortement du SoC et des pilotes. Sur certains téléphones MLC est plus rapide que llama.cpp en CPU, sur d'autres c'est l'inverse à cause de la chauffe et du throttling. Testez les deux sur votre appareil avant de conclure.

#llama.cpp via Termux pour aller plus loin

Pour un contrôle total — choisir précisément le modèle, la quantization, exposer un serveur local — le chemin avancé passe par Termux, un émulateur de terminal Android qui donne accès à un environnement Linux sans root. On y compile llama.cpp et on lance l'inférence en ligne de commande, comme sur un PC Linux.

!
Installez Termux depuis F-Droid, pas le Play Store
La version du Play Store est obsolète et abandonnée. Installez Termux depuis F-Droid ou GitHub pour avoir les paquets à jour. C'est la source d'erreurs la plus fréquente chez les débutants.
  1. 01
    Installer et préparer Termux
    Installez Termux depuis F-Droid, ouvrez-le, puis mettez à jour les paquets de base.
  2. 02
    Installer les outils de build
    Récupérez le compilateur, git et cmake nécessaires pour compiler llama.cpp.
  3. 03
    Compiler llama.cpp
    Clonez le dépôt officiel et compilez-le. Sur mobile, le build CPU (ARM NEON) est le plus fiable.
  4. 04
    Télécharger un modèle GGUF
    Récupérez un fichier .gguf de petite taille (1-3B en Q4) depuis Hugging Face avec curl ou wget.
  5. 05
    Lancer l'inférence
    Utilisez llama-cli pour discuter, ou llama-server pour exposer une API OpenAI-compatible sur localhost accessible depuis un navigateur.
Termux — préparation
# Mettre à jour les paquets
pkg update && pkg upgrade -y

# Outils de compilation
pkg install -y git cmake clang wget
Termux — compiler llama.cpp
git clone https://github.com/ggml-org/llama.cpp
cd llama.cpp
cmake -B build
cmake --build build --config Release -j$(nproc)
Termux — télécharger un modèle et discuter
# Exemple : un petit modèle Q4 depuis Hugging Face
wget -O gemma-3-1b-q4.gguf "<URL_DU_FICHIER_GGUF>"

# Discuter en ligne de commande
./build/bin/llama-cli -m gemma-3-1b-q4.gguf -p "Résume ce texte : ..." -n 256
Termux — serveur local OpenAI-compatible
# Expose une API sur http://localhost:8080
./build/bin/llama-server -m gemma-3-1b-q4.gguf --port 8080

Le mode serveur est intéressant : il expose un endpoint OpenAI-compatible sur localhost, que vous pouvez interroger depuis le navigateur du téléphone ou une autre app. C'est la même logique que le serveur d'Ollama sur PC (qui écoute par défaut sur le port 11434), transposée dans votre poche.

#Quels modèles 1-4B tournent vraiment

Tout se joue dans la tranche 1 à 4 milliards de paramètres, en quantization Q4_K_M (le meilleur compromis qualité/taille, comme sur PC). Au-delà de 4B, un téléphone rame ou manque de RAM. Voici les familles qui donnent les meilleurs résultats en français.

Gemma 3 1B / 4B
Les modèles Google sont parmi les plus solides à petite taille, avec un bon multilingue. Le 1B pour la vitesse, le 4B pour la qualité si la RAM suit.
Llama 3.2 1B / 3B
Conçus par Meta spécifiquement pour l'edge et le mobile. Le 3B est un excellent généraliste hors ligne.
Qwen3 1.7B / 4B
Très bons en multilingue et en raisonnement pour leur taille. Le 4B est capable en Q4 si votre téléphone a 8 Go+.
Phi-4-Mini
La déclinaison compacte de Microsoft, orientée qualité de raisonnement à petite empreinte.
Empreinte mémoire en Q4
Repère : un 1B tient dans ~1 Go, un 3B dans ~2 Go, un 4B dans ~3 Go en Q4. Ajoutez la mémoire du système et de l'app : c'est pour cela qu'un téléphone 8 Go vise du 3-4B et pas au-delà.

#Vitesse, chauffe et batterie : ce qu'il faut savoir

L'inférence LLM sollicite le CPU (ou le GPU) à fond, ce qui a trois conséquences très concrètes sur un téléphone : la vitesse reste modeste, l'appareil chauffe, et la batterie descend vite pendant la génération. Rien de bloquant, mais il faut avoir les ordres de grandeur en tête.

Vitesse
Comptez grossièrement 5 à 15 tokens/seconde pour un 3B Q4 sur un SoC milieu-haut de gamme. C'est lisible en temps réel, mais loin d'un GPU de PC. Un 1B est nettement plus rapide.
Chauffe et throttling
Après une longue génération, le SoC monte en température et se bride (throttling), ce qui ralentit les réponses suivantes. Laissez respirer entre deux longues requêtes.
Batterie
Une session soutenue peut faire chuter la batterie de plusieurs pourcents en quelques minutes. Pour un usage ponctuel c'est indolore ; pour un usage intensif, branchez le chargeur.
Contexte
Plus la fenêtre de contexte est grande, plus la mémoire et le temps de traitement augmentent. Sur mobile, gardez un contexte raisonnable (2k-4k tokens) pour rester fluide.
!
Ne chargez pas en charge rapide
Faire tourner un LLM tout en rechargeant en charge rapide cumule deux sources de chaleur. Sur la durée, la chauffe répétée use la batterie. Pour de l'usage intensif, préférez une charge lente ou faites des pauses.

#Dépannage

L'app se ferme au chargement du modèle
Manque de RAM. Fermez toutes les autres applications, choisissez un modèle plus petit (1B au lieu de 3B) ou une quantization plus légère.
Réponses très lentes
Réduisez la taille du contexte, baissez le nombre de tokens générés, ou passez à un modèle plus petit. Vérifiez aussi que le téléphone ne throttle pas à cause de la chaleur.
Termux : commande introuvable après compilation
Le build a échoué silencieusement. Relancez la compilation et lisez les erreurs. Vérifiez que git, cmake et clang sont bien installés.
Termux abandonné / paquets obsolètes
Vous avez installé la version Play Store. Désinstallez-la et réinstallez Termux depuis F-Droid ou GitHub.
Réponses incohérentes
Normal pour un très petit modèle sur une tâche complexe. Simplifiez la demande, ou acceptez qu'un 1-3B ait des limites de raisonnement.

#Pour aller plus loin

Une fois à l'aise sur mobile, vous voudrez probablement une machine plus capable à la maison pour les tâches lourdes. Ces guides du site prolongent celui-ci :

Faire tourner un LLM en local sans GPU (CPU only)
La même logique que sur mobile mais sur PC : modèles recommandés par RAM et astuces pour accélérer en CPU pur.
Choisir sa quantification (Q4, Q5, Q8, FP16)
Comprendre pourquoi le Q4_K_M est le compromis recommandé, sur téléphone comme sur PC.
Installer Ollama
Pour un vrai serveur LLM à la maison, interrogeable depuis votre téléphone sur le réseau local.
Ce guide vous a aidé ?

Un retour, une erreur, une précision ? Faites-nous signe, ça améliore le guide pour tout le monde.