Grands modèles de langage (LLM)
Que sont les grands modèles de langage (LLM) ?
Les grands modèles de langage (LLM) représentent une nouvelle classe de modèles de traitement du langage naturel (NLP). Leurs performances et leurs capacités surpassent considérablement celles de leurs prédécesseurs dans un large éventail de tâches : réponse à des questions ouvertes, conversation, résumé de contenu, exécution d'instructions quasi arbitraires, traduction, mais aussi génération de contenu et de code. Les LLM sont entraînés sur des datasets extrêmement volumineux à l'aide d'algorithmes sophistiqués de machine learning, grâce auxquels ils apprennent les motifs et les structures du langage humain.
Poursuivez votre exploration
Le Grand Livre des MLOps
Une lecture incontournable pour les ingénieurs ML et les data scientists qui veulent optimiser leur pratique MLOps
Puisez dans le potentiel des LLM
Comment gagner en efficacité et réduire les coûts avec l'IA.
Créez votre propre LLM à l'instar de Dolly
Apprenez à régler et déployer votre LLM personnalisé.
Comment fonctionnent les grands modèles de langage (LLM) ?
Les grands modèles de langage, ou LLM, se composent généralement de trois éléments architecturaux :
- Encodeur : une fois qu'un tokéniseur a converti de grandes quantités de texte en jetons, qui sont des valeurs numériques, l'encodeur crée des intégrations pertinentes de ces jetons pour rapprocher les mots ayant un sens proche dans l'espace vectoriel.
- Mécanismes d'attention : ces algorithmes sont utilisés dans les LLM pour permettre au modèle de se concentrer sur des aspects spécifiques du texte d'entrée et établir des liens entre les mots connexes. Ce processus n'est pas séparé de l'encodeur et du décodeur.
- Décodeur : le tokéniseur reconvertit les jetons en mots pour qu'ils soient compréhensibles par l'humain. Au cours de ce processus, le LLM prédit le mot suivant, puis celui d'après, et ce pour des millions de mots. Une fois que le modèle a terminé son processus d'apprentissage, il peut accomplir de nouvelles tâches : répondre à des questions, traduire du texte, faire des recherches sémantiques, etc.
Comment fonctionnent les LLM ?
Une version simplifiée du processus d'entraînement des LLM
Découvrez ce que sont les transformateurs, le fondement de tous les LLM
Quelle est l'histoire des grands modèles de langage (LLM) ?
Les techniques employées dans les LLM représentent le pinacle de recherches et de travaux accomplis dans le domaine de l'intelligence artificielle depuis les années 1940.
Années 1940
Le premier article scientifique portant sur les réseaux de neurones a été publié en 1943.
1989
Lecun publie un article scientifique sur la reconnaissance des chiffres et décrit comment un réseau à propagation arrière peut être appliqué à des problèmes de reconnaissance d'image.
2012
Un article d'Hinton et al montre comment les réseaux de neurones profonds surpassent tous les modèles précédents en matière de reconnaissance vocale.
Un réseau de neurones à convolution (AlexNet) réduit de moitié le taux d'erreurs de la reconnaissance d'image Imagenet et devient le premier à franchir le seuil des 75 % de précision. Il exploite de nouvelles techniques, notamment l'utilisation de GPU au moment de l'entraînement.
2017
Un article révolutionnaire, « Attention is All you Need », introduit l'architecture de transformation qui est aujourd'hui à la base de tous les LLM.
2018
Google introduit BERT (représentations d'encodeur bidirectionnel à partir de transformateurs), une avancée majeure dans l'architecture qui ouvre la voie aux futurs grands modèles de langage.
2020
OpenAI publie GPT-3, qui devient le plus grand modèle avec 175 milliards de paramètres et la nouvelle référence de performance pour toutes les tâches liées au langage.
2022
Lancement de ChatGPT, qui transforme GPT-3 et des modèles similaires en service accessible aux utilisateurs via une interface web et fait connaître les LLM et l'IA générative au grand public.
2023
Les LLM open source affichent des résultats de plus en plus impressionnants avec le lancement de LLaMA 2, Falcon et MosaicML MPT. C'est également l'année du lancement de GPT-4, qui relève encore le niveau de référence en termes de nombre de paramètres et de performance.
Quelles sont les applications des LLM ?
Les LLM peuvent avoir un impact dans de nombreux domaines, tous secteurs confondus. Voici quelques cas d'usage typiques :
- Robots conversationnels et assistants virtuels : les LLM sont utilisés pour alimenter des chatbots destinés aux clients et aux collaborateurs d'une entreprise. Ces robots peuvent fournir une assistance, assurer le suivi des prises de contact via le site web ou servir d'assistant personnel.
- Génération de code et débogage : les LLM peuvent produire des extraits de code utiles, identifier et corriger des erreurs dans le code, et compléter des programmes sur la base d'instructions d'entrée.
- Analyse du sentiment : les LLM peuvent interpréter le sentiment d'un texte pour automatiser la compréhension de la satisfaction des clients.
- Classification et regroupement de textes : les LLM peuvent organiser, catégoriser et trier de grands volumes de données pour identifier des thèmes et des tendances afin d'enrichir la prise de décision.
- Traduction : les LLM peuvent traduire des documents et des pages web dans différentes langues.
- Synthèse et paraphrase : les LLM peuvent résumer des articles, des publications, des appels de clients ou des réunions, en mettant en relief les points les plus importants.
- Génération de contenu : les LLM peuvent rédiger un synopsis ou du nouveau contenu pouvant servir d'ébauche ou d'amorce.
Quelques clients ayant déployé des LLM avec d'excellents résultats
JetBlue
JetBlue a déployé « BlueBot », un robot conversationnel qui s'appuie sur des modèles open source d'IA générative enrichis de données d'entreprise, exécuté avec Databricks. Ce chatbot est à la disposition de toutes les équipes de JetBlue pouvant accéder à des données en fonction de leur rôle. L'équipe « finance », par exemple, peut consulter les données SAP et les déclarations réglementaires, mais les équipes d'exploitation ne verront que les informations de maintenance.
Chevron Phillips
Chevron Phillips Chemical utilise Databricks pour soutenir ses initiatives d'IA générative et automatiser le traitement de ses documents.
Thrivent Financial
Thrivent Financial se tourne vers l'IA générative pour améliorer la recherche, produire des résumés et des insights plus accessibles, et améliorer la productivité de l'ingénierie.
Pourquoi les grands modèles de langage (LLM) connaissent-ils soudain une telle popularité ?
Plusieurs percées technologiques récentes ont propulsé les LLM sur le devant de la scène :
- Progrès des technologies de machine learning
- Les LLM bénéficient de nombreuses avancées dans les techniques de ML. La plus notable est certainement l'architecture des transformateurs, qui est à la base de la plupart des LLM.
- Accessibilité élargie
- La publication de ChatGPT a permis à toute personne ayant accès à Internet d'interagir avec l'un des LLM les plus sophistiqués au monde, à l'aide d'une simple interface web. C'est ce qui a permis au monde entier de prendre conscience de la puissance des LLM.
- Augmentation de la puissance de calcul
- Avec l'apparition de ressources de calcul bien supérieures, à commencer par les processeurs graphiques (GPU), et l'amélioration des techniques de traitement des données, les chercheurs ont la possibilité d'entraîner des modèles bien plus vastes.
- Quantité et qualité des données d'entraînement
- Les performances des modèles se sont considérablement améliorées avec la disponibilité de grands datasets et l'amélioration des capacités de traitement. GPT-3, par exemple, a été entraîné sur des big data (environ 500 milliards de jetons) qui comprenaient des sous-ensembles de grande qualité. Le dataset WebText2 (17 millions de documents), notamment, rassemble le contenu de pages web publiques choisies pour leur qualité.
Puis-je utiliser les données de mon organisation pour personnaliser un LLM ?
Lorsque vous cherchez à personnaliser une application de LLM avec les données de votre organisation, vous devez examiner quatre modèles d'architecture. Ces différentes techniques, décrites plus bas, ne s'excluent pas les unes les autres. Au contraire, elles peuvent (et doivent) être combinées pour tirer parti de leurs forces respectives.
Méthode | Définition | Cas d'usage principal | Exigences en matière de données | Avantages | Facteurs |
---|---|---|---|---|---|
Élaboration de prompts spécialisés visant à orienter le comportement du LLM | Guidage rapide, à la volée | Aucun | Rapide, économique, sans entraînement | Moins de contrôle que le réglage fin | |
Le LLM est combiné à de la récupération de connaissances extérieures | Datasets dynamiques et connaissances externes | Base de connaissances ou de données externes (base de données vectorielle, par exemple) | Contexte actualisé dynamiquement, précision accrue | Augmente la longueur des prompts et le calcul d'inférences | |
Adaptation d'un LLM préentraîné à des datasets ou des domaines spécifiques | Spécialisation pour un domaine ou une tâche | Des milliers d'exemples spécifiques ou d'instructions | Contrôle granulaire, spécialisation élevée | Nécessite des données étiquetées, coût de calcul important | |
Entraînement d'un LLM à partir de zéro | Tâches uniques ou corpus propre à un domaine | Grands datasets (milliards, voire milliers de milliards de jetons) | Contrôle maximum, spécialement adapté à des besoins spécifiques | Consomme une grande quantité de ressources |
Quelle que soit la technique choisie, l'organisation devra créer sa solution en adoptant une approche modulaire et rigoureusement structurée pour se préparer à l'itérer et à l'adapter. Pour en savoir plus sur ce sujet et d'autres, lisez le Grand Livre des MLOps.
Que signifie l'ingénierie de prompt dans le contexte des grands modèles de langage (LLM) ?
L'ingénierie de prompt consiste à adapter les prompts textuels fournis à un LLM afin d'obtenir des réponses plus précises ou pertinentes. Les LLM ne produisent pas tous des résultats de la même qualité, car l'ingénierie de prompt est spécifique à chaque modèle. On peut tout de même dégager des conseils généraux :
- Utilisez des prompts clairs et concis comprenant éventuellement une instruction, du contexte (si nécessaire), une requête ou une entrée utilisateur, ainsi qu'une description du type ou du format souhaité pour le résultat.
- Donnez des exemples dans votre prompt (« few-shot learning », ou généralisation à partir d'une poignée d'exemples), pour aider le LLM à comprendre ce que vous voulez.
- Dites au modèle comment se comporter – demandez-lui, par exemple, d'admettre qu'il ne connaît pas la réponse à une question le cas échéant.
- Demandez au modèle de raisonner étape par étape, ou d'expliquer sa démarche.
- Si votre prompt inclut une entrée utilisateur, utilisez des techniques pour empêcher tout piratage. Précisez clairement quelles portions du prompt décrivent l'instruction et lesquelles décrivent l'entrée utilisateur.
Que signifie la génération augmentée de récupération (RAG) dans le contexte des grands modèles de langage (LLM) ?
La génération augmentée de récupération, ou RAG, est une approche architecturale capable d'améliorer l'efficacité des applications de grands modèles de langage (LLM) en exploitant des données personnalisées. Elle consiste à récupérer des données et des documents utiles pour répondre à une question ou accomplir une tâche, puis à les fournir au LLM à titre de contexte. La RAG a donné la preuve de son efficacité avec les chatbots d'assistance et les systèmes de Q&R qui doivent s'appuyer sur des informations à jour ou accéder à des connaissances propres à un domaine particulier.Vous trouverez ici davantage d'informations sur la RAG.
En quoi consiste le réglage fin (fine-tuning) des grands modèles de langage ?
Le réglage fin est un processus visant à adapter un LLM pré-entraîné à l'aide d'un dataset relativement plus petit et propre à un domaine ou une tâche en particulier. Au cours du processus de réglage fin, l'entraînement se poursuit sur une courte durée, par exemple en ajustant un nombre de pondérations plus faible que dans le cas du modèle entier.
Le terme de « réglage fin » peut désigner plusieurs concepts, dont voici les deux plus courants :
- Réglage fin par instructions supervisées : cette approche consiste à poursuivre l'entraînement d'un LLM pré-entraîné sur un dataset d'exemples d'entrées-sorties, généralement plusieurs milliers.
- Pré-entraînement continu : cette méthode de réglage fin ne s'appuie pas sur des exemples d'entrées et de sorties ; elle utilise du texte non structuré spécifique à un domaine pour poursuivre le processus de pré-entraînement (prédiction du jeton suivant, modélisation de langage masqué, etc.).
En quoi consiste le pré-entraînement d'un grand modèle de langage ?
Le pré-entraînement complet d'un LLM consiste à entraîner un modèle de langage sur un vaste corpus de données (texte, code...) sans utiliser les connaissances antérieures ni les pondérations d'un modèle existant. C'est une approche très différente du réglage fin, dans lequel un modèle pré-entraîné est adapté à une tâche ou un dataset spécifique. Le résultat d'un pré-entraînement complet est un modèle de base qui peut être utilisé directement ou affiné pour des tâches en aval. Le pré-entraînement représente typiquement la tâche la plus vaste et la plus coûteuse, et il est inhabituel que des organisations se lancent dans une telle démarche.
Quels sont les LLM les plus courants et quelles sont leurs spécificités ?
Le domaine des grands modèles de langage offre aujourd'hui de nombreuses options. De façon générale, on peut grouper les LLM en deux catégories : les services propriétaires et les modèles open source.
Services propriétaires
Le LLM le plus répandu est ChatGPT, lancé en fanfare par OpenAI. ChatGPT présente aux utilisateurs une interface de recherche conviviale permettant de saisir un prompt et d'obtenir généralement une réponse rapide et pertinente. Les développeurs peuvent utiliser l'API ChatGPT pour intégrer ce LLM à leurs propres applications, produits et services. Google Bard et Claude d'Anthropic sont des services similaires.
Modèles open source
L'autre option consiste à héberger soi-même un LLM, généralement en partant d'un modèle open source et compatible avec un usage commercial. La communauté open source a rapidement su rattraper les performances des modèles propriétaires. Les LLM open source les plus populaires sont Llama 2 de Meta et MPT de MosaicML (acquis par Databricks).
Quels critères pour faire le bon choix
Pour faire le bon choix et évaluer les différences d'approche entre l'API d'un fournisseur tiers et l'hébergement d'un LLM open source (ou affiné par réglage fin), il faut tenir compte de la pérennité du modèle, de la gestion des coûts et de l'avantage compétitif que vous pouvez tirer de vos données. Le retrait d'un modèle propriétaire devenu obsolète, par exemple, va interrompre vos pipelines et vos index vectoriels ; les modèles open source resteront toujours accessibles. Les modèles open source et affinés par réglage fin peuvent offrir davantage de choix et de possibilités de personnalisation, ce qui aura un effet positif sur le rapport performance-prix. En anticipant le réglage fin de vos propres modèles, vous pourrez exploiter les données de votre organisation et en faire un avantage compétitif, en développant des modèles plus performants que ceux disponibles dans le public. Dernier point, les modèles propriétaires peuvent créer des problèmes de gouvernance : ces « boîtes noires » ne permettent pas de superviser les processus, ni les pondérations de leur entraînement.
L'hébergement de vos propres LLM open source exige plus de travail que l'utilisation de LLM propriétaires. MLflow de Databricks permet à une personne qui maîtrise Python d'utiliser n'importe quel modèle de transformateur comme objet Python.
Comment choisir le LLM à utiliser en fonction d'une série de critères d'évaluation ?
L'évaluation des LLM est un domaine délicat qui évolue constamment, principalement parce que leurs performances sont inégales d'une tâche à l'autre. Un LLM peut exceller selon un indicateur donné, mais une variation, même minime, dans le prompt ou le problème peut suffire à altérer considérablement sa performance.
Voici toutefois quelques outils et critères pour évaluer les performances des LLM :
- MLflow
- Ensemble d'outils LLMOps pour l'évaluation des modèles.
- Mosaic Model Gauntlet
- Approche d'évaluation agrégée, qui catégorise la compétence des modèles en six grands domaines (décrits ci-dessous) plutôt qu'une seule métrique monolithique.
- Hugging Face collecte des centaines de milliers de modèles provenant de contributeurs LLM
- BIG-bench (critère Beyond the Imitation Game)
- Cadre de référence dynamique qui héberge actuellement plus de 200 tâches et s'intéresse principalement à l'adaptation aux futures capacités des LLM.
- Faisceau d'évaluation de LM EleutherAI
- Cadre holistique qui évalue les modèles sur plus de 200 tâches, intègre les évaluations telles que BIG-bench et MMLU, et privilégie les capacités de reproduction et de comparaison.
À lire également : Bonnes pratiques pour l'évaluation des applications RAG à destination des LLM
Comment opérationnaliser la gestion des grands modèles de langage (LLM) à l'aide du LLMOps (opérations LLM) ?
Un LLMOps (Large Language Model Ops) est un ensemble de pratiques, de techniques et d’outils utilisés pour la gestion opérationnelle des grands modèles de langage (LLM, Large Language Model) dans des environnements de production.
Le LLMOps permet le déploiement, le monitoring et la maintenance efficaces des grands modèles de langage. Tout comme le MLOps (Machine Learning Ops) traditionnel, les solutions LLMOps nécessitent une collaboration entre les data scientists, les ingénieurs DevOps et les professionnels IT. Vous trouverez ici davantage d'informations sur le LLMOps.
Où puis-je trouver davantage d'informations sur les grands modèles de langage (LLM) ?
Vous trouverez de nombreuses ressources sur les LLM, mais voici quelques suggestions :
Formation
- LLM : modèles de fondation initiaux (EDX et Formation Databricks) – une formation gratuite de Databricks qui explore les rouages des modèles de fondation en lien avec les LLM.
- LLM : de l'application à la production (EDX et Formation Databricks) – une formation gratuite de Databricks qui s'intéresse au développement des applications de LLM à l'aide des frameworks les plus modernes et les plus répandus.
Ebooks
Blogs techniques
- Bonnes pratiques pour l'évaluation des applications RAG à destination des LLM
- Créer des applications d'IA générative avec la MLflow AI Gateway et Llama 2 (améliorer la précision en utilisant la génération augmentée de récupération (RAG) avec vos propres données)
- Déployez votre chatbot LLM avec la génération augmentée de récupération (RAG), llama2-70B (inférences MosaicML) et Vector Search
- LLMOPs : tout ce que vous devez savoir pour bien gérer des LLM
Étapes suivantes
- Contactez Databricks pour planifier une démonstration et discuter de vos projets de grands modèles de langage (LLM)
- Explorez l'offre de Databricks pour les LLM
- Découvrez les applications de la génération augmentée de récupération (RAG), l'architecture LLM la plus courante.