Recherche

Comment DeepSeek en est arrivé à ses derniers LLM

Les LLM DeepSeek-R1 et R1-Zero mettent en oeuvre des approches architecturales et des techniques d'entraînement validées avec de précédents modèles.

Publié par Clément Bohic le | Mis à jour le
Lecture
6 min
  • Imprimer
Comment DeepSeek en est arrivé à ses derniers LLM
© généré par IA


Des LLM aussi performants que ceux d'OpenAI et entraînés pour nettement moins cher ? DeepSeek affirme y être parvenu avec ses derniers modèles.

Les plus récents, R1 et R1-Zero, sont optimisés pour le raisonnement. Ils limitent la consommation de ressources en éliminant l'apprentissage supervisé ou en le réduisant à sa proportion congrue, à la faveur d'un apprentissage par renforcement.

L'un et l'autre dérivent d'un modèle qui avait lui-même marqué une avancée en matière de frugalité. En l'occurrence, DeepSeek-V3, publié fin décembre. Il a fallu à peine deux mois et moins de 6 M$ pour en achever l'entraînement.

DeepSeek-V3 a des particularités, dont un système de prédiction multitoken, un framework d'entraînement en précision mixte (FP8), une stratégie de load balancing sans perte auxiliaire et une architecture minimisant le poids des communications internoeuds. Il hérite par ailleurs d'éléments que DeepSeek avait mis en oeuvre sur de précédents modèles.

DeepSeek LLM, un proche de LLaMa

La start-up chinoise avait présenté son premier modèle fin 2023 : DeepSeek LLM, décliné en 7B et 67B, chacun en versions base et instruct (affiné pour le suivi d'instructions).

L'architecture de DeepSeek LLM s'apparente à celle des modèles LLaMa. Le préentraînement s'est fait sur 2000 milliards de tokens, en anglais et en chinois. Entre autres pistes explorées :

  • Déduplication effectuée sur plusieurs instances du dataset pour en améliorer le résultat

  • Nouvelle stratégie d'allocation entre parallélisation du modèle et des données (utilisation du rapport flops/token plutôt que du nombre de paramètres pour représenter l'échelle du modèle)

  • Fine-tuning en deux étapes, d'abord intégral, puis axé sur des données conversationnelles (objectif : éviter que les petits modèles, qui ont besoin de travailler plus longtemps sur du code et des maths, voient leurs performances en conversation trop dégradées)


DeepSeek Coder, formé en mode projet

Dans la foulée de DeepSeek LLM arriva DeepSeek Coder. Il s'agit d'une série de modèles de code (1B, 5,7B, 6,7B, 33B) entraînés sur 1800 milliards de tokens. Plus précisément, 87 % de code, 10 % de langage naturel lié à du code (GitHub Markdown & StackExchange) et 3 % de chinois.

Les corpus d'entraînement ont été structurés au niveau projet. DeepSeek a repéré les dépendances et a ordonné les fichiers de sorte que le contexte sur lequel chacun s'appuie est placé en amont dans la séquence d'input.

Le pré-entraînement s'est fait en deux phases, sur des fenêtres à 4k puis 16k, avant un ajustement supervisé pour le suivi d'instructions (2 milliards de tokens).

L'un des modèles de la famille DeepSeek Coder est fondé sur DeepSeek LLM 7B Base. On en a poursuivi l'entraînement sur 2000 milliards de tokens supplémentaires (70 % de code source, 10 % de Markdown/StackExchange, 7 % de langage naturel lié au code, 7 % de langage naturel lié aux maths, 6 % d'anglais et de chinois).



DeepSeek-VL, premiers pas dans la multimodalité

DeepSeek LLM est aussi à la base des modèles de vision DeepSeek-VL 1.3B et 7B, présentés en mars 2024. Ils utilisent un encodeur hybride associant un module haute résolution (1024 x 1024) et un module d'extraction sémantique (384 x 384).

Le dataset de préentraînement comprend notamment du texte et des image entrelacés (13,1 %), des images légendées (11,1 %) et des tableaux/graphes (2,1 %). DeepSeek y a intégré 70 % de données text-only. Un minimum, a-t-il estimé, pour conserver les capacités de traitement du langage. Dans cette même optique, il a, en outre, lancé le préentraînement avec 100 % de données de langage, puis incorporé progressivement les données de vision.

La partie fine-tuning a elle aussi reposé majoritairement sur du texte (47,9 %). Pour limiter la consommation de ressources, DeepSeek a transféré les acquis du modèle 1.3B vers le modèle 7B. En conclusion, il avait évoqué la perspective d'intégrer du MoE (Mixture-of-Experts) pour passer à l'échelle.


DeepSeek Math a validé l'approche GRPO pour l'apprentissage par renforcement

Annoncé en avril 2024, DeepSeek Math est initialisé à partir de DeepSeek-Coder-V1.5 7B. On en a poursuivi l'entraînement sur 500 milliards de tokens, dont 120 milliards extraits de Common Crawl via un classifieur spécifique entraîné sur OpenWebMath.

Le fine-tuning s'est fait sur des problèmes en anglais et en chinois, avec un accent sur la chaîne de pensée et l'usage d'outils externes. DeepSeek y a ajouté de l'apprentissage par renforcement avec l'algorithme GRPO (Group Relative Policy Optimization). Cette variante de PPO (Proximal Policy Optimization) élimine le modèle critique, réduisant ainsi la consommation de ressources.


Un MoE maison incarné dans DeepSeek-V2...

Le premier modèle MoE de DeepSeek arriva en juin 2024. Son nom : DeepSeek-V2. Au menu, 236 milliards de paramètres, dont 21 milliards actifs par token.

L'implémentation du MoE est spécifique : elle sépare plus finement les experts pour favoriser leur spécialisation et une acquisition plus précise des connaissances. DeepSeek explique aussi isoler certains experts partagés pour éviter la redondance des connaissances.
Autre choix : l'usage du mécanisme d'attention MLA (multi-head latent attention), qui améliore l'inférence en compressant le cache clé-valeur.


Comparé à DeepSeek 67B, DeepSeek-V2 :

  • Réduit de 93,3 % la taille du cache clé-valeur
  • Booste jusqu'à 5,7x le débit en inférence
  • Coûte jusqu'à 42,5 % de moins à entraîner

L'entraînement s'est fait sur 8100 milliards de tokens. L'alignement, sur 1,5 million de conversations. DeepSeek a, là aussi, finalisé le processus avec une étape d'apprentissage par renforcement à base de GRPO. En plus de la version 236B, il en a développé une 16B (2,4 milliards de paramètres actifs).

... et perpétué dans DeepSeek-Coder-V2

DeepSeek finit par appliquer son implémentation MoE à des modèles de code, en l'objet de DeepSeek-Coder-V2.

Point de départ : des checkpoints intermédiaires de DeepSeek-V2 16B et 236B. Arrêtés en l'occurrence à 4 200 milliards de tokens. On les entraîne sur 6000 milliards de tokens supplémentaires (60 % de code source, 10 % de maths et 30 % de langage naturel). Pour l'alignement, le dataset a inclus des données de DeepSeek-Coder, de DeepSeek-Math et de DeepSeek-V2. Le GRPO a permis d'étendre la fenêtre de 16k à 128k et de quasiment tripler le nombre de langages officiellement pris en charge.


En décembre 2024, DeepSeek-V3 succédait à DeepSeek-V2, avec les améliorations sus-évoquées.

Illustration principale générée par IA

Sur le même thème

Voir tous les articles Data & IA
Les Podcasts de Splunk
sponsorisé
D'une mine à la supply chain, de l'OT à l’industrie 4.…

Livres Blancs #security

Voir tous les livres blancs

Vos prochains événements

Voir tous les événements

Voir tous les événements

S'abonner
au magazine
Se connecter
Retour haut de page