2 points par GN⁺ 2025-02-11 | Aucun commentaire pour le moment. | Partager sur WhatsApp
  • Un résumé pour les lecteurs qui veulent parcourir rapidement la vidéo approfondie de 3 h 31 sur les LLM d’Andrej Karpathy et comprendre d’un coup leur fonctionnement, la terminologie du fine-tuning, les prompts, les hallucinations et DeepSeek-R1
  • Les LLM sont entraînés à prédire le prochain token dans une fenêtre de contexte après tokenisation de grands volumes de textes web nettoyés ; les contextes longs intègrent davantage d’informations, mais augmentent le coût de calcul
  • Un base model pré-entraîné ressemble davantage à un outil d’autocomplétion probabiliste qui poursuit du texte dans le style d’Internet ; pour devenir un assistant conversationnel, il lui faut un post-entraînement comme le SFT et l’alignement
  • Pour réduire les hallucinations, il faut lui apprendre à refuser les questions dont il ignore la réponse, ou à consulter des informations récentes via l’utilisation d’outils ou le RAG ; pour les problèmes de maths et de logique, la génération étape par étape et les outils externes sont plus adaptés
  • L’apprentissage par renforcement permet d’essayer plusieurs réponses et d’apprendre à partir des solutions réussies, mais avec le RLHF, le modèle de récompense n’est qu’une approximation des préférences humaines, ce qui laisse subsister des risques de sur-optimisation et d’exploitation du modèle de récompense

À qui s’adresse ce résumé

  • « Deep dive into LLMs like ChatGPT » d’Andrej Karpathy est une vidéo de 3 h 31 ; ceci est un TL;DR pour les lecteurs qui veulent en retenir l’essentiel sans y consacrer tout ce temps de visionnage
  • Il convient particulièrement aux lecteurs suivants
    • Ceux qui veulent comprendre comment les LLM fonctionnent réellement, et pas seulement en surface
    • Ceux qui veulent comprendre la terminologie du fine-tuning comme chat_template ou ChatML
    • Ceux qui veulent améliorer leur prompt engineering en comprenant pourquoi les prompts fonctionnent bien ou échouent
    • Ceux qui veulent réduire les hallucinations des LLM
    • Ceux qui veulent comprendre pourquoi DeepSeek-R1 attire l’attention
  • Les diagrammes Excalidraw utilisés dans la vidéo sont disponibles via un lien de téléchargement hébergé séparément sur un CDN

Données de pré-entraînement et tokenisation

  • Les LLM créent de grands jeux de données textuelles en crawlant Internet, mais les données brutes contiennent beaucoup de contenus dupliqués, de textes de faible qualité et d’informations non pertinentes, ce qui impose un filtrage poussé avant l’entraînement
    • Pour créer un modèle uniquement en anglais, il faut des heuristiques qui ne conservent que les textes ayant une forte probabilité d’être en anglais
    • FineWeb, un jeu de données d’exemple, contient plus de 1,2 milliard de pages web
  • Le texte nettoyé n’est pas fourni tel quel au modèle : il est transformé en tokens, des identifiants représentant des motifs récurrents
    • Une technique représentative est le Byte Pair Encoding (BPE)
    • GPT-4 utilise 100 277 tokens, et le nombre de tokens dépend des choix des créateurs du modèle
    • Tiktokenizer permet de visualiser le processus de tokenisation

Entrées, sorties et fonctionnement interne d’un réseau neuronal

  • Les données tokenisées sont fournies au réseau neuronal, et le modèle prédit le prochain token dans une fenêtre de contexte donnée
    • Certains modèles utilisent 8 000 tokens ; GPT-4 va jusqu’à un contexte de 128k
    • Le modèle prédit le prochain token à partir des motifs appris et ajuste ses poids par rétropropagation afin de réduire les erreurs
    • Une fenêtre de contexte plus longue permet de prendre en compte davantage de contenu d’entrée, mais augmente le coût de calcul
  • À l’intérieur du modèle, des milliards de paramètres interagissent avec les tokens d’entrée pour produire une distribution de probabilité du prochain token
    • Ce processus est défini par des équations mathématiques complexes optimisées pour l’efficacité
    • L’architecture est conçue pour équilibrer vitesse, précision et parallélisation
    • Un exemple d’architecture de LLM de niveau production est disponible sur bbycroft.net/llm
  • Les résultats d’inférence des LLM ne sont pas déterministes, mais probabilistes
    • Même avec le même modèle, les sorties varient légèrement
    • La plupart du temps, ils génèrent un nouveau texte suivant des motifs proches des données d’entraînement, mais dans certains cas ils peuvent correspondre exactement à des fragments de ces données
    • Cet aléa est une source de créativité, mais peut aussi conduire à des hallucinations, c’est-à-dire à la production d’informations fausses

GPT-2 et l’évolution des coûts d’entraînement

  • GPT-2, publié par OpenAI en 2019, est un exemple des premiers LLM fondés sur Transformer
    • 1,6 milliard de paramètres

    • Longueur de contexte de 1024 tokens

      • Entraîné sur environ 100 milliards de tokens
      • Le coût d’entraînement initial était de 40 000 dollars
      • L’efficacité s’est ensuite fortement améliorée
      • Andrej Karpathy a reproduit GPT-2 pour 672 dollars avec llm.c
      • Avec des pipelines optimisés, le coût d’entraînement peut encore descendre à environ 100 dollars
      • Cette baisse de coût vient de données plus propres et de meilleurs environnements d’exécution
      • De meilleures techniques d’extraction des données de pré-entraînement nettoient les jeux de données et permettent au modèle d’apprendre plus vite
      • Un matériel plus puissant et des logiciels optimisés réduisent la quantité de calcul nécessaire pour atteindre le même résultat

Open base model et limites des base models

  • Ici, un open base model ne désigne pas un modèle qui suit strictement la définition de l’IA open source de l’OSI, mais un modèle dont les poids sont publics, sans nécessairement fournir les données d’entraînement ni une reproductibilité complète
    • GPT-2 d’OpenAI est un modèle open-weight et source-available, mais ses données d’entraînement n’étant pas publiées, il n’est pas pleinement open source au sens de la définition de l’OSI
    • Llama 3.1 405B de Meta est un modèle open-weight, mais pas un modèle open source
  • Un base model est un modèle de langage brut pré-entraîné ; pour l’utiliser de façon pratique, il faut du fine-tuning ou de l’alignement
    • Il est entraîné sur des données non filtrées à l’échelle d’Internet et génère des complétions brutes
    • Il manque d’alignement avec les intentions humaines
  • Publier un base model nécessite généralement deux éléments
    • Code d’inférence : définit la procédure par laquelle le modèle génère du texte
    • Poids du modèle : des milliards de paramètres contenant les connaissances du modèle
  • Les caractéristiques de fonctionnement d’un base model sont les suivantes
    • Il génère du texte de style Internet, token par token
    • Ses sorties varient légèrement à chaque exécution
    • Il peut reproduire à l’identique certains fragments des données d’entraînement
    • Ses paramètres peuvent être vus comme un fichier zip de compression avec pertes des connaissances d’Internet
    • Il peut servir à la traduction avec des exemples in-context, ou à un assistant de base fondé sur des prompts structurés
  • Il est possible d’expérimenter directement avec le base model Llama 3 405B ; fondamentalement, un base model ressemble à un coûteux outil d’autocomplétion

Du pré-entraînement au post-entraînement

  • Un base model n’est qu’un générateur de texte pré-entraîné ; pour en faire un véritable assistant, il faut un post-entraînement
  • Il peut générer du texte, mais ne donne pas toujours des réponses utiles et produit aussi beaucoup d’hallucinations
  • Le post-entraînement consiste à fine-tuner le modèle pour qu’il produise de meilleures réponses
  • Le pré-entraînement peut prendre des mois, tandis que le post-entraînement est beaucoup moins coûteux et peut se terminer en quelques heures

Fine-tuning supervisé et données de conversation

  • Après le pré-entraînement, on post-entraîne le modèle non plus sur des jeux de données Internet, mais sur des données de conversations humain/assistant, afin de le rendre plus conversationnel et utile
    • L’algorithme du modèle reste le même, et les paramètres existants sont fine-tunés
    • Les premiers jeux de données de post-entraînement étaient sélectionnés manuellement par des humains, mais des modèles comme UltraChat peuvent générer des conversations synthétiques
  • Pour enseigner la structure de dialogue, on utilise un chat template
  • Voici un exemple de template
<|im_start|>system<|im_sep|>You are a helpful assistant<|im_end|>
<|im_start|>user<|im_sep|>What is 4 + 4?<|im_end|>
<|im_start|>assistant<|im_sep|>4 + 4 = 8<|im_end|>
  • <|im_start|> et <|im_end|> sont des tokens spéciaux qui aident à structurer la conversation
    • Le modèle n’a pas vu ces nouveaux tokens pendant le pré-entraînement ; ils sont introduits pendant le post-entraînement
    • L’article InstructGPT d’OpenAI traite du fine-tuning des LLM pour la conversation
  • OASST1 est un exemple de jeu de données de post-entraînement, et des jeux de données synthétiques peuvent être visualisés dans Nomic Atlas

Hallucinations, utilisation d’outils et mémoire

  • L’un des principaux problèmes des LLM est l’hallucination, c’est-à-dire la génération d’informations fausses ou inventées avec assurance
    • Pendant le post-entraînement, le modèle peut apprendre qu’il doit toujours répondre
    • Même si la question n’a pas de sens, il cherchera à produire une réponse plutôt qu’à dire « je ne sais pas »
  • L’article Llama 3 de Meta utilise la procédure suivante pour améliorer la factualité
    • Extraire une partie des données d’entraînement
    • Faire générer à Llama 3 des questions factuelles sur ces données
    • Faire générer les réponses par Llama 3
    • Noter les réponses en les comparant aux données d’origine
    • Si elles sont fausses, entraîner le modèle à reconnaître la mauvaise réponse et à la refuser
  • Une manière de réduire les hallucinations consiste à entraîner le modèle à utiliser des outils quand il ne connaît pas la réponse
<|im_start|>user<|im_sep|>Who is Orson Kovacs?<|im_end|>
<|im_start|>assistant<|im_sep|><SEARCH_START>Who is Orson Kovacs?<SEARCH_END><|im_end|>

[...search results...]

<|im_start|>assistant<|im_sep|>Orson Kovacs is ....<|im_end|>
  • Par entraînement répété, le modèle apprend à chercher plutôt qu’à inventer ce qu’il ignore
  • Les paramètres du modèle stockent une mémoire floue, comme un souvenir vague de ce qui s’est passé il y a un mois, tandis que les tokens du contexte agissent comme une mémoire de travail contenant les informations récentes
  • Le RAG fonctionne bien parce que le modèle a moins besoin de deviner lorsqu’il accède directement aux documents pertinents

Conscience de soi du modèle et tokens de raisonnement

  • Si l’on demande « qui es-tu ? » à un base model non tuné, il risque d’halluciner
    • Même s’il n’a pas été créé par OpenAI, il peut répondre qu’OpenAI l’a créé, car les modèles d’IA et OpenAI sont souvent associés dans les données Internet
  • Il existe deux façons de corriger cela
  • Sans entraînement spécifique, un LLM revient à des réponses génériques d’IA, sans connaissance réelle de lui-même
  • Les LLM ne raisonnent pas comme les humains : ils génèrent les tokens séquentiellement, ce qui nécessite une génération structurée pour réfléchir correctement
    • Sauter directement à la réponse peut relever davantage de la supposition
    • Dérouler la solution étape par étape donne des résultats plus fiables
    • Le nombre de couches du modèle étant fini, la sortie d’un token ne peut pas être traitée indéfiniment ; découper le problème en petites étapes augmente les chances d’obtenir la bonne réponse
  • Pour les tâches de mathématiques et de logique, il vaut mieux recourir à des outils externes plutôt que de dépendre uniquement du raisonnement propre du modèle

Apprentissage par renforcement et DeepSeek

  • Un modèle pré-entraîné possède des connaissances, mais ne sait pas encore les utiliser efficacement
    • Le fine-tuning supervisé lui apprend à imiter des réponses humaines
    • L’apprentissage par renforcement l’amène à trouver de meilleures solutions par essais et erreurs
  • Exemple de procédure d’apprentissage par renforcement
    • Générer 15 solutions pour le même problème
    • Si seulement 4 sont correctes, sélectionner les meilleures réponses correctes et courtes
    • S’entraîner sur les réponses sélectionnées et répéter ce processus de nombreuses fois
  • Ce processus n’implique pas directement d’humain ; le modèle produit de nombreuses solutions à un même problème et apprend à partir de celles qui atteignent la bonne réponse
  • Le pré-entraînement et le post-entraînement sont bien définis, mais l’apprentissage par renforcement reste un domaine de recherche actif
    • Des entreprises comme OpenAI mènent aussi beaucoup de recherches, dont certaines parties ne sont pas publiques
    • L’article de DeepSeek traite publiquement du RL et du FT pour les LLM, et explique comment faire émerger des capacités de raisonnement
  • Dans l’exemple de l’article DeepSeek, le modèle utilise de plus en plus de tokens au fil du temps pour améliorer son raisonnement
    • Le fameux moment « aha » est difficile à enseigner explicitement par simple apprentissage sur un jeu de données ; c’est quelque chose que le modèle doit plutôt découvrir par lui-même via l’apprentissage par renforcement
    • L’avantage est un meilleur raisonnement, l’inconvénient est une consommation plus élevée de tokens

AlphaGo et le potentiel de l’apprentissage par renforcement

  • Dans la recherche sur la maîtrise du go, l’apprentissage par renforcement permet au modèle de ne pas seulement imiter les humains, mais de découvrir ses propres stratégies par essais et erreurs
  • Le Move 37 joué lors d’une partie d’AlphaGo est présenté comme une stratégie créée par le modèle pour gagner, et non comme un coup présent dans les données d’entraînement
    • Les chercheurs estimaient la probabilité qu’un humain joue ce coup à 1 sur 10 000
  • L’apprentissage par renforcement comporte encore de nombreuses zones inexplorées, et la recherche se poursuit
  • Si un LLM estime que c’est la meilleure manière d’exprimer des pensées et des idées, il pourrait même créer son propre langage

Domaines non vérifiables et RLHF

  • Dans les domaines vérifiables, il est facile d’exclure les humains du processus d’apprentissage par renforcement, et un LLM peut agir comme juge de ses propres performances
  • Dans les domaines non vérifiables, comme l’écriture de blagues ou le résumé, il faut inclure les humains dans la boucle
    • Un prompt comme Write a joke about pelicans rend difficile l’évaluation automatique de la qualité de la blague
    • Un LLM peut générer des blagues, mais il est difficile d’en juger la qualité à grande échelle
  • Comme il est aussi difficile de mobiliser des humains à grande échelle, il faut une approche comme celle décrite dans l’article sur le RLHF
  • Le RLHF entraîne un modèle de récompense distinct, utilisé pour évaluer la qualité des réponses à grande échelle
    • Des humains classent les réponses
    • Ces évaluations servent à entraîner le modèle de récompense jusqu’au niveau souhaité
    • Ensuite, le modèle de récompense évalue à grande échelle la qualité des réponses du LLM

Avantages et limites du RLHF

  • Les avantages du RLHF sont les suivants
    • Il rend possible l’apprentissage par renforcement dans des domaines non vérifiables comme l’écriture de blagues ou le résumé
    • Il réduit souvent les hallucinations, rend les réponses plus humaines et améliore le modèle
    • Il exploite le discriminator-generator gap, c’est-à-dire le fait qu’il est plus facile pour un humain d’évaluer une réponse que de la générer
      • Par exemple, il est plus facile de choisir « lequel de ces 5 poèmes est le meilleur » que « d’écrire un poème »
  • Les limites du RLHF sont également claires
    • Le modèle de récompense n’est pas un humain réel, mais une simulation des préférences humaines
    • L’apprentissage par renforcement peut produire des exemples adversariaux qui exploitent les faiblesses du modèle de récompense
    • Par exemple, après 1 000 mises à jour, « la meilleure blague sur les pélicans » pourrait devenir un résultat dénué de sens comme the the the the the the the the
  • Ce problème est connu sous le nom d’Adversarial Machine Learning
  • Comme il existe une infinité de façons d’exploiter un système, filtrer les mauvaises réponses n’est pas simple
  • Pour éviter la sur-optimisation et la dégradation des performances, l’entraînement du modèle de récompense est limité à quelques centaines d’itérations

Prochaines directions pour les LLM

  • Les LLM pourraient s’étendre dans plusieurs directions à l’avenir
    • Capacités multimodales : comprendre et générer non seulement du texte, mais aussi des images, de l’audio et de la vidéo
    • Modèles agentiques : dépasser les tâches unitaires pour aller vers la mémoire à long terme, le raisonnement et la correction d’erreurs
    • IA quotidienne et invisible : s’intégrer naturellement aux workflows
    • IA utilisant l’ordinateur : ne plus seulement générer du texte, mais interagir avec des logiciels et exécuter des actions
    • Apprentissage au moment du test : s’adapter en temps réel pour améliorer immédiatement la précision

Où suivre et expérimenter les LLM

  • Ressources pour suivre les progrès des LLM
    • LM Arena : benchmark de nouveaux modèles de langage
    • AI News : newsletter couvrant la recherche en IA
    • X (Twitter) : de nombreux chercheurs y partagent leurs mises à jour
  • Où essayer différents LLM
    • Modèles propriétaires : OpenAI GPT-4, Google Gemini, Anthropic Claude, etc.
    • Modèles open-weight : DeepSeek, Meta Llama, etc., disponibles sur Together.ai
    • Exécution locale : avec Ollama ou LM Studio
    • Base models : explorables sur Hyperbolic

Aucun commentaire pour le moment.

Aucun commentaire pour le moment.