← Back to blog

J’ai acheté « Construire un LLM de zéro » pour voir ce qu’il valait

July 21, 2026

aillmeducationreview
Couverture du livre Construire un LLM de zéro de Kévin Degila

Quand des gens racontent n’importe quoi sur un sujet que je connais bien, ça m’agace. Encore plus lorsqu’ils vendent derrière une formation miracle car bien souvent, le véritable produit, c’est vous.

J’ai donc acheté le livre de Kévin Degila et parcouru les visualisations et les notebooks afin de m’en faire un avis. Je suis non seulement chercheur en IA, mais j’enseigne aussi, et je sais le travail qu’il faut pour construire un contenu pédagogique cohérent, expliquer des concepts techniques sans trop les déformer et proposer des exercices réellement utiles.

Alors, est-ce que Construire un LLM de zéro vaut son prix ?

Un vrai effort d’accessibilité

Le premier mérite du livre est de proposer le contenu en français. La majorité des bonnes ressources en intelligence artificielle (cours, documentation, articles scientifiques ou discussions techniques) reste en anglais, ce qui peut constituer une barrière importante pour beaucoup de personnes.

Le livre s’adresse à quelqu’un qui connaît déjà un peu la programmation et souhaite comprendre comment fonctionne un LLM sans devoir se plonger immédiatement dans toute la littérature anglophone.

Le travail visuel mérite aussi d’être souligné. Les illustrations sont nombreuses, soignées et généralement efficaces pour rendre les concepts plus intuitifs.

Les notebooks sont également disponibles sur GitHub et Colab. Tout repose sur des outils faciles d’accès, et vous n’avez pas besoin de dépenser un rond supplémentaire pour avancer.

Pour 10 000 FCFA, soit environ $25 canadiens, on obtient donc le livre, un parcours structuré et des visualisations interactives, tandis que le code reste accessible gratuitement. Le prix me paraît très raisonnable.

Le cursus est très large et bien pensé

Même si le titre est accrocheur et peut faire miroiter la possibilité de créer son propre LLM, le livre remet rapidement les choses en perspective. Avec les moyens et le cadre disponible au lecteur, il est évidemment impossible de créer un modèle capable de rivaliser avec ceux des frontier labs. L’objectif est plutôt de reconstruire les différentes briques pour comprendre leur fonctionnement.

Le parcours suit une progression assez large :

  • les fondements en algèbre linéaire, les gradients et l’optimisation ;
  • les réseaux de neurones, la tokenisation, les embeddings, l’attention et les Transformers ;
  • l’entraînement, les données, les coûts, le passage à l’échelle et l’évaluation ;
  • le post-training avec le SFT, LoRA, le RL et DPO ;
  • des techniques et architectures plus modernes comme GQA, SwiGLU et MoE, avant de terminer sur le chain-of-thought, le raisonnement et les agents.

L’influence du travail d’Andrej Karpathy est évidente et elle est d’ailleurs explicitement reconnue dans le livre. On retrouve la même philosophie : partir des bases, reconstruire soi-même les différentes composantes et essayer de comprendre ce qui se passe, plutôt que de simplement importer une librairie et appeler une fonction.

D’ailleurs, si vous comprenez l’anglais, les cours de Karpathy font partie des meilleures ressources disponibles. Karpathy et Lilian Weng font partie des meilleures références pour passer d’un niveau débutant à intermédiaire.

Niveau visualisations, ça rappelle aussi énormément 3Blue1Brown, que j’apprécie beaucoup pour sa manière de rendre les concepts abstraits plus faciles à comprendre.

Les chapitres contiennent suffisamment d’analogies et d’explications pour accompagner la progression. Certaines subtilités sont également bien intégrées, et les notebooks contiennent régulièrement des exercices et des réflexions du type « what if ? ».

Ce que j’aurais aimé voir davantage

Je trouve qu’il y a un saut assez brutal du côté engineering. Ce n’est pas parce qu’une personne connaît les bases de Python qu’elle maîtrise les bases du calcul scientifique. Savoir écrire une boucle ou une fonction ne signifie pas comprendre les tenseurs, les dimensions, le broadcasting ou PyTorch. C’est d’autant plus important que le livre présente la maîtrise des bases de Python comme son seul véritable prérequis.

Pour moi, c’est probablement le plus grand défaut pédagogique du livre.

Le livre prend aussi le parti de se concentrer sur la next token prediction avec une architecture de type GPT. Bien qu’il présente les architectures encodeur-décodeur et explique que GPT est un modèle causal (décodeur seul), j’aurais quand même aimé une cartographie historique un peu plus large des grandes familles d’architectures.

Le suivi concret d’un entraînement aurait aussi mérité davantage de place. En pratique, une grosse partie de l’entraînement de modèles consiste à regarder des courbes, comprendre ce qui ne fonctionne pas et déboguer.

Il y a déjà quelques figures et plots dans les notebooks, mais cette dimension aurait pu être davantage développée. Je pense notamment à des visualisations simples que les lecteurs pourraient apprendre à produire eux-mêmes : courbes de loss, normes des gradients, distributions des activations, métriques d’entraînement, prédictions ou matrices d’attention. Une introduction plus poussée aux métriques, au monitoring et à des outils comme Weights & Biases aurait également été utile.

Il y a enfin quelques problèmes de rendu dans certaines visualisations. Des éléments se chevauchent ou en cachent d’autres, notamment dans la visualisation 9.1 consacrée aux matrices QQ, KK et VV.

Quelques imprécisions techniques

Le livre contient plusieurs formulations qui mériteraient d’être corrigées ou précisées.

  • Le scaling de l’attention : La division par dk\sqrt{d_k} sert d’abord à contrôler la variance des produits scalaires. Sans elle, les logits peuvent devenir trop grands, le softmax sature et les gradients deviennent très faibles. Cela est globalement bien expliqué. Par contre, l’expérience avec l’entropie calcule XXXX^\top, donc compare chaque vecteur avec lui-même, ce qui n’est pas la bonne expérience pour montrer que l’entropie reste plus stable avec le scaling.

  • La cross-entropie : Au chapitre 5, une cross-entropie de 0,75 est interprétée en disant que le modèle donnait « en moyenne 47 % à la bonne réponse ». La valeur de e0,75e^{-0{,}75} correspond à la moyenne géométrique des probabilités attribuées aux bonnes réponses, et non à leur moyenne arithmétique.

  • Le produit scalaire : Au chapitre 2, le produit scalaire est présenté essentiellement comme une mesure indiquant si deux vecteurs pointent dans la même direction. Mais le produit scalaire dépend à la fois de la direction et de la norme des vecteurs. Comme l’exemple utilise des vecteurs unitaires, il devient très facile de confondre le produit scalaire avec la cosine similarity (similarité cosinus).

  • L’attention sans positional encoding : dans l’expérience sans masque causal, le livre parle d’invariance à la permutation. Il s’agit plutôt d’une équivariance : lorsque l’on permute les tokens, les sorties correspondantes sont également permutées.

  • Les gradients : la partie sur les gradients aurait probablement besoin de quelques clarifications. Un gradient faible ne signifie pas nécessairement que l’on se trouve près du minimum. Cela peut arriver sur un plateau, à un point selle, dans une activation saturée, à un maximum local ou simplement à cause de la paramétrisation du problème. L’intuition fonctionne bien sur la fonction quadratique utilisée dans l’exemple, et le livre apporte ensuite quelques nuances, mais la formulation initiale reste trop générale.

Mon plus gros problème reste l’écriture

Maintenant, mon principal problème c’est l’écriture. Je ne sais pas quelle place les LLMs (en particulier Claude) ont occupée dans la rédaction du livre. Mais l’écriture contient énormément de marqueurs que j’associe personnellement aux textes générés ou fortement réécrits par des LLM, et dont je ne suis pas particulièrement client :

  • Les formulations répétées du type « ce n’est pas X, c’est Y »
  • Les mots comme « honnête », « réellement », « véritable » ou « concret » utilisés à répétition
  • Les petites phrases dramatiques
  • Une cadence artificiellement découpée
  • L’usage très fréquent de termes absolus comme « toujours », « jamais », « exactement » ou « rien ». À certains endroits, cette confiance excessive finit même par nuire à la précision technique. Par exemple, dans le notebook du chapitre 9, le softmax est décrit comme « numériquement indestructible »…

C’est bien sûr une appréciation personnelle. J’ai développé une vraie aversion pour ce style d’écriture générique. Il peut donner une impression de fluidité au premier abord, mais, à la longue, je trouve ça fatigant et artificiel.

Et c’est bien dommage ici car le contenu méritait une voix plus personnelle, comme celle qui fait notamment le charme des cours de Karpathy.

Mon avis final

Le livre ne s’adresse pas aux gens comme moi ou aux ingénieurs machine learning. Il vise surtout les débutants qui possèdent quelques bases en programmation et souhaitent comprendre les mécanismes derrière les grands modèles de langage.

Pour ce public, le contenu est très bon. Malgré certaines imprécisions, le livre apporte suffisamment d’intuition, de mathématiques et de pratique pour constituer une excellente introduction.

Il y a beaucoup de matière, du code, des visualisations et un vrai effort pédagogique. Ce n’est ni une formation vide ni un produit vendu à coups de promesses absurdes.

Au final, le travail accompli mérite d’être salué. Je recommanderais simplement une bonne révision éditoriale pour rendre l’écriture plus naturelle et agréable.