paint-brush
ChipNeMo: 칩 설계를 위한 도메인 적응 LLM: 개요 및 소개~에 의해@textmodels

ChipNeMo: 칩 설계를 위한 도메인 적응 LLM: 개요 및 소개

너무 오래; 읽다

연구원들은 도메인 적응을 사용하여 칩 설계를 위한 LLM을 향상시켜 더 나은 성능으로 모델 크기를 최대 5배까지 줄이는 ChipNeMo를 선보입니다.
featured image - ChipNeMo: 칩 설계를 위한 도메인 적응 LLM: 개요 및 소개
Writings, Papers and Blogs on Text Models HackerNoon profile picture
0-item

저자:

(1) Mingjie Liu, NVIDIA {동등 기여};

(2) Teodor-Dumitru Ene, NVIDIA {동등 기여};

(3) Robert Kirby, NVIDIA {동등 기여};

(4) Chris Cheng, NVIDIA {동등 기여};

(5) Nathaniel Pinckney, NVIDIA {동등 기여};

(6) Rongjian Liang, NVIDIA {동등 기여};

(7) 조나 알벤(NVIDIA);

(8) 히미안슈 아난드, 엔비디아;

(9) 산미트라 바네르지(NVIDIA);

(10) 이스멧 베이락타로글루(Ismet Bayraktaroglu), NVIDIA;

(11) 보니타 바스카란(NVIDIA);

(12) 브라이언 카탄자로(NVIDIA);

(13) 아르준 차우두리(Arjun Chaudhuri), 엔비디아;

(14) 샤론 클레이, 엔비디아;

(15) 빌 댈리(Bill Dally), 엔비디아;

(16) 로라 당(NVIDIA);

(17) Parikshit Deshpande, NVIDIA;

(18) 싯단스 도디(Siddanth Dhodhi), 엔비디아;

(19) 사미르 할레페테(NVIDIA);

(20) 에릭 힐, 엔비디아;

(21) 후자상(Jiashang Hu), 엔비디아;

(22) 수미트 자인(NVIDIA);

(23) 브루섹 카일라니(NVIDIA);

(24) 조지 코카이(George Kokai), 엔비디아;

(25) 키쇼르 쿠날(Kishor Kunal), 엔비디아;

(26) 샤오웨이 리, 엔비디아;

(27) 찰리 린드, 엔비디아;

(28) 하오 리우, 엔비디아;

(29) 스튜어트 오버만(NVIDIA);

(30) 수지트 오마르(NVIDIA);

(31) 스리다르 프래티(NVIDIA);

(23) 조나단 레이먼(NVIDIA);

(33) 암바르 사르카르(Ambar Sarkar), 엔비디아;

(34) 정장샤오(Zhengjiang Shao), 엔비디아;

(35) 한페이 선(Hanfei Sun), 엔비디아;

(36) Pratik P Suthar, NVIDIA;

(37) 바룬 테지(Varun Tej), 엔비디아;

(38) 워커 터너, 엔비디아;

(39) 카이제 쉬(Kaizhe Xu), 엔비디아;

(40) 하오싱 렌(Haoxing Ren), 엔비디아.

링크 표


추상적인

ChipNeMo는 산업용 칩 설계를 위한 LLM(대형 언어 모델)의 응용을 탐구하는 것을 목표로 합니다. 기성 상용 또는 오픈 소스 LLM을 직접 배포하는 대신 맞춤형 토크나이저, 도메인 적응형 지속적인 사전 학습, 도메인별 지침이 포함된 감독 미세 조정(SFT) 및 도메인 적응 기술을 채택합니다. 적응된 검색 모델. 우리는 엔지니어링 보조 챗봇, EDA 스크립트 생성, 버그 요약 및 분석 등 칩 설계를 위해 선택된 세 가지 LLM 애플리케이션에서 이러한 방법을 평가합니다. 우리의 결과는 이러한 도메인 적응 기술이 평가된 세 가지 응용 프로그램에서 범용 기본 모델에 비해 LLM 성능을 크게 향상시켜 다양한 설계 작업에서 비슷하거나 더 나은 성능으로 모델 크기를 최대 5배까지 줄일 수 있음을 보여줍니다. 우리의 연구 결과는 또한 현재 결과와 이상적인 결과 사이에 여전히 개선의 여지가 있음을 나타냅니다. 우리는 도메인 적응 LLM 접근 방식에 대한 추가 조사가 향후 이러한 격차를 줄이는 데 도움이 될 것이라고 믿습니다.

I. 소개

지난 수십 년 동안 전자 설계 자동화(EDA) 알고리즘과 도구는 칩 설계 생산성을 크게 향상시켜 왔습니다. 무어의 법칙에 의해 제공되는 트랜지스터 밀도의 기하급수적인 증가와 함께 EDA는 수십억 개의 트랜지스터를 갖춘 기능이 풍부한 복잡한 SoC 설계의 개발을 가능하게 했습니다. 최근 연구자들은 AI를 EDA 알고리즘과 칩 설계 프로세스에 적용하여 칩 설계 생산성을 더욱 향상시키는 방법을 모색해 왔습니다[1] [2] [3]. 그러나 자연어나 프로그래밍 언어와의 인터페이스와 관련된 많은 시간이 소요되는 칩 설계 작업은 아직 자동화되지 않았습니다. 상업용(ChatGPT, Bard 등) 및 오픈 소스(Vicuna [4], LLaMA2 [5] 등) 대규모 언어 모델(LLM)의 최신 발전은 이러한 언어 관련 칩 설계 작업을 자동화하는 데 도움이 되는 전례 없는 기회를 제공합니다. 실제로 초기 학술 연구 [6] [7] [8]에서는 작은 설계 모듈에서 간단한 작업을 수행할 수 있는 RTL을 생성하고 EDA 도구용 스크립트를 생성하기 위한 LLM 응용 프로그램을 탐색했습니다.


우리는 LLM이 생성 AI를 사용하여 코드 생성, 자연어 인터페이스를 통한 엔지니어링 질문에 대한 응답, 분석 등 많은 언어 관련 칩 설계 작업을 자동화함으로써 칩 설계 생산성을 높일 수 있는 잠재력이 있다고 믿습니다. §동등 기여 및 보고서 생성, 버그 분류 . 본 연구에서 우리는 세 가지 특정 LLM 애플리케이션에 중점을 둡니다. 내부 HW 설계를 이해하고 복잡한 설계 주제를 설명할 수 있는 GPU ASIC 및 아키텍처 설계 엔지니어를 위한 엔지니어링 보조 챗봇; 영어로 지정된 VLSI 타이밍 분석 작업을 위해 Python 및 Tcl을 기반으로 하는 두 가지 도메인 특정 도구에 대한 EDA 스크립트 생성. 내부 버그 및 문제 추적 시스템의 일부로 버그 요약 및 분석.


방대한 양의 인터넷 데이터에 대해 훈련된 범용 LLM은 다양한 영역에 걸쳐 생성 AI 작업에서 놀라운 기능을 나타내지만(Bubeck et al.의 [9]), BloombergGPT[10] 및 BioMedLLM[11]과 같은 최근 연구에서는 도메인별 LLM 모델은 도메인별 작업에서 범용 모델보다 성능이 뛰어날 수 있습니다. 하드웨어 설계 영역에서 [6] [12]는 추가 Verilog 데이터를 기반으로 미세 조정된 오픈 소스 LLM(CodeGen [13])이 최첨단 OpenAI 모델보다 성능이 뛰어날 수 있음을 보여주었습니다. 이러한 방식으로 LLM을 사용자 정의하면 API를 통해 독점 칩 설계 데이터를 제3자 LLM으로 보내는 것과 관련된 보안 위험도 피할 수 있습니다. 그러나 모든 도메인에 대해 도메인별 모델을 처음부터 훈련하는 것은 수백만 GPU 훈련 시간이 필요한 경우가 많기 때문에 엄청나게 비용이 많이 듭니다. 도메인별 모델을 비용 효율적으로 교육하기 위해 대신 도메인 적응형 토크나이저를 사용한 기초 모델의 도메인 적응형 사전 교육(DAPT) [14], 일반 및 도메인별 지침을 사용한 모델 정렬 및 검색 기술을 결합하는 것을 제안합니다. 훈련된 도메인 적응 검색 모델을 사용한 증강 생성(RAG) [15]


그림 1에서 볼 수 있듯이 우리의 접근 방식은 기본 기본 모델로 시작하여 DAPT를 적용한 다음 SFT(Supervised Fine-Tuning)를 적용하는 것입니다. 도메인 내 데이터를 사용한 지속적인 사전 학습으로도 알려진 DAPT는 생물 의학 및 컴퓨터 과학 출판물, 뉴스 및 리뷰와 같은 분야에서 효과적인 것으로 나타났습니다. 우리의 경우 독점 하드웨어 관련 코드(예: 소프트웨어, RTL, 검증 테스트벤치 등)와 자연어 데이터 세트(예: 하드웨어 사양, 문서 등) 모음에서 도메인별 사전 학습 데이터 세트를 구성합니다. 원시 데이터세트를 정리하고 전처리한 다음, 도메인별 데이터로 기초 모델을 계속해서 사전 학습합니다. 결과 모델을 ChipNeMo라고 부릅니다.


그림 1: ChipNeMo 훈련 흐름


기초 모델. DAPT는 사전 훈련에 사용되는 토큰의 일부로 수행되며 훨씬 저렴하여 수천 GPU 시간만 필요합니다. 섹션 V에서 설명했듯이 이 접근 방식은 사용 사례에 대해 LoRA[16]와 같은 PEFT(Parameter Efficient Training) 기술보다 더 효과적이라는 것을 알았습니다.


LLM 토크나이저는 LLM 교육을 위해 텍스트를 토큰 시퀀스로 변환합니다. 도메인별 토크나이저는 RTL에서 흔히 발견되는 키워드와 같은 도메인별 용어에 대한 규칙과 패턴을 조정하여 토큰화 효율성을 향상시킵니다. DAPT의 경우 새로운 도메인별 토크나이저를 처음부터 다시 훈련할 수 없습니다. 왜냐하면 기초 모델이 무효화되기 때문입니다. ChipNeMo를 기초 모델에서 사용되는 사전 훈련된 범용 토크나이저로 제한하는 대신 사전 훈련된 토크나이저를 칩 설계 데이터 세트에 적용하고 도메인별 용어에 대한 새 토큰만 추가합니다.


ChipNeMo 기반 모델은 채팅과 같은 작업에 적응하기 위해 SFT(감독 미세 조정)가 필요한 완성 모델입니다. 우리는 ChipNeMo Chat 모델을 생성하는 ChipNeMo 기반 모델에서 SFT를 수행하기 위해 소량의 도메인별 명령 데이터 세트와 함께 다단계 채팅을 위해 널리 공개된 범용 채팅 명령 데이터 세트를 사용합니다. 우리는 범용 채팅 명령 데이터 세트를 갖춘 SFT가 ChipNeMo 기반 모델을 칩 설계 도메인의 쿼리와 정렬하는 데 적합하다는 것을 확인했습니다. 또한 소량의 작업별 SFT 명령 데이터를 추가하여 정렬을 더욱 향상시켰습니다. 우리는 기본 기초 모델로 사용되는 LLaMA2 모델의 변형을 기반으로 여러 ChipNeMo Foundation 및 Chat 모델을 교육했습니다.


엔지니어링 보조 챗봇 애플리케이션의 성능을 향상시키기 위해 RAG(Retrieval Augmented Generation)도 활용합니다. RAG는 LLM에 사용자 쿼리에 대한 정확한 컨텍스트를 제공하기 위한 오픈북 접근 방식입니다. 사용자 쿼리에 대한 응답 생성을 늘리기 위해 데이터 저장소에서 관련 도메인 내 지식을 검색합니다. 이 방법은 특정 질문의 맥락에 모델을 기반으로 하는 데 있어서 상당한 개선을 보여줍니다. 결정적으로 우리는 도메인 데이터로 사전 훈련된 검색 모델을 미세 조정할 때 검색 적중률이 크게 향상되는 것을 관찰했습니다. 이로 인해 모델 품질이 더욱 향상되었습니다.


우리는 칩 설계 영역에 LLM을 적용하는 것과 관련된 다음과 같은 기여와 결과를 강조합니다.


• 엔지니어링 보조 챗봇, EDA 도구 스크립트 생성, 버그 요약 및 분석 등 세 가지 사용 사례에서 도메인 적응 LLM 효율성을 보여줍니다. 전문가 평가를 바탕으로 엔지니어링 보조 챗봇 응답에 대해 10점 만점에 7.4점을 획득하고, EDA 스크립트 생성에서 50% 이상의 정확성을 달성하며, 요약 및 과제 식별에 대해 전문가 평가 등급이 7점 만점에 4~5점입니다. 작업.


• 도메인 적응형 ChipNeMo 모델은 객관식 도메인별 AutoEval 벤치마크와 애플리케이션에 대한 인간 평가 모두에서 평가된 모든 바닐라 LLM보다 훨씬 뛰어난 성능을 발휘합니다.


• 모델이 프롬프트 컨텍스트에서 텍스트를 생성할 수 있는 작업(예: RAG 히트와의 채팅, 요약, 제공된 문서를 사용한 코드 생성)의 경우 도메인 적응을 통해 최신 LLaMA2 70B 모델과 훨씬 작은 13B 모델(작은 증분 훈련 비용으로 추론 비용 절감을 위해 매개변수를 최대 5배까지 줄일 수 있음)


• 맞춤형 토크나이저는 애플리케이션의 효율성을 저하시키지 않고 DAPT 토큰 수를 최대 3.3%까지 줄입니다.


• 추가 1.1K 도메인별 지침에 대한 SFT는 엔지니어링 보조 챗봇, EDA 스크립트 생성 및 버그 요약에서 10점 척도 중 최대 0.33, 정확성 18%, 7점 척도 중 0.79까지 애플리케이션 숙련도를 크게 향상시킵니다. 각각 분석.


• 도메인별 데이터를 사용하여 ChipNeMo 검색 모델을 미세 조정하면 사전 훈련된 최첨단 검색기에 비해 검색기 적중률이 30% 향상되어 RAG 응답의 전반적인 품질이 향상됩니다.


논문은 다음과 같이 구성되어 있습니다. 섹션 II에서는 도메인 지식 검증을 위한 데이터 세트 및 자동 평가 벤치마크를 설명합니다. 섹션 III에서는 적응된 토크나이저, DAPT, SFT 및 RAG를 포함하여 사용되는 도메인 적응 및 훈련 방법을 간략하게 설명합니다. 섹션 IV에서는 각 응용 프로그램과 실험 설정에 대한 세부 정보를 제공합니다. 섹션 V에서는 각 응용 분야에 대한 인간 평가를 포함한 실험 결과를 설명합니다. 섹션 VI에서는 ChipNeMo의 제한 사항과 향후 작업에 대해 논의합니다. 섹션 VII에서는 관련 LLM 방법과 칩 설계를 위한 LLM을 대상으로 하는 기타 작업에 대해 설명합니다. 마지막으로 추가 모델 교육 세부 정보 및 애플리케이션 사용 사례에서 생성된 텍스트 예와 함께 전체 결과가 부록에 설명되어 있습니다.


이 문서는 CC 4.0 라이선스에 따라 arxiv에서 볼 수 있습니다.