1 points par GN⁺ 16 일 전 | 1 commentaires | Partager sur WhatsApp
  • I-DLM est le premier cas où un modèle de langage à diffusion atteint à la fois une qualité au niveau des modèles AR (Autoregressive) et une vitesse de génération parallèle
  • Grâce à Introspective Strided Decoding (ISD), il génère de nouveaux tokens et vérifie les tokens précédents en un seul passage avant
  • I-DLM-8B améliore les résultats de +26 points sur AIME-24 et de +15 points sur LiveCodeBench-v6 par rapport à LLaDA-2.1-mini (16B), avec deux fois moins de paramètres
  • Avec Gated LoRA, il met en œuvre une accélération sans perte au niveau bit à bit (lossless) et reste entièrement compatible avec l’infrastructure SGLang
  • Les modèles de langage à diffusion démontrent un potentiel de déploiement pratique à grande échelle grâce à l’apprentissage de la cohérence interne et à l’optimisation du décodage parallèle

Aperçu

  • I-DLM (Introspective Diffusion Language Model) est un modèle qui conserve la capacité de génération parallèle de tokens des modèles de langage à diffusion (DLM) existants, tout en résolvant le problème de cohérence introspective (introspective consistency) pour atteindre une qualité au niveau des modèles AR
  • Grâce à Introspective Strided Decoding (ISD), il génère de nouveaux tokens tout en vérifiant les tokens précédents en un seul passage avant
  • I-DLM-8B est le premier DLM à atteindre une qualité équivalente à celle d’un modèle AR de taille comparable ; avec moitié moins de paramètres que LLaDA-2.1-mini (16B), il progresse de +26 points sur AIME-24 et de +15 points sur LiveCodeBench-v6
  • Dans un environnement à forte concurrence (C=64), il atteint un throughput 2,9 à 4,1 fois supérieur et prend en charge une accélération sans perte au niveau bit à bit (lossless) via Gated LoRA

Pourquoi la cohérence introspective est nécessaire

  • Les modèles AR effectuent la génération et l’auto-vérification en même temps lors d’un seul passage avant, alors que les DLM existants n’apprennent que le denoising, ce qui entraîne un manque de cohérence introspective
  • Les trois goulets d’étranglement des DLM existants
    • Faible cohérence introspective : SDAR 0.699 vs I-DLM 0.984
    • Calcul inefficace : surcharge d’environ 7,8x pour TiDAR vs environ 2,5x pour I-DLM
    • Incompatibilité d’infrastructure : SDAR slope=84 vs I-DLM=549

Méthodologie d’I-DLM

  • Entraînement à la cohérence introspective

    • Transformation d’un modèle AR préentraîné via l’attention causale (causal attention), un logit shift et une fonction objectif entièrement masquée (all-masked)
  • Introspective Strided Decoding (ISD)

    • Exécute en parallèle la génération de N tokens et la vérification des tokens précédents en un seul passage avant
    • Vérifie les résultats générés à l’aide du critère d’acceptation p/q (acceptance criterion)
  • Serving compatible AR

    • Intégration directe dans l’infrastructure SGLang grâce à une structure d’attention causale stricte
    • Fonctionne dans le même environnement de serving qu’un modèle AR, sans infrastructure custom séparée

Résultats de performance

  • I-DLM est le premier DLM dont la qualité égale celle d’un modèle AR de même taille, et dépasse les DLM existants sur 15 benchmarks
  • Principaux résultats de benchmark

    • Connaissances et raisonnement : ARC-C 96.8, MMLU-Pro 79.7, GPQA-D 62.1
    • Mathématiques : AIME-24 83.3, AIME-25 80.0, MATH-500 97.6
    • Code : HumanEval 96.3, MBPP 94.6, LCB-v6 57.1
    • Exécution d’instructions : IFEval 84.7
    • I-DLM-32B affiche des performances supérieures à LLaDA-2.1-flash (100B)

Throughput

  • Il atteint un throughput 2,9 à 4,1 fois supérieur à celui de LLaDA-2.1-mini et de SDAR pour des tailles de batch de 1 à 64
  • En environnement memory-bound, le TPF (Token Per Forward) approxime le gain de vitesse réel
    • I-DLM(N=4, p=0.9) : TPF≈2.9, efficacité 1.22
    • SDAR(N=4, p=0.5) : TPF≈1.1, efficacité 0.31
  • Une efficacité supérieure à 1 signifie que le décodage parallèle réduit la quantité totale de calcul par rapport à AR

Speedup Factor Explorer

  • Taux d’acceptation p=0.9, surcharge R-ISD LoRA α=1.12
  • Formule d’approximation du gain de vitesse :

    • Memory-bound : Speedup ≈ TPF = (2+p+...+pN-2)/(2-pN-1)
    • R-ISD (sans perte) : Speedup ≈ TPF/α
    • Gated LoRA n’est activé qu’aux positions MASK, ce qui garantit une identité bit à bit avec la sortie AR

Documentation et ressources

  • L’ensemble du processus — installation, entraînement, inférence, serving, R-ISD sans perte, modèles et benchmarks — est fourni sous forme de documentation web
  • Installation

    • Cloner le dépôt GitHub puis exécuter install.sh
  • Quick Start

    • Il est possible d’envoyer des requêtes de chat completion via l’API REST après avoir lancé un serveur SGLang
  • Training

    • Entraînement en combinant des séquences entièrement masquées et des séquences propres
    • 4.5B tokens, 8×H100 GPU, 2 epochs, curriculum de stride (N=2→3)
  • Inference & ISD

    • Proposition de nouveaux tokens (q) aux positions MASK, vérification (p) aux positions propres
    • Le critère d’acceptation min(1, p(x)/q(x)) garantit la distribution AR
    • Avec un stride N=4, TPF=2.96, soit un gain de vitesse d’environ 3x
  • Serving (SGLang)

    • Cache KV paginé**,** capture de graphe CUDA (+42~76%), boucle de décodage stationary-batch (+11~21%), proposition Argmax (+11~15%), noyau d’attention paged-only (+10~14%)

      • L’ensemble du système améliore le throughput de 2,1 à 2,5 fois par rapport à la base
  • Lossless R-ISD

    • Gated LoRA (rank=128) n’est appliqué qu’aux positions MASK
    • La sortie est strictement identique à celle du modèle AR de base
    • Surcharge d’environ 1.12x
  • Model Zoo

    • I-DLM-8B : basé sur Qwen3-8B, qualité équivalente à AR
    • I-DLM-32B : basé sur Qwen3-32B, dépasse LLaDA-2.1-flash (100B)
    • I-DLM-8B-LoRA : avec application de Gated LoRA (rank=128)
  • Benchmarks

    • Évalué sur 15 benchmarks (connaissances, mathématiques, code, exécution d’instructions)
    • Scripts de reproduction fournis

Informations de citation

  • Article : Introspective Diffusion Language Models (arXiv:2604.11035, 2026)
  • Institutions de recherche : Together AI, UIUC, Princeton, Stanford, UT Austin
  • Auteurs : Yifan Yu et 14 autres

Conclusion

  • I-DLM est le premier exemple d’un modèle de langage à diffusion qui atteint à la fois la qualité et la vitesse d’un modèle AR
  • Il dépasse les limites de la génération parallèle grâce à l’apprentissage de la cohérence introspective et au décodage ISD
  • Sa compatibilité avec SGLang, son accélération sans perte et sa forte montée en charge en throughput démontrent sa viabilité pour un déploiement pratique

1 commentaires

 
GN⁺ 16 일 전
Avis Hacker News
  • Si j’ai bien compris, c’est une approche assez étonnante
    Ils ont modifié l’autoregressor de Qwen avec plusieurs techniques pour qu’il fonctionne comme un diffuser, et les performances seraient bien meilleures que celles des diffuseurs existants
    Grâce à des adaptateurs LoRA, ils peuvent aligner la sortie sur la distribution du modèle de base, ce qui permet d’obtenir des résultats identiques au bit près avec la même seed, tout en étant presque deux fois plus rapides
    Je suis plus un expérimentateur enthousiaste qu’un expert, mais ça ressemble vraiment à une avancée intéressante

    • Il y a de quoi être enthousiaste. Cet article affirme faire le pont entre la qualité AR et le décodage parallèle. Le mode auxiliaire LoRA sans perte est particulièrement impressionnant
    • Je ne comprends pas comment on peut comparer la sortie du modèle de base sans la générer directement. Dans ce cas, je me demande ce que signifie vraiment cette comparaison
    • En réalité, c’est davantage une variante de la multi-token prediction et du speculative decoding qu’une vraie diffusion
      Il n’y a pas de processus de denoising, et la structure reste causale
      Concrètement, on l’entraîne à prédire plusieurs tokens d’un coup à l’aide de plusieurs tokens MASK, puis en inférence on les génère en parallèle pour accélérer le processus
      Par exemple, on ajoute 5 MASK après « what is 2+2 » pour prédire les 5 tokens suivants en une seule fois
      Cela permet d’effectuer des opérations matrix-matrix au lieu de matrix-vector, avec une meilleure efficacité mémoire
      En revanche, plus k (le nombre de tokens prédits) augmente, plus la qualité chute rapidement, et l’article montre déjà une dégradation à k=8
      Au final, c’est du self-speculative decoding basé sur une prédiction à 4 tokens ; ça ne supprime pas totalement les limites existantes, mais c’est une méthode d’entraînement intéressante
      Voir ce billet précédent pour plus d’explications
  • Je me demande quelles sont les différences par rapport à DFlash ou DDTree

  • L’an dernier, j’ai brièvement vu des réponses de Gemini apparaître progressivement comme si elles utilisaient une approche par diffusion
    Je ne sais pas si c’était une expérimentation ou simplement un effet visuel, mais c’était intéressant

  • Je me demande si quelqu’un ici expérimente sérieusement la diffusion pour la génération de texte

    • Inception Labs semble travailler sur ce domaine depuis assez longtemps
      La vitesse est impressionnante, mais la latence du premier token et la qualité de sortie restent des défis
      Si la vitesse et la précision progressent juste un peu, cela pourrait devenir tout à fait pratique pour des modèles peu coûteux ou des tâches asynchrones
      Il serait aussi intéressant d’expérimenter en diffusant des textes plus longs d’un seul coup afin de forcer une meilleure capacité de raisonnement
    • Pour l’instant, c’est surtout exploré dans le domaine des LLM locaux pour le speculative decoding
      Voir aussi l’article d’Emergent Mind sur le sujet
    • Mercury 2 est très séduisant pour des expérimentations UX en termes de latence et de prix
      Il fonctionne bien plus fluidement que l’ancien Gemini Flash Lite, ce qui le rend adapté à des tâches comme le tagging automatique ou la génération de liens
      En revanche, il n’atteint pas encore le niveau de Haiku 3.5 pour les performances d’appel d’outils
      Pour les tâches avec beaucoup d’entrée et peu de sortie, les dLLM conviennent bien, et il y a aussi du potentiel pour des usages comme l’autocomplétion d’onglets
    • J’ai aussi fait quelques essais, et cela demande une approche intuitive différente de celle des LLM classiques. Pour certains problèmes précis, c’est très adapté
    • Je suis en train d’implémenter WeDLM en Swift, mais les performances sont encore insuffisantes
      La génération se fait de gauche à droite, mais la diffusion n’a lieu qu’à l’intérieur d’une fenêtre glissante. Comme la fenêtre fait environ 16 tokens, la différence reste limitée
  • Je ne suis pas expert, mais avec la diffusion, j’aurais pensé qu’il fallait générer toute la sortie en une seule fois
    Or, le modèle I-LDM semble utiliser le contexte précédent pour générer le bloc suivant

    • La génération par blocs apporte un gros gain de vitesse
      Par exemple, générer deux tokens à la fois donne presque un gain proche de 2x
      Plus la taille des blocs augmente, plus la vitesse globale de génération s’améliore, au point que la différence avec une génération entièrement en une fois devient faible
      Au final, l’essentiel est de réduire autant que possible la perte de qualité, et cet article semble bien y parvenir
  • Je me demande s’il faut passer à sglang pour utiliser ce type de modèle, ou si c’est déjà pris en charge dans vLLM

  • Je pense depuis longtemps que les architectures de diffusion par blocs représentent l’avenir des LLM
    Une structure capable d’ajuster dynamiquement la vitesse de génération et de se corriger elle-même pendant la génération — cela pourrait ressembler à une forme de mémoire à court terme humaine
    Je ne maîtrise pas vraiment les principes mathématiques, mais j’espère que cela ira dans cette direction

  • Dans les notes de version, je vois

    2025-04-12: publication du code et sortie de I-DLM-8B, 32B, 8B-LoRA
    La date a l’air ancienne ; je me demande si ce n’est pas une vieille version

    • C’est simplement une erreur sur l’année. J’ai vérifié qu’il avait bien été mis en ligne sur HuggingFace il y a seulement quelques jours
  • Je me demande si on peut utiliser ce modèle dès maintenant

  • Je me demande si un modèle de diffusion pourrait générer un bloc, faire une auto-révision (introspection) du résultat, puis le régénérer dans une forme de raisonnement itératif

    • Oui. On peut l’implémenter en réinjectant la première sortie dans le modèle pour la réévaluer, un peu comme un modèle de raisonnement AR