Ce site est un site officiel de l’ODERSA. Voici comment le savoir

Le domaine officiel

L’adresse de ce site se termine par odersa.org. Chaque service de l’association vit sur un sous-domaine de odersa.org et nulle part ailleurs. Si l’adresse dans la barre de votre navigateur ne finit pas par odersa.org, ce site n’est pas le nôtre.

Gratuit, et sans compte

Tout est ouvert tout de suite. Aucune inscription, aucun compte, aucun mot de passe, aucun abonnement, aucune publicité. Rien n’est réservé à qui paie, puisque rien ne se paie.

Aucune donnée collectée

Ce site ne vous suit pas : ni mouchard, ni mesure d’audience, ni cookie de traçage. Vous n’avez pas à nous croire : ouvrez les outils de développement de votre navigateur, onglet Réseau, et rechargez la page. Vous verrez la liste complète de ce que le site demande. Tout vient de odersa.org, rien ne part ailleurs.

Contenus libres

Les contenus sont publiés sous licence CC BY 4.0. Vous pouvez les copier, les traduire, les imprimer et les redistribuer, pour vos cours comme pour vos proches, à la seule condition de citer l’ODERSA.

Le prix d’une langue

Une même phrase peut produire jusqu’à 15 fois plus de jetons selon la langue dans laquelle elle est écrite. Ce n’est pas un détail de style : c’est un choix d’ingénierie, aux conséquences mesurables.

Poser la même question à un modèle de langage, dans deux langues différentes, ne coûte pas le même prix à calculer. Ce n’est pas une question de longueur des mots ou de politesse : c’est un écart mesuré, documenté, et il vient d’un choix d’ingénierie pris bien avant que quiconque pose une question.

Ce qu’un texte devient avant d’entrer dans le modèle

Un modèle de langage ne lit pas des mots. Il lit des jetons (tokens) : des fragments de texte, plus courts qu’un mot ou parfois plus longs, découpés par un programme appelé tokeniseur avant que le texte n’entre dans le calcul. Le détail de ce découpage tient à un vocabulaire fixe, appris une fois pour toutes sur un très grand corpus de textes. Chaque mot connaît un nombre de jetons qui lui est propre, et ce nombre est ce que le modèle facture, en temps de calcul comme en place dans sa mémoire de travail.

Un même contenu, des additions très différentes

Une étude de 2023 a mesuré cet écart sur un ensemble de tokeniseurs réellement utilisés par les modèles de langage. Son constat : un même contenu, traduit dans des langues différentes, peut produire jusqu’à 15 fois plus de jetons dans la langue la plus défavorisée que dans la plus favorisée. Même les tokeniseurs qui découpent au niveau du caractère ou de l’octet, censés éviter ce problème, gardent un écart mesuré à plus de 4 fois selon les paires de langues.

15×

l’écart de jetons mesuré pour un même contenu, entre la langue la plus favorisée et la moins favorisée, dans les cas les plus défavorables (Petrov et al., 2023).

Plus de jetons pour dire la même chose n’est pas un détail esthétique. C’est plus de calcul à chaque réponse, donc plus lent à générer et plus coûteux à faire tourner pour un service facturé au jeton. C’est aussi une fenêtre de contexte, la mémoire de travail limitée d’un modèle, qui se remplit plus vite : pour un même nombre de jetons autorisés, un texte dans une langue défavorisée tient sur moins de contenu réellement utile.

Pourquoi ce choix n’est pas neutre

La méthode de découpage la plus répandue s’appelle le BPE, byte pair encoding. Elle n’a pas été inventée pour le langage. Philip Gage la décrit en 1994 comme une méthode générale de compression de fichiers informatiques : elle repère la paire d’octets la plus fréquente dans des données, la remplace par un octet inutilisé, et répète l’opération jusqu’à épuiser le gain. Rien à voir, à l’origine, avec une langue humaine.

En 2016, Rico Sennrich, Barry Haddow et Alexandra Birch reprennent l’idée pour un problème précis de traduction automatique : que faire d’un mot rare, absent du vocabulaire appris par un modèle ? Leur réponse découpe le mot en fragments plus courants, déjà connus du modèle. La méthode fonctionne bien, et elle est reprise depuis par la quasi-totalité des grands modèles de langage.

Un vocabulaire de sous-mots s’apprend sur un corpus, une fois, avant l’entraînement du modèle lui-même. Un corpus majoritairement anglophone apprend un vocabulaire optimisé pour l’anglais : les fragments les plus courants dans cette langue deviennent des jetons uniques, courts, peu nombreux. Un mot d’une langue moins représentée dans ce corpus se retrouve découpé en davantage de fragments, simplement parce que ses propres répétitions fréquentes n’ont pas eu la même chance d’être vues pendant l’apprentissage du vocabulaire. Ce n’est pas une propriété du langage. C’est la trace d’un corpus.

Ce que cela change, concrètement

Un service facturé au jeton coûte, pour un contenu équivalent, plus cher à qui écrit dans une langue défavorisée par le tokeniseur. La réponse met aussi plus de temps à s’afficher, puisqu’un modèle produit ses jetons les uns après les autres, à une vitesse à peu près constante : plus de jetons à produire, plus d’attente. Et la fenêtre de contexte, ce nombre fixe de jetons qu’un modèle peut lire ou écrire d’un coup, contient moins de texte utile : un document, un historique de conversation, une consigne longue y tiennent moins bien.

Aucun de ces effets ne vient d’une langue plus complexe qu’une autre. Ils viennent d’un vocabulaire appris une fois, sur un corpus donné, jamais recalculé en fonction de qui s’en sert ensuite. Les auteurs de l’étude de 2023 proposent une piste : concevoir, dès le départ, des tokeniseurs qui ne favorisent pas structurellement une langue plus qu’une autre.

Sources

Cet article est publié sous licence CC BY 4.0 : copiez-le, traduisez-le, republiez-le en citant l’ODERSA.

Retour au blog