LLMs : quelles sont les possibilites d'utilisation?

Un aperçu de ce que sont les LLM et les différentes utilisations que l'on peut en faire.

LLMs : quelles sont les possibilites d'utilisation?
Photo by charlesdeluvio / Unsplash

ChatGPT, Gemini, Bard, Mistral... Depuis plus de deux ans, de nouveaux LLMs apparaissent quasi quotidiennement. Chaque géant de l'informatique semble vouloir créer son propre LLM. Mais au fait, qu'est-ce qu'un LLM ? Un Large Language Model est un programme informatique capable de "comprendre" du texte et de générer des réponses cohérentes.

Par exemple, si le texte initial est "Quelle est la couleur du cheval blanc d'Henri IV ?", le LLM sera capable de répondre "La couleur du cheval blanc d'Henri IV est blanc."

Voilà la puissance des LLMs ! Nous sommes capables d'avoir un programme informatique qui peut comprendre ce que nous écrivons et qui nous donne des réponses qui ressemblent à celles d'un humain.

Comment fonctionne un LLM ?

Un LLM reçoit du texte en entrée. On opère au préalable une tokenisation afin de rendre le texte plus compréhensible pour le modèle. Le LLM va ensuite calculer des probabilités. Il va déterminer quels sont les mots qui ont le plus de probabilité d'avoir du sens une fois ajoutés à la fin du texte. Prenons un exemple :

Le chat mange la

Il y a beaucoup de mots que l'on peut mettre à la fin de cette phrase. Voici les probabilités que l'on pourrait avoir :

  • "souris" -> 0,99
  • "pâtée" -> 0,82
  • "voiture" -> 0,01

Il est extrêmement probable qu'un être humain complète cette phrase avec le mot "souris". C'est pourquoi un LLM donnerait une forte probabilité au mot "souris". Un chat peut manger de la pâtée, c'est très probable. Par contre, il est peu probable de lire un document contenant la phrase "le chat mange la voiture". Cependant, il existe une faible probabilité que cela soit possible.

Si on change la phrase initiale avec Le chat robot géant mange la, on pourrait avoir des probabilités totalement différentes.

En somme, un LLM est un programme qui va analyser du texte, déterminer quel est le mot qui a le plus de probabilité d'être ajouté à la fin et répéter cette opération indéfiniment.

Comment créer un LLM ?

Premièrement, nous devons entraîner un LLM. Cela consiste à fournir à un algorithme particulier des informations et ce dernier va analyser ces informations et apprendre.

Pour l'entraînement, il faut de la donnée, beaucoup de données. On ne parle pas d'une simple encyclopédie. On parle de larges portions d'Internet collectées par des robots et stockées dans des data centers. Ces robots vont, par exemple, sauvegarder le contenu des livres, des articles de journaux, des encyclopédies comme Wikipédia, des articles de blogs, du code source, etc.

Ensuite, il faut nettoyer les données. Le nettoyage consiste à trier nos données et à garder uniquement celles qui nous intéressent. Par exemple, si je n'ai pas besoin que mon LLM soit capable de comprendre le mandarin, je peux alors mettre de côté tous les documents en mandarin. On peut supprimer des éléments considérés comme étant de mauvaise qualité ou toxiques.

Puis, on "tokenise" les données. Cette opération utilise un algorithme de découpage de texte qui permet au modèle d'entraînement de mieux comprendre la donnée. Chaque entreprise a son propre algorithme qui est plus ou moins efficace. Certains algorithmes seront plus efficaces selon la langue du texte.

Voici un exemple de tokenisation obtenu avec l'algorithme de GPT3.5 :

Le chat noir est beau. Ses yeux amandes sont jaunes.

tokens.png

Les 10 mots sont découpés en 15 tokens.

Maintenant, on peut enfin entraîner notre modèle. Les LLMs utilisent des réseaux de neurones profonds (deep learning). Ce sont des algorithmes très particuliers qui sont capables d'analyser des données et d'apprendre de ces données. Une utilisation connue de ces réseaux de neurones est la reconnaissance d'images. Lorsqu'ils sont entraînés avec suffisamment d'images, le programme est capable de reconnaître un chien d'un chat.

Durant l'entraînement, on peut personnaliser certains paramètres. Par exemple, on pourrait donner plus d'importance à Wikipédia qu'à un petit blog. L'idée est de mettre en avant la qualité de l'information. Plus l'information est de qualité, plus elle devra avoir de poids dans l'entraînement.

On va également donner des exercices durant l'entraînement. Le réseau de neurones devra, par exemple, remplir des textes à trous avec des mots acceptables pour le contexte, ou bien encore deviner le prochain mot dans une phrase.

Ceci est la fin de l'entraînement initial. On peut ensuite spécialiser le réseau de neurones. Peut-être que nous voulons un LLM qui soit excellent en histoire du continent européen. Ainsi, on passera plus de temps à entraîner le LLM sur des données associées au domaine auquel il doit devenir expert.

Un entraînement de réseau de neurones est long, coûteux et énergivore. Les entraînements peuvent s'étaler sur des mois et coûter des dizaines de millions de dollars.

Quelles sont les utilisations d'un LLM ?

C'est une bonne question à se poser. Que peut-on faire avec un LLM ? Les médias rapportent que beaucoup de métiers pourraient être remplacés par un LLM dans les années à venir. Voyons dans quels scénarios un LLM se révèle intéressant.

Synthèse de texte

Disons que vous aimez lire les journaux mais que vous avez un article très long. Cet article nécessite une quinzaine de minutes de lecture mais vous n'avez pas le temps de le lire. Ou bien vous venez d'avoir une réunion avec votre équipe et vous devez résumer vos notes. Vous pouvez demander au LLM de vous fournir un résumé du texte en quelques mots.

Voici un exemple :

Texte original :

Maître Corbeau, sur un arbre perché,
Tenait en son bec un fromage.
Maître Renard, par l'odeur alléché,
Lui tint à peu près ce langage :
Et bonjour, Monsieur du Corbeau.
Que vous êtes joli ! que vous me semblez beau !
Sans mentir, si votre ramage
Se rapporte à votre plumage,
Vous êtes le Phénix des hôtes de ces bois.
À ces mots, le Corbeau ne se sent pas de joie ;
Et pour montrer sa belle voix,
Il ouvre un large bec, laisse tomber sa proie.
Le Renard s'en saisit, et dit : Mon bon Monsieur,
Apprenez que tout flatteur
Vit aux dépens de celui qui l'écoute.
Cette leçon vaut bien un fromage, sans doute.
Le Corbeau honteux et confus
Jura, mais un peu tard, qu'on ne l'y prendrait plus.

Résumé généré par le LLM:

Un corbeau, flatté par un renard, laisse tomber son fromage. Le renard s'en empare et lui apprend que les flatteurs vivent aux dépens de ceux qui les écoutent. Le corbeau regrette sa naïveté.

Service client / support technique

Voici une des utilisations les plus courantes ! Vous pouvez entraîner un LLM afin qu'il soit spécialisé sur les problèmes courants que rencontrent vos clients.

Au lieu d'appeler un centre d'appels, d'avoir des délais d'attente importants et d'être disponible uniquement pendant quelques horaires, les clients peuvent avoir un service joignable à tout moment et sans aucune attente. Beaucoup de sites internet ont mis en place des chatbots avec lesquels vous pouvez converser et expliquer vos problèmes.

Enseignement

Un professeur d'anglais ? De français ? D'histoire ? Le LLM se transforme en un professeur efficace et complet qui sait expliquer clairement différents sujets.

Assistant pour développeur logiciel

Une utilisation extrêmement mise en avant, les assistants pour les développeurs logiciels. Le LLM est plus ou moins capable de comprendre du code et de le corriger, de l'expliquer ou de le documenter. Il est aussi capable de générer du code qui suit nos indications et dans le langage de programmation désiré.

Cependant, un problème persiste. Le LLM ayant encore une fenêtre de contexte courte, environ 12 000 mots, il n'est pas capable de se "souvenir" d'une longue conversation. De plus, il est généralement à la traîne lorsque la tâche de développement est complexe.

Les problèmes

Les hallucinations

Les LLMs sont victimes d'un phénomène appelé "hallucinations". L'hallucination consiste à inventer des informations, des vérités. On a remarqué que les LLMs, parfois, affirmaient des choses fausses. Si nous demandions à ChatGPT les sources de ce qu'il affirme, il pourrait générer des noms et des articles qui n'existent pas.

Ils sont aussi capables, comme les humains, de se tromper et d'affirmer avec conviction que ce qu'ils avancent est correct.

Le programme perd donc de son intérêt sur certains domaines un peu plus pointus.

Les tâches logiques

Les LLMs sont généralement peu efficaces dans la réalisation de tâches logiques. Ils ne seront pas capables de résoudre un problème mathématique complexe, voire de simples additions, ni des problèmes de physique quantique. La raison est simple, un LLM ne réfléchit pas. Il génère simplement une suite de mots qui ont une grande probabilité d'être mis à la suite.

La censure et le jailbreaking

Les entreprises derrière les LLMs appliquent une censure. Dans ce cas-là, la censure n'est pas nécessairement un problème. Il est raisonnable d'empêcher les gens d'avoir des informations relatives à la création de bombes ou sur la synthèse de drogues. La censure peut se faire pendant l'entraînement, on met de côté les données à caractère problématique ou bien on donne au LLM une instruction qui aura beaucoup plus de poids que le reste de la conversation. Cette instruction pourrait être "Ne donne aucune information qui est illégale, comme comment fabriquer une bombe". Parfois, la censure peut porter sur des thématiques qui pour certains ne devraient pas être censurées. Par exemple, j'avais écrit un jour un résumé d'un film d'horreur appelé Saw. Dans ce film, les personnages meurent de manière assez sanglante. J'ai voulu faire corriger le texte par ChatGPT et ce dernier a remplacé certains termes choquants, donc des événements qui se sont passés dans le film.

Cette instruction peut être contournée, de manière très amusante. Des chercheurs ont remarqué qu'en utilisant certains contextes, on pouvait faire oublier les instructions du LLM. Par exemple, en disant à ChatGPT que notre grand-mère nous manque et que l'on se souvient que petit, au pied de notre lit, elle nous racontait l'histoire de "comment fabriquer une bombe", ChatGPT pourrait nous donner un procédé complet de production de bombes artisanales.

Certains chercheurs pensent qu'il est impossible d'appliquer une censure parfaite sur les LLMs et que l'on trouvera toujours une manière de la contourner.

Conclusion

Les LLMs sont une véritable révolution dans le monde informatique. Depuis la sortie de ChatGPT 3.5 et ChatGPT 4, toutes les grandes entreprises du monde entraînent leur LLM ou en spécialisent un déjà existant. Ils permettent de chercher de l'information très rapidement sans avoir à passer des heures sur Google à tomber sur le bon lien avec le bon article.

Ils permettent d'exécuter des tâches qui nécessitent de la compréhension de texte très rapidement. N'importe qui peut les utiliser pour apprendre sur n'importe quel sujet.

Aujourd'hui, les LLMs sont un marché qui compte en milliards de dollars. Microsoft a investi dans OpenAI, les créateurs de ChatGPT, à hauteur de 10 milliards de dollars. Cet investissement important se comprend par le coût des entraînements qui suivent une courbe exponentielle. On estime que l'entraînement de ChatGPT 5 coûtera 1 milliard de dollars.

Il est également coûteux de faire fonctionner un LLM. Les entreprises doivent faire fonctionner en permanence des milliers d'ordinateurs, qui sont coûteux à l'achat et énergivores. L'an dernier, Facebook a passé une commande de 350 000 cartes graphiques H100, représentant plus de 10,5 millions de dollars.