IA embarquée · 8 min de lecture

Comment un modèle de langage tient sur un téléphone

Les applications d'IA locale réclament une quantité de stockage surprenante, et ce n'est pas du superflu. Comprendre où passent ces gigaoctets explique aussi pourquoi le modèle est rapide sur un téléphone récent et poussif sur un ancien — et ce que le nom de fichier Q3_K_S vous dit vraiment.

Un modèle est un gros tas de nombres

Un modèle de langage est un ensemble de paramètres appris — des poids. Chacun est un nombre, et il y en a des milliards. « 2B » dans le nom d'un modèle signifie environ deux milliards de paramètres.

Stocké en pleine précision, chaque poids occupe 4 octets. Deux milliards de poids à 4 octets font environ 8 Go, pour l'un des plus petits modèles. Voilà le problème en une phrase : le fichier est volumineux parce que les nombres sont nombreux et que chacun est stocké avec précision.

La quantification : moins de bits par nombre

La quantification stocke chaque poids sur moins de bits. Au lieu de 32 bits par poids, on en utilise 8, ou 4, ou 3 — avec des facteurs d'échelle par bloc de poids, pour que l'approximation reste proche de l'original.

La réduction de taille est à peu près linéaire :

C'est de la compression avec perte, comme un JPEG. Poussez-la assez loin et les artefacts apparaissent — dans un modèle de langage, ils prennent la forme de réponses plus vagues, de répétitions, ou d'un écart par rapport à la question.

La quantification ne rend pas un modèle bête de façon uniforme. Elle le rend moins précis, et l'imprécision se voit d'abord sur les entrées les plus difficiles.

Lire le nom du fichier

Un nom comme Q4_K_M ou Q3_K_S est une recette, pas un numéro de version :

Ainsi, Q3_K_S est un petit k-quant 3 bits : compressé agressivement, choisi quand tenir sur l'appareil compte plus que les derniers pourcents de qualité.

GGUF : le conteneur

GGUF est le format de fichier qui contient les poids quantifiés et les métadonnées dont un moteur d'exécution a besoin — tokeniseur, architecture, gabarit de prompt. Un seul fichier, sans dossier de configuration à côté.

C'est important sur téléphone, parce que GGUF est conçu pour être projeté en mémoire. Plutôt que de charger 1,7 Go en RAM, le moteur projette le fichier dans son espace d'adressage et le système d'exploitation charge à la demande les parties réellement utilisées. C'est pourquoi un modèle plus gros que la RAM libre d'un téléphone peut quand même tourner, et pourquoi la première réponse après l'ouverture d'une application est plus lente que la suivante : les pages sont encore en train d'arriver.

Pourquoi le téléphone chauffe

Générer un mot — un token — signifie faire passer l'entrée par ces milliards de paramètres. Puis recommencer pour le token suivant. Une réponse de cent mots, c'est cent passages.

C'est du calcul soutenu sur le processeur ou l'accélérateur neuronal, exactement la charge que les téléphones supportent le moins bien thermiquement. Les appareils se brident quand ils chauffent, et une longue génération ininterrompue ralentit à mesure. Les bonnes applications locales étalent leur travail — en espaçant les tâches pour laisser la puce refroidir — plutôt que de tout enchaîner.

Pourquoi les vieux téléphones peinent

Trois contraintes, toutes incontournables :

C'est pourquoi les applications d'IA locale annoncent un appareil minimum plutôt que d'essayer de tout prendre en charge. En dessous d'un certain seuil, l'expérience n'est pas dégradée : elle est inutilisable.

Le compromis que vous acceptez

Un modèle quantifié à la taille d'un téléphone n'égalera pas un grand modèle dans le cloud sur du raisonnement difficile. Pour une tâche bornée — que veut dire ce mot dans cette phrase, traduis cette expression — il est largement suffisant, et il apporte trois propriétés qu'un modèle dans le cloud ne peut pas offrir : il fonctionne sans connexion, il ne coûte rien à l'usage, et le texte ne quitte jamais l'appareil.

C'est tout le marché de l'IA embarquée. Vous renoncez au plus grand modèle possible, et vous gagnez la confidentialité, le hors-ligne et l'absence de compteur.

Comment ClickBook procède

ClickBook embarque un modèle GGUF quantifié et l'exécute avec llama.cpp sur votre appareil. Sur iOS, il est inclus dans l'application : il n'y a rien à télécharger. En savoir plus sur les liseuses à IA locale, ou voir comment fonctionne ClickBook.