« Il exécute un modèle de langage sur votre ordinateur » est une phrase qui fait imaginer un ventilateur qui s’emballe et un ordinateur portable qui chauffe alors qu’il ne fait rien. Cette image est compréhensible, car elle décrit ce qui se passe quand on exécute mal un modèle de chat.

Les suggestions de saisie constituent une charge de travail différente. Voici ce qu’elles coûtent réellement, afin que vous puissiez les adapter à votre machine.

Quatre coûts, et un seul est constant

Disque. Le fichier du modèle, une seule fois. De quelques centaines de mégaoctets à quelques gigaoctets, à télécharger.

Mémoire. Les poids doivent rester en mémoire tant que le modèle est chargé : environ la taille du fichier, plus une petite marge de fonctionnement. C’est le coût constant, et celui qui détermine si votre machine peut accueillir une taille donnée. Sur un ordinateur portable de 16 Go, un modèle occupant un gigaoctet en mémoire est tout à fait raisonnable. Sur un ordinateur portable de 8 Go avec un navigateur ouvert, trois gigaoctets ne le sont pas.

Calcul. Uniquement pendant la génération d’une suggestion. Pour compléter une phrase, il s’agit d’une brève poussée de quelques centaines de millisecondes, quelques fois par minute, les pauses entre vos propres frappes occupant l’essentiel du temps. Comparez cela à un assistant de chat qui génère six cents mots et fait tourner le processeur à plein régime pendant plusieurs secondes.

Batterie. Elle suit l’activité de calcul. Les courtes périodes d’activité coûtent peu ; mais, pour être honnête, une machine qui ne passe jamais en mode basse consommation consomme davantage qu’une autre qui le fait : l’effet n’est donc pas tout à fait nul.

À retenir : la prédiction de saisie est inactive presque tout le temps. La mémoire occupée en permanence représente le véritable coût ; le reste est négligeable, à moins que le modèle ne soit beaucoup trop grand pour la machine.

Pourquoi le fichier est plus petit que prévu

Un modèle annoncé à quelques centaines de mégaoctets ne compte pas quelques centaines de millions de paramètres. Les modèles sont distribués sous forme quantifiée, avec des poids stockés à une précision réduite — généralement quatre ou cinq bits au lieu de seize. Cela réduit d’environ quatre fois la taille et la mémoire nécessaires, pour une baisse de qualité modeste et mesurable.

Pour le raisonnement en texte libre, cette baisse compte. Pour terminer une phrase que vous avez déjà commencée, elle importe peu, car les contraintes viennent de votre propre texte plutôt que de la profondeur du modèle. C’est la raison technique pour laquelle un petit modèle local convient à cette tâche, mais pas à d’autres.

La vraie limite, c’est la latence, pas la qualité

Il y a une échéance stricte. Une suggestion qui arrive après que vous avez tapé les mots vous-même est pire que l’absence de suggestion : elle apparaît au moment même où vous terminez, et vous la lisez pour rien.

Cette échéance limite la taille du modèle, quelle que soit la quantité de mémoire dont vous disposez. Au-delà d’un certain point, un meilleur modèle est un modèle plus lent, et un modèle plus lent reste inutilisé. En pratique, la suggestion doit apparaître pendant que vos doigts se trouvent encore dans l’espace entre deux mots : en quelques centaines de millisecondes, pas en une seconde et demie.

Cela renverse l’intuition habituelle. Ici, un modèle plus grand n’est pas meilleur s’il devient trop lent. La bonne taille est la plus grande qui répond encore pendant la pause sur votre matériel. Ce ne sera pas la même sur un ultrabook de 2019 et sur un ordinateur de bureau doté d’une carte graphique dédiée.

Choisir une taille

Typeahead propose trois tailles, correspondant directement à ces compromis.

Taille Sur le disque Configuration requise indiquée À qui s’adresse ce modèle
Rapide (par défaut) ~600 Mo — Toute machine prise en charge ; le bon choix pour commencer
Équilibré ~1,2 Go 8 Go de mémoire système Machines disposant de marge : meilleures suggestions, tout en restant très rapide
Qualité maximale ~2,5 Go Carte graphique dédiée avec 8 Go de mémoire propre, 16 Go de mémoire système Ordinateurs de bureau et stations de travail dotés d’un véritable GPU

Deux remarques à propos de ce tableau.

Commencez par Rapide, même si votre machine peut supporter davantage. Utilisez-le pendant une semaine. Si les suggestions sont suffisamment précises, un modèle plus grand ne vous apportera rien que vous remarquerez en tapant un message de discussion. Si elles sont nettement à côté, passez à la taille supérieure : vous saurez alors ce que vous échangez contre une latence plus faible.

Le modèle de qualité maximale exige une carte dédiée dotée de ses propres 8 Go de mémoire, et non 8 Go de mémoire système partagée. Les cartes graphiques intégrées des ordinateurs portables ne répondent pas à cette exigence. Forcer l’exécution d’un modèle sur un matériel qui doit le paginer est précisément ce qui provoque l’effet de ventilateur qui s’emballe évoqué au début de cet article.

Les machines vraiment limitées

  • 8 Go de RAM avec un navigateur, Teams et Office ouverts. Vous êtes déjà proche de la limite avant même de charger quoi que ce soit d’autre. Utilisez le plus petit modèle et attendez-vous à le remarquer davantage qu’une personne disposant de 16 Go. Si votre machine utilise déjà le fichier d’échange lors d’une journée normale, un modèle résident aggravera la situation.
  • Anciens processeurs sans AVX2. Les bibliothèques d’inférence s’appuient sur les instructions vectorielles. Un processeur antérieur à 2013 sera plus lent que ne l’indiquent les chiffres publiés, et c’est la limite de latence évoquée plus haut qui posera problème.
  • Ordinateurs portables fins limités par la température. Les périodes d’activité sont assez courtes pour qu’une limitation thermique prolongée soit peu probable avec cette seule charge de travail. Toutefois, une machine qui subit déjà une limitation thermique sous d’autres charges n’a aucune marge.
  • Sur batterie, loin d’une prise électrique. Les suggestions fonctionnent toujours, car elles sont locales et ne nécessitent aucune connexion. Pour un long vol, mieux vaut choisir le modèle le plus petit.

Comment vérifier sur votre propre machine

Les chiffres mesurés sur l’ordinateur portable de quelqu’un d’autre ne vous apprennent pas grand-chose. Deux mesures, dix minutes.

  1. 1. Avant toute installation, ouvrez le Gestionnaire des tâches → Performances et notez la mémoire utilisée dans des conditions de travail normales : vos onglets habituels dans le navigateur, votre messagerie et votre outil de discussion.
  2. 2. Après avoir installé et chargé un modèle, consultez le même chiffre, ainsi que la mémoire propre à l’application dans l’onglet Processus.

Si la différence vous laisse une marge confortable par rapport à la mémoire totale, tout va bien. Si elle vous rapproche de la limite, choisissez une taille inférieure.

La latence est subjective, et c’est une bonne chose : tapez une phrase que vous écririez habituellement et voyez si la suggestion apparaît quand vos doigts font une pause ou si elle arrive après. La meilleure façon de le savoir est de profiter d’une période d’essai — celle de Typeahead dure sept jours et donne accès à toutes les tailles de modèle.

Ce que vous obtenez en échange

  • Rien de ce que vous tapez ne quitte la machine. Ce n’est pas une politique concernant la manière dont un serveur traite votre texte, mais une propriété du lieu où il est traité.
  • L’outil fonctionne sans connexion. En avion, en train ou sur le Wi-Fi d’un hôtel qui ne résout plus les DNS.
  • Pas d’abonnement par utilisateur, pas de compte, car il n’y a aucun serveur à financer.
  • Pas de latence variable. Un modèle local est aussi rapide à 9 h qu’à 17 h, contrairement à un service partagé.

La question de savoir si cela vaut un gigaoctet de mémoire occupée en permanence est légitime, et la réponse varie d’une personne à l’autre. Elle est moins importante qu’il n’y paraît et vous pouvez y répondre en une semaine.

Questions fréquentes

Quelle quantité de RAM nécessite un modèle local pour la saisie ?
Environ la taille du fichier du modèle, plus une marge, tant qu’il est chargé en mémoire. Un modèle de 600 Mo consomme réellement quelques centaines de mégaoctets de mémoire ; un modèle de 2,5 Go, quelques gigaoctets. Avant de décider que c’est beaucoup, comparez cela à la mémoire déjà utilisée par votre navigateur.
Utilise-t-il le GPU ?
Il peut l’utiliser, et le modèle le plus grand nécessite une carte graphique dédiée avec 8 Go de mémoire propre. Les modèles plus petits fonctionnent très bien sur le processeur pour ce type de tâche.
Va-t-il vider ma batterie ?
Seulement en proportion de son utilisation : pour les suggestions de saisie, il s’agit de courtes périodes d’activité, quelques fois par minute. Rien de comparable à un assistant de chat qui génère de longues réponses, et bien moins qu’un appel vidéo.
Un modèle plus grand donne-t-il de meilleures suggestions ?
Un peu, et au-delà d’un certain point, il donne des suggestions plus tardives, ce qui est pire. La bonne taille est la plus grande qui répond encore avant que vos doigts ne passent à autre chose.
Que se passe-t-il lorsque je suis hors ligne ?
Rien ne change. Une fois le modèle téléchargé, les suggestions sont générées sur votre ordinateur. Une connexion n’est nécessaire que pour télécharger un modèle ou vérifier les mises à jour.
Puis-je changer la taille du modèle après l’achat ?
Oui. C’est un paramètre, pas une édition. Télécharger un modèle d’une autre taille et passer à celui-ci est précisément la méthode prévue pour trouver celui qui vous convient.
Un petit modèle va-t-il mal écrire ?
Il n’écrit pas : il termine votre phrase, et le texte qui se trouve devant le curseur impose l’essentiel des contraintes. C’est pourquoi un modèle trop petit pour rédiger un essai convient à cette tâche. Le risque à surveiller, c’est une suggestion fluide qui ne correspond pas à ce que vous vouliez dire — d’où la nécessité d’une pression explicite sur une touche pour l’accepter.