Apple et l'Université de Hong Kong Dévoilent DiffuCoder : Un Modèle de Diffusion Spécialisé pour la Génération de Code
Apple et l'Université de Hong Kong Introduisent DiffuCoder : Un Modèle de Diffusion Spécialisé pour la Génération de Code Apple et l'Université de Hong Kong (HKU) ont introduit DiffuCoder, un modèle de diffusion masquée à 7 milliards de paramètres (7B) spécialement conçu pour la génération de code. Ce modèle représente une avancée significative dans le domaine de la synthèse de code, en offrant une approche globale de planification qui diffère des méthodes séquentielles traditionnelles. Travaillé sur 130 billions de tokens, ce modèle sert de terrain d’étude important pour explorer les comportements des grands modèles basés sur la diffusion (dLLMs) et améliorer les techniques d'entraînement postérieur. Les Diffusion LLMs comme Paradigme de Changement dans la Génération de Code Les grands modèles linguistiques (LLMs) ont révolutionné le traitement automatique des langues naturelles en réalisant des performances impressionnantes sur une variété de tâches, allant des dialogues aux générations de code. Les modèles de diffusion masquée sont apparus comme une alternative prometteuse et ont été mis à l'échelle pour créer des dLLMs tels que LLaDA et Dream. Ces modèles raffermissent de manière itérative toute la séquence en parallèle, permettant une planification globale du contenu. Cette approche est particulièrement adaptée à la génération de code car elle implique souvent une révision non séquentielle et répétée. Cependant, la performance des dLLMs open-source reste peu documentée, notamment en raison des gains marginaux des efforts d'entraînement postérieur ou de l'utilisation de la décodage semi-autoregressif, qui écarte la nature de planification globale de la diffusion. Évolution des Modèles de Diffusion de Texte et leur Impact sur la Synthèse de Code Parmi les premiers modèles de diffusion de texte figurent les modèles de diffusion masquée, qui ont été récemment mis à l'échelle pour produire des dLLMs tels que DiffuLLaMA, LLaDA, et Dream. Le block diffusion propose une approche hybride en appliquant la diffusion au sein de chaque bloc. Des modèles multimodaux comme LaViDa, MMaDA, et Dimple combinent les modèles de diffusion de texte avec des modèles visuels. En ce qui concerne la génération de code, CodeFusion a été le premier à intégrer la diffusion, mais il est limité aux modèles de petite échelle et aux tâches simples. Des dLLMs à échelle commerciale plus récents, comme Mercury et Gemini, présentent des performances similaires à celles des modèles de code autoregressif de pointe. Néanmoins, les méthodes actuelles de renforcement par apprentissage (RL) pour les dLLMs, comme d1 et MMaDA utilisant GRPO, dépendent fortement du décodage par block diffusion pendant l'exécution et l'évaluation. DiffuCoder : Un Modèle de Diffusion Spécialisé pour la Génération de Code DiffuCoder est initié à partir du modèle de base Qwen-2.5-Coder et bénéficie d'un entraînement continu à l'aide d'un corpus pré-entraîné de 400 billions de tokens provenant de RefineCode et Stackv2. L'entraînement se déroule en quatre étapes : Pré-entraînement d'adaptation : Utilisation de 400 billions de tokens, arrêt prématuré après le traitement de 65 billions de tokens. Entraînement intermédiaire : Utilisation de 16 billions de tokens de données de code d'adoucissement, entraîné pour 4 époques, totalisant 65 billions de tokens. Ajustement des instructions : Utilisation de 436 000 échantillons d'ajustement fin (SFT) pour améliorer la compréhension des instructions. Entraînement postérieur : Utilisation de l'algorithme coupled-GRPO avec 21 000 échantillons difficiles provenant d'Acecoder-87K. L'analyse des environnements d'évaluation, construits à partir de trois benchmarks de code (HumanEval, MBPP, et EvalPlus), ainsi que de BigCodeBench, révèle que DiffuCoder atteint des performances équivalentes à celles de Qwen2.5-Coder et OpenCoder. Cependant, tous les dLLMs montrent des améliorations marginales par rapport à leurs modèles de base après l'ajustement des instructions, contrairement à Qwen2.5-Coder+SFT qui gagne en efficacité sur les mêmes données. L'ajustement fin avec coupled-GRPO optimise le température d'échantillonnage durant l'évaluation, passant de 0.2 à des valeurs plus élevées, ce qui affûte la distribution de tokens et réduit la dépendance au décodage strictement autoregressif, améliorant la capacité de génération en parallèle. Importance des Métriques Autoregressives Locales et Globales Les chercheurs ont introduit des métriques d'autoregressivité locale et globale pour mesurer dans quelle mesure la génération suit un motif gauche-droite. L'étude démontre que les dLLMs subissent un effet de puits d'entropie, provoquant un biais causal fort lors de la génération conditionnelle. DiffuCoder devient plus flexible dans l'ordre de génération des tokens à mesure que la température d'échantillonnage augmente de 0.2 à 1.2, ce qui lui permet d'atteindre une précision pass@10 plus élevée en échappant aux contraintes séquentielles strictes. Coupled-GRPO et le Futur des Modèles de Diffusion Basés sur le Code Les chercheurs présentent également coupled-GRPO, un algorithme d'apprentissage par renforcement qui respecte la nature non-autoregressive des dLLMs grâce à une technique de couplage d'échantillonnage pour une estimation de la vraisemblance plus précise. Coupled-GRPO améliore significativement les performances de DiffuCoder, soulignant l'efficacité des méthodes d'apprentissage par renforcement alignées avec les principes de diffusion. Cette recherche offre une compréhension approfondie des dLLMs et pose les bases d'une investigation future sur leurs applications dans le raisonnement complexe et les tâches génératives. Évaluation par les Professionnels de l'Industrie et Profil de l'Entreprise Cette étude est saluée par les professionnels de l'industrie comme une contribution majeure à la compréhension et à l'amélioration des modèles de diffusion pour la génération de code. DiffuCoder, en tant que modèle open-source, offre une valeur unique en permettant à la communauté scientifique de se pencher sur ses mécanismes et de développer de nouvelles techniques. Apple, une entreprise leader dans le domaine de l'intelligence artificielle et de la technologie, continue ainsi d'innover en offrant des outils et des données précieuses pour avancer les frontières de la science et de l'ingénierie logicielle.