Autoren:
(1) Mingjie Liu, NVIDIA {Gleicher Beitrag};
(2) Teodor-Dumitru Ene, NVIDIA {Gleicher Beitrag};
(3) Robert Kirby, NVIDIA {Gleicher Beitrag};
(4) Chris Cheng, NVIDIA {Gleicher Beitrag};
(5) Nathaniel Pinckney, NVIDIA {Gleicher Beitrag};
(6) Rongjian Liang, NVIDIA {Gleicher Beitrag};
(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.
ChipNeMo zielt darauf ab, die Anwendungsmöglichkeiten von großen Sprachmodellen (LLMs) für das industrielle Chipdesign zu erforschen. Anstatt direkt handelsübliche oder Open-Source-LLMs einzusetzen, wenden wir stattdessen die folgenden Techniken zur Domänenanpassung an: benutzerdefinierte Tokenisierer, domänenadaptives kontinuierliches Vortraining, überwachtes Feintuning (SFT) mit domänenspezifischen Anweisungen und domänenadaptierte Abrufmodelle. Wir bewerten diese Methoden anhand von drei ausgewählten LLM-Anwendungen für das Chipdesign: einem Chatbot als technischer Assistent, EDA-Skriptgenerierung sowie Fehlerzusammenfassung und -analyse. Unsere Ergebnisse zeigen, dass diese Techniken zur Domänenanpassung erhebliche Leistungsverbesserungen von LLMs gegenüber allgemeinen Basismodellen in den drei bewerteten Anwendungen ermöglichen und eine bis zu fünffache Reduzierung der Modellgröße bei ähnlicher oder besserer Leistung bei einer Reihe von Designaufgaben ermöglichen. Unsere Erkenntnisse zeigen auch, dass zwischen unseren aktuellen Ergebnissen und den idealen Ergebnissen noch Verbesserungspotenzial besteht. Wir glauben, dass weitere Untersuchungen domänenadaptierter LLM-Ansätze dazu beitragen werden, diese Lücke in Zukunft zu schließen.
In den letzten Jahrzehnten haben Algorithmen und Tools für die Automatisierung des elektronischen Designs (EDA) zu enormen Produktivitätssteigerungen beim Chipdesign geführt. In Verbindung mit der exponentiellen Zunahme der Transistordichte durch das Mooresche Gesetz hat EDA die Entwicklung von funktionsreichen, komplexen SoC-Designs mit Milliarden von Transistoren ermöglicht. In jüngerer Zeit haben Forscher nach Möglichkeiten gesucht, KI auf EDA-Algorithmen und den Chipdesignprozess anzuwenden, um die Produktivität des Chipdesigns weiter zu verbessern [1] [2] [3]. Viele zeitaufwändige Chipdesignaufgaben, die eine Schnittstelle zu natürlichen Sprachen oder Programmiersprachen erfordern, wurden jedoch noch immer nicht automatisiert. Die neuesten Fortschritte bei kommerziellen (ChatGPT, Bard usw.) und Open-Source- (Vicuna [4], LLaMA2 [5] usw.) großen Sprachmodellen (LLM) bieten eine beispiellose Möglichkeit, diese sprachbezogenen Chipdesignaufgaben zu automatisieren. Tatsächlich hat die frühe akademische Forschung [6] [7] [8] Anwendungen von LLMs zur Generierung von RTL untersucht, die einfache Aufgaben in kleinen Designmodulen ausführen und Skripte für EDA-Tools generieren können.
Wir glauben, dass LLMs das Potenzial haben, die Produktivität des Chipdesigns zu steigern, indem sie generative KI nutzen, um viele sprachbezogene Chipdesignaufgaben wie Codegenerierung, Antworten auf technische Fragen über eine natürliche Sprachschnittstelle, Analyse § Gleicher Beitrag und Berichterstellung sowie Fehlerbeurteilung zu automatisieren. In dieser Studie konzentrieren wir uns auf diese drei spezifischen LLM-Anwendungen: einen technischen Assistenten-Chatbot für GPU-ASIC- und Architekturdesigningenieure, der interne HW-Designs versteht und komplexe Designthemen erklären kann; EDA-Skriptgenerierung für zwei domänenspezifische Tools auf Basis von Python und Tcl für VLSI-Timinganalyseaufgaben, die in Englisch angegeben sind; Fehlerzusammenfassung und -analyse als Teil eines internen Fehler- und Problemverfolgungssystems.
Obwohl allgemeine LLMs, die mit riesigen Mengen von Internetdaten trainiert wurden, bemerkenswerte Fähigkeiten bei generativen KI-Aufgaben in verschiedenen Domänen aufweisen (wie von Bubeck et al. in [9] gezeigt), zeigen neuere Arbeiten wie BloombergGPT [10] und BioMedLLM [11], dass domänenspezifische LLM-Modelle ein allgemeines Modell bei domänenspezifischen Aufgaben übertreffen können. Im Bereich des Hardwaredesigns zeigten [6] [12], dass Open-Source-LLMs (CodeGen [13]), die mit zusätzlichen Verilog-Daten optimiert wurden, modernste OpenAI-Modelle übertreffen können. Durch die Anpassung von LLMs auf diese Weise werden auch Sicherheitsrisiken vermieden, die mit dem Senden proprietärer Chipdesigndaten an LLMs von Drittanbietern über APIs verbunden sind. Es wäre jedoch unerschwinglich teuer, domänenspezifische Modelle für jede Domäne von Grund auf neu zu trainieren, da dies oft Millionen von GPU-Trainingsstunden erfordert. Um domänenspezifische Modelle kosteneffizient zu trainieren, schlagen wir stattdessen vor, die folgenden Techniken zu kombinieren: Domain-Adaptive PreTraining (DAPT) [14] von Basismodellen mit domänenangepassten Tokenisierern, Modellausrichtung mittels allgemeiner und domänenspezifischer Anweisungen und Retrieval-Augmented Generation (RAG) [15] mit einem trainierten domänenangepassten Retrievalmodell.
Wie in Abbildung 1 dargestellt, besteht unser Ansatz darin, mit einem grundlegenden Basismodell zu beginnen und DAPT anzuwenden, gefolgt von Supervised Fine-Tuning (SFT). DAPT, auch bekannt als kontinuierliches Vortraining mit domänenspezifischen Daten, hat sich in Bereichen wie biomedizinischen und Informatikpublikationen, Nachrichten und Rezensionen als effektiv erwiesen. In unserem Fall konstruieren wir unseren domänenspezifischen Vortrainingsdatensatz aus einer Sammlung von proprietärem hardwarebezogenem Code (z. B. Software, RTL, Verifizierungstestbenches usw.) und natürlichsprachlichen Datensätzen (z. B. Hardwarespezifikationen, Dokumentation usw.). Wir bereinigen und verarbeiten den Rohdatensatz vor und trainieren dann ein Basismodell mit den domänenspezifischen Daten kontinuierlich vor. Wir nennen das resultierende Modell ein ChipNeMo
Foundation Model. DAPT wird mit einem Bruchteil der im Vortraining verwendeten Token durchgeführt und ist viel billiger, da nur einige tausend GPU-Stunden erforderlich sind. Wie in Abschnitt V beschrieben, halten wir diesen Ansatz für unsere Anwendungsfälle für effektiver als Parameter Efficient Training (PEFT)-Techniken wie LoRA [16].
LLM-Tokenizer konvertieren Text in Token-Sequenzen für das LLM-Training. Ein domänenspezifischer Tokenizer verbessert die Tokenisierungseffizienz, indem er Regeln und Muster für domänenspezifische Begriffe wie häufig in RTL vorkommende Schlüsselwörter anpasst. Für DAPT können wir einen neuen domänenspezifischen Tokenizer nicht von Grund auf neu trainieren, da dies das Basismodell ungültig machen würde. Anstatt ChipNeMo auf den vorab trainierten Allzweck-Tokenizer zu beschränken, der vom Basismodell verwendet wird, passen wir den vorab trainierten Tokenizer stattdessen an unseren Chipdesign-Datensatz an und fügen nur neue Token für domänenspezifische Begriffe hinzu.
ChipNeMo-Grundmodelle sind Vervollständigungsmodelle, die eine überwachte Feinabstimmung (Supervised Fine-Tuning, SFT) erfordern, um sich an Aufgaben wie Chat anzupassen. Wir verwenden größtenteils öffentlich verfügbare allgemeine Chat-Anweisungsdatensätze für Multi-Turn-Chat zusammen mit einer kleinen Menge domänenspezifischer Anweisungsdatensätze, um SFT auf dem ChipNeMo-Grundmodell durchzuführen, wodurch das ChipNeMo-Chat-Modell entsteht. Wir stellen fest, dass SFT mit einem allgemeinen Chat-Anweisungsdatensatz ausreicht, um die ChipNeMo-Grundmodelle mit Abfragen im Bereich Chipdesign abzustimmen. Wir haben außerdem eine kleine Menge aufgabenspezifischer SFT-Anweisungsdaten hinzugefügt, was die Abstimmung weiter verbessert. Wir haben mehrere ChipNeMo-Grund- und Chat-Modelle basierend auf Varianten von LLaMA2-Modellen trainiert, die als Basis-Grundmodell verwendet wurden.
Um die Leistung der Chatbot-Anwendung des technischen Assistenten zu verbessern, nutzen wir auch Retrieval Augmented Generation (RAG). RAG ist ein Open-Book-Ansatz, um LLMs einen präzisen Kontext für Benutzeranfragen zu geben. Es ruft relevantes Fachwissen aus seinem Datenspeicher ab, um die Antwortgenerierung bei einer Benutzeranfrage zu erweitern. Diese Methode zeigt eine deutliche Verbesserung bei der Verankerung des Modells im Kontext einer bestimmten Frage. Entscheidend ist, dass wir beim Feinabstimmen eines vorab trainierten Abrufmodells mit Domänendaten erhebliche Verbesserungen bei der Trefferquote beim Abrufen beobachtet haben. Dies führte zu noch weiteren Verbesserungen der Modellqualität.
Wir heben die folgenden Beiträge und Erkenntnisse im Zusammenhang mit der Anpassung von LLMs an den Bereich Chipdesign hervor:
• Wir demonstrieren die domänenangepasste Wirksamkeit von LLM in drei Anwendungsfällen: einem Chatbot für technische Assistenten, der Generierung von EDA-Tool-Skripten sowie der Zusammenfassung und Analyse von Fehlern. Wir erreichen eine Punktzahl von 7,4 von 10 Punkten für die Antworten des Chatbots für technische Assistenten auf der Grundlage von Expertenbewertungen, erreichen mehr als 50 % Korrektheit bei der Generierung von EDA-Skripten und eine Expertenbewertung von 4 bis 5 von 7 Punkten für Zusammenfassungen und Aufgaben zur Auftragsidentifizierung.
• Domänenangepasste ChipNeMo-Modelle übertreffen alle Standard-LLMs bei der Bewertung sowohl anhand von Multiple-Choice-AutoEval-Benchmarks für bereichsspezifische Autos als auch anhand menschlicher Bewertungen für Anwendungen deutlich.
• Für Aufgaben, bei denen das Modell Text aus dem Kontext der Eingabeaufforderung generieren kann (z. B. Chat mit RAG-Treffern, Zusammenfassung, Codegenerierung mit bereitgestellter Dokumentation), schließt die Domänenanpassung die Lücke zwischen einem hochmodernen LLaMA2-70B-Modell und einem viel kleineren 13B-Modell (ein geringer inkrementeller Trainingaufwand ermöglicht eine bis zu 5-fache Parameterreduzierung für geringere Inferenzkosten).
• Angepasste Tokenizer reduzieren die Anzahl der DAPT-Token um bis zu 3,3 %, ohne die Effektivität der Anwendungen zu beeinträchtigen.
• SFT auf zusätzlichen 1,1 K domänenspezifischen Anweisungen verbessert die Anwendungskompetenz erheblich um bis zu 0,33 auf einer 10-Punkte-Skala, 18 % Korrektheit und 0,79 auf einer 7-Punkte-Skala im Engineering-Assistent-Chatbot, bei der Generierung von EDA-Skripten sowie bei der Fehlerzusammenfassung und -analyse.
• Durch die Feinabstimmung unseres ChipNeMo-Abrufmodells mit domänenspezifischen Daten wird die Trefferquote des Retrievers im Vergleich zu einem vorab trainierten Retriever auf dem neuesten Stand der Technik um 30 % verbessert, was wiederum die Gesamtqualität der RAG-Antworten verbessert.
Das Dokument ist wie folgt aufgebaut. Abschnitt II beschreibt unseren Datensatz und die automatischen Bewertungsbenchmarks zur Überprüfung des Domänenwissens. Abschnitt III umreißt die verwendeten Domänenanpassungs- und Trainingsmethoden, einschließlich des angepassten Tokenizers, DAPT, SFT und RAG. Abschnitt IV enthält Einzelheiten zu jeder Anwendung und dem Versuchsaufbau. Abschnitt V beschreibt die Versuchsergebnisse, einschließlich menschlicher Bewertungen für jede Anwendung. Abschnitt VI erörtert die ChipNeMo-Einschränkungen und zukünftige Arbeiten. Abschnitt VII beschreibt relevante LLM-Methoden und andere Arbeiten, die sich auf LLMs für das Chipdesign konzentrieren. Abschließend werden im Anhang vollständige Ergebnisse zusammen mit zusätzlichen Modelltrainingsdetails und Beispielen für von den Anwendungsfällen generierten Text dargestellt.
Dieses Dokument ist auf Arxiv unter der CC 4.0-Lizenz verfügbar .