Prè-requis
Le cours nécessite de maîtriser de Python ainsi que des bases d’algèbre linéaire.
Objectif du cours
Ce cours propose une immersion profonde dans l’architecture, les mathématiques et l’ingénierie des grands modèles de langage (LLMs). Au-delà de la théorie, l’objectif est de comprendre le modèle Transformer, et de maîtriser le cycle de vie complet d’un modèle.
Organisation des séances
Le cours n’est pas ouvert aux auditeurs externes.
Chaque session dure 3h.
Session 1 : Modèles de langues
- Historique : limites des RNNs et LSTMs.
- Comprendre les spécificités : encodeurs, décodeurs, modèles de raisonnement
- Cycle de vie d’un modèle : pré- et post-entraînement, inférence
- Training loop et optimisation : de SGD à muon en passant par AdamW
- Tokenization, conversations, function calling
- L’écosystème : tour d’horizon de Hugging Face, des APIs propriétaires et des frameworks open-source.
Session 2 : Le modèle Transformer
- Mécanismes d’attention.
- Stabilité et normalisation : Pre-norm vs Post-norm, RMSNorm et connexions résiduelles.
- Embeddings de position : méthode sinusoïdale, Rotary Positional Embeddings (RoPE).
- Précision numérique : entraîner en FP16/BF16 et comprendre les enjeux de la quantification.
Session 3 : Pré-entraînement et lois d’échelle (scaling laws)
- Data engineering : filtrage, déduplication et mélange de données. Sources des données, classifiers de qualité, data mixing (midtraining, etc.). Discussion sur les aspects légaux et les données synthétiques.
- Comptabilité : FLOPs forward/backward
- Scaling laws de Chinchilla : optimiser le ratio paramètres / tokens / compute.
- Learning Rate Schedulers
- Choix des hyperparamètres
- Précision arithmétique et stabilité
Note : les problématiques d’entraînement distribué et de parallélisme sont couvertes dans un cours avancé au second semestre (Training and deploying Large-Scale Models).
Session 4 : Post-training et Alignement
- Fine-tuning efficace : PEFT (LoRA, QLoRA) et distillation.
- Alignement humain : SFT (Supervised Fine-Tuning) et RLHF (PPO).
- Nouvelles frontières : DPO (Direct Preference Optimization) et GRPO (Group Relative Policy Optimization), verifiable rewards (RLVR)
- Test-time compute
- Évaluation : benchmarks (MMLU, HumanEval) et le problème de la contamination des données.
Session 5 : Decoding et optimisation de l’inférence
- Stratégies de decoding
- Hardware : Comprendre les specs GPU (VRAM, Memory Bandwidth) et FlashAttention.
- Prefill vs decode, arithmetic intensity
- Accélération : KV-Cache, Continuous Batching, Speculative Decoding, PagedAttention, vLLM
- Quantization
- Long context : extension des méthodes RoPE, sliding window, YARN, attention sinks, ring attention
Session 6 : Architectures alternatives et efficacité matérielle
- Mixture of Experts (MoE) : routing, load-balancing, instabilités et pathologies
- Variantes du mécanisme d’attention : Grouped-Query Attention (GQA) et Multi-Query Attention (MQA)
- Au-delà du Transformer : SSM (Mamba) et architectures récursives.
Session 7 : Agents
- RAG (Retrieval Augmented Generation) : enjeux de la mémoire long-terme.
- Tool Use : Appels de fonctions (Function Calling) et intégration d’outils externes.
- Protocole MCP
- AI Coding agents
- Benchmarks agentiques
Session 8 : Sujets avancés
- Mechanistic Interpretability
- Tiny Models : l’enjeu du “Small Language Model” pour le edge computing.
- Multi-modalité : vision Transformers
- Robotique
Mode de validation
L’évaluation se fera par plusieurs devoirs à la maison et un examen final.
Nathanaël FIJALKOW
(CNRS, LaBRI)
David LOUAPRE
(HuggingFace)