Contexte et objectifs
DeepSeek, startup chinoise d’intelligence artificielle, a publié le code source de DeepInfer, le moteur d’inférence qui alimente ses services de production. L’enjeu déclaré est la réduction du coût de service de modèles de grande taille à grande échelle. Selon le document d’accompagnement, un seul cluster traite 155 trillions de tokens par jour, avec un revenu moyen de 38 $ par GPU et par heure en période creuse. Cette métrique illustre la pression économique qui pousse à optimiser chaque opération de décodage.
Architecture et support matériel
DeepInfer supporte actuellement le modèle DeepSeek‑V4.1‑Flash, version 1017 publiée le week‑end précédent. Le framework s’exécute nativement sur les GPU Nvidia SM100 « Blackwell », ainsi que sur les NPU Ascend 950 de Huawei. Les architectures plus anciennes, dont les GPU Hopper, ne figurent pas dans la liste de compatibilité, ce qui indique une dépendance forte aux nouvelles instructions matérielles (ex. : Tensor‑Core améliorés). Le code réutilise les bibliothèques internes FlashMLA, DeepGEMM et DeepEP, toutes déjà open‑source, et s’appuie sur le socle vLLM comme point de départ.
Techniques d’optimisation du décodage
Deux mécanismes distincts permettent de gagner en débit. Le premier, appelé speculative decoding via DSpark, fait générer à un modèle « draft » cinq tokens simultanément. Un « confidence head » prédit lequel sera accepté par le modèle principal, limitant le calcul de vérification aux candidats les plus probables. Cette sélection réduit d’environ 30 % le nombre de tokens de draft évalués à chaque pas, traduisant une amélioration de 4 % à 7 % du débit dans les conditions de production décrites par DeepSeek.
Le second procédé consiste à ne ré‑exécuter que les 128 derniers tokens d’un prompt à travers les couches du décodeur. Cette restriction « nearly halves total prefill computation », selon les auteurs, car la majorité du travail de pré‑remplissage (prefill) est évitée pour les tokens déjà traités. Les deux techniques sont actuellement limitées aux GPU Nvidia ; les sorties restent déterministes uniquement sur ce matériel.
Déploiement, limites et perspectives
Le code source ne comprend pas la gestion du cache clé‑valeur ni le load‑balancing, deux composants étroitement liés à l’infrastructure interne de DeepSeek. Le README indique que les opérateurs doivent implémenter le découpage du pré‑remplissage et du décodage sur des machines distinctes. La plus petite configuration jugée « efficace » utilise 64 GPU pour le pré‑remplissage et 64 GPU pour le décodage, ce qui montre l’échelle requise pour atteindre les performances annoncées.
En septembre, DeepSeek a introduit le langage de noyau TileLang pour programmer les puces Ascend 950, ouvrant la voie à un déploiement prévu de 160 000 accélérateurs Ascend 950DT dans un nouveau centre de données en Mongolie intérieure. Cette expansion coïncide avec une interdiction du U.S. Department of Homeland Security qui a demandé le retrait des produits DeepSeek des systèmes fédéraux, soulignant les enjeux géopolitiques autour de la technologie d’inférence.
DeepInfer est disponible sur GitHub sous licence Apache 2.0. Le dépôt inclut également la bibliothèque deepseek-recipe, qui traduit les requêtes en séquences de tokens selon la même logique que l’API officielle de DeepSeek. La société a indiqué que le code d’inférence pour les futurs modèles sera ajouté au même référentiel, garantissant ainsi une continuité de l’écosystème open‑source.