paint-brush
ChipNeMo : LLM adaptés au domaine pour la conception de puces : discussionpar@textmodels

ChipNeMo : LLM adaptés au domaine pour la conception de puces : discussion

Trop long; Pour lire

Les chercheurs présentent ChipNeMo, qui utilise l'adaptation de domaine pour améliorer les LLM pour la conception de puces, permettant ainsi de réduire la taille du modèle jusqu'à 5 fois avec de meilleures performances.
featured image - ChipNeMo : LLM adaptés au domaine pour la conception de puces : discussion
Writings, Papers and Blogs on Text Models HackerNoon profile picture
0-item

Auteurs:

(1) Mingjie Liu, NVIDIA {Contribution égale} ;

(2) Teodor-Dumitru Ene, NVIDIA {Contribution égale} ;

(3) Robert Kirby, NVIDIA {Contribution égale} ;

(4) Chris Cheng, NVIDIA {Contribution égale} ;

(5) Nathaniel Pinckney, NVIDIA {Contribution égale} ;

(6) Rongjian Liang, NVIDIA {Contribution égale} ;

(7) Jonah Alben, NVIDIA ;

(8) Himyanshu Anand, NVIDIA ;

(9) Sanmitra Banerjee, NVIDIA ;

(10) Ismet Bayraktaroglu, NVIDIA ;

(11) Bonita Bhaskaran, NVIDIA ;

(12) Bryan Catanzaro, NVIDIA ;

(13) Arjun Chaudhuri, NVIDIA ;

(14) Sharon Clay, NVIDIA ;

(15) Bill Dally, NVIDIA ;

(16) Laura Dang, NVIDIA ;

(17) Parikshit Deshpande, NVIDIA ;

(18) Siddhanth Dhodhi, NVIDIA ;

(19) Sameer Halepete, NVIDIA ;

(20) Eric Hill, NVIDIA ;

(21) Jiashang Hu, NVIDIA ;

(22) Sumit Jain, NVIDIA ;

(23) Brucek Khailany, NVIDIA ;

(24) George Kokai, NVIDIA ;

(25) Kishor Kunal, NVIDIA ;

(26) Xiaowei Li, NVIDIA ;

(27) Charley Lind, NVIDIA ;

(28) Hao Liu, NVIDIA ;

(29) Stuart Oberman, NVIDIA ;

(30) Sujeet Omar, NVIDIA ;

(31) Sreedhar Pratty, NVIDIA ;

(23) Jonathan Raiman, NVIDIA ;

(33) Ambar Sarkar, NVIDIA ;

(34) Zhengjiang Shao, NVIDIA ;

(35) Hanfei Sun, NVIDIA ;

(36) Pratik P. Suthar, NVIDIA ;

(37) Varun Tej, NVIDIA ;

(38) Walker Turner, NVIDIA ;

(39) Kaizhe Xu, NVIDIA ;

(40) Haoxing Ren, NVIDIA.

Tableau des liens

VI. DISCUSSION

A. Considérations relatives à l'adaptation du domaine


Bien que les modèles ChipNeMo adaptés au domaine obtiennent des améliorations significatives par rapport à leurs modèles de base correspondants, nous observons également que le plus grand LLaMA2 70B peut parfois atteindre une précision similaire à celle du ChipNeMo, comme le montrent les figures 8, 9 et 10. Des travaux récents ont exploité ces modèles puissants pour effectuer des tâches de conception de puces.


Cependant, il est important de considérer les avantages en termes de rentabilité découlant de l’utilisation d’un modèle plus petit. Pape et coll. démontrent que les coûts d'inférence sur un modèle 8B sont 8 à 12 fois inférieurs à ceux d'un modèle 62B pour des cibles de latence égales [34]. De plus, la réduction de la taille du modèle peut conduire à des augmentations spectaculaires de la vitesse d’inférence en permettant à un modèle de s’adapter à un seul GPU ou nœud là où il ne pourrait pas le faire autrement [35]. Notre modèle ChipNeMo 13B peut être chargé dans la mémoire d'un seul GPU A100 sans aucune quantification, contrairement au modèle LLaMA2 70B. Cela entraîne une augmentation significative de la vitesse d'inférence dans le cadre d'un fonctionnement normal du GPU, qui peut être échangée contre une réduction significative des coûts d'inférence si le GPU est sous-cadencé.


Ainsi, au moment de décider entre l’utilisation d’un modèle généraliste plus grand et d’un modèle spécialisé plus petit dans un environnement de production, les critères suivants doivent être pris en compte :


• Compromis entre formation et inférence : des modèles adaptés à un domaine plus petit peuvent égaler la précision de modèles à usage général plus grands. Même si l'adaptation de domaine entraîne des coûts initiaux supplémentaires, l'utilisation de modèles plus petits entraîne une réduction significative des coûts d'exploitation.


• Caractère unique du cas d'utilisation : comme le montrent les figures 6, 9 et 10, les modèles adaptés au domaine montrent les plus grandes améliorations sur des tâches rarement présentes dans le domaine public, telles que l'écriture de code dans des langages ou des bibliothèques propriétaires. En effet, nos données montrent que même lorsqu’ils sont fournis avec des contextes triés sur le volet, les grands modèles à usage général ont du mal à égaler la précision des modèles adaptés au domaine dans de tels scénarios.


• Disponibilité des données de domaine : l'adaptation de domaine fonctionne mieux lorsqu'il existe une grande quantité de données de formation, c'est-à-dire des milliards de jetons de formation. C'est souvent le cas pour les grandes entreprises et les projets qui ont accumulé une grande quantité de documents et de codes internes, mais ce n'est pas nécessairement le cas pour les petites entreprises ou les projets.


• Diversité des cas d'utilisation finale : il est possible d'affiner un modèle à usage général pour une tâche particulière, mais les modèles adaptés au domaine sont adaptés à un ensemble diversifié de tâches dans un domaine. Bien que nous ne démontrions que trois cas d'utilisation des modèles ChipNeMo dans ce travail, ils peuvent être facilement réutilisés pour d'autres cas d'utilisation avec suffisamment de données SFT.


B. Écart de performance


Bien que ChipNeMo obtienne des résultats impressionnants dans nos applications sélectionnées, comme le montre l'annexe E, les résultats d'évaluation de toutes les applications montrent toujours un écart important par rapport aux performances des experts humains. Nous envisageons les approches suivantes pour combler cet écart de performance :


1) Collecte de données : nous pouvons étendre l'ensemble de données DAPT pour inclure davantage de données propriétaires internes. De plus, nous prévoyons d'ajouter davantage de jeux d'instructions spécifiques à des tâches pour SFT, car il est prouvé que le SFT spécifique à une tâche améliore de manière significative les résultats de l'évaluation.


2) Modèle de base : nous nous attendons à ce que des modèles de base meilleurs et plus grands puissent améliorer les performances, comme le LLaMA2 70B. Nous pouvons également explorer l'application de DAPT à des modèles de base spécifiques au code tels que Code LLaMA [32] pour les tâches de génération de code.


3) Formation : Nous prévoyons également de procéder à un apprentissage par renforcement à partir de commentaires humains (RLHF) [36] sur le modèle de chat ChipNeMo pour le rendre plus polyvalent. Nous prévoyons d'exploiter des modèles de récompense pré-entraînés formés sur des ensembles de données à usage général. Nous prévoyons également de mener une formation sur un contexte long [37] pour surmonter le défi où un contexte long est nécessaire, par exemple dans l'application de résumé de bogues. En général, une prise en charge contextuelle plus longue contribuerait à améliorer les méthodes basées sur la récupération pour l'assistance par chat ainsi que la génération de code.


4) Récupération : nous étudierons plus en détail de meilleures méthodes RAG pour le chatbot de l'assistant d'ingénierie et la génération de scripts EDA. Pour le chatbot assistant d'ingénierie, nous pouvons créer différents magasins de données pour différents domaines d'application. Nous pouvons également intégrer des moteurs de recherche d'entreprise à RAG pour trouver un contexte pertinent pour un ensemble diversifié de problèmes. Pour la génération de code, nous pouvons étudier la récupération automatisée du contexte à partir du code et de la documentation existants.


C. Méthodologies de conception basées sur les agents


Les cas d'utilisation que nous avons expérimentés dans ce travail sont des applications simples de la capacité d'invite et de réponse des LLM. Les agents font référence à l'utilisation d'un LLM pour choisir une séquence d'actions à entreprendre, où un LLM agit comme un moteur de raisonnement pour piloter des outils externes. Les processus de conception de puces impliquent de nombreux outils et méthodologies EDA existants. Nous pensons que certaines de ces méthodologies peuvent être pilotées par des agents alimentés par des LLM adaptés au domaine, tels que les modèles ChipNeMo. Nous prévoyons de travailler sur des méthodologies de conception basées sur des agents pour la vérification et l'optimisation à l'avenir.


Cet article est disponible sur arxiv sous licence CC 4.0.