Large Language Models
N. FIJALKOW, M. LELARGE
Deep LearningLearningNatural Language Processing

Prè-requis

Le cours nécessite de maîtriser de Python et Pytorch ainsi que des bases d’algèbre linéaire et d’optimisation.

Les cours suivants enseignés au MVA couvrent les prérequis nécessaires (un seul de ces cours permettrait aux étudiants d’être à niveau pour notre cours):

Objectif du cours

Large Language Models : Introduction and Applications for Code

L’objectif de ce cours est de présenter les Large Language Models, en insistant particulièrement sur l’architecture Transformers. La première moitié du cours porte sur toutes les notions essentielles pour cette architecture, et l’objectif est de coder en entier un Transformer utilisable, en ayant compris en profondeur et avec des outils mathématiques les mécanismes d’attention. La seconde moitié du cours discute de certaines applications des LLMs dans des cadres formels (code, preuve).

Page du cours : https://llm.labri.fr/

Organisation des séances

Sessions 1-2-3-4-5-6 present the basics of Large Language Models, and Sessions 7-8 present applications for code.

  • Session 1: Understanding Large Language Models
    • What are Large Language Models (LLMs)
    • Overview of applications: natural language processing tasks, code generation, proof generation
    • Challenges and limitations of LLMs
  • Session 2: Working with Text Data
    • Data preprocessing techniques for text data
    • Tokenization and vocabulary building
  • Session 3: Attention Mechanisms
    • Types of attention mechanisms (self-attention, multi-head attention)
    • Efficient implementations
  • Session 4: Implementing a GPT Model from scratch
    • Overview of Generative Pre-trained Transformers (GPT)
    • Architecture of GPT models (normalisation layers, residual connections, positional embedding)
    • Pretraining on Unlabeled Data: scaling laws, evaluation metrics
  • Session 5: Fine Tuning
    • Fine tuning for text classification
    • Fine tuning with human feedback and reward models
  • Session 6: Retrieval Augmented Generation
    • Using retrieval mechanisms to enhance generation tasks
    • Language agents
  • Session 7: LLMs for code generation
    • Code generation tasks (code completion, code summarization, code repair)
    • Learning from code-related feedback
    • Inference algorithms for code
  • Session 8: LLMs and formal code
    • LLMs for mathematics
    • Neural theorem proving
    • Verified code synthesis

Mode de validation

Homework (30%) + projet (70%)

Les intervenants

Nathanaël FIJALKOW

(CNRS, LaBRI)

Marc LELARGE

(INRIA Paris)

voir les autres cours du 2nd semestre