산업 현장 맞춤형 32억 파라미터 코드 모델 InCoder 32B
InCoder-32B는 32억 파라미터 규모의 코드 전용 대형 언어 모델로, 반도체 설계, GPU 커널 최적화, 임베디드 시스템, 컴파일러 최적화, 3D CAD 스크립팅 등 5개 산업 분야를 하나의 모델로 통합한다. 8K→128K 토큰 컨텍스트 확장, 합성 산업 QA·에이전트 트래젝터리, 실행 기반 검증을 포함한 3단계 학습 파이프라인을 도입했으며, 일반 코드 벤치마크와 9개의 산업 벤치마크에서 경쟁 모델에 비해 우수한 성능을 기록한다.
저자: Jian Yang, Wei Zhang, Jiajun Wu
**1. 연구 배경 및 목표**
최근 Qwen‑3.5, DeepSeek‑V3.2, Claude‑4.6 등 대형 코드 LLM이 일반 프로그래밍, 경쟁 프로그래밍, 도구 활용 등에서 뛰어난 성능을 보이고 있다. 그러나 반도체 설계, GPU 커널 최적화, 임베디드 펌웨어, 컴파일러 최적화, 3D CAD 스크립팅 등 산업 현장에서는 하드웨어 시맨틱, 실시간 자원 제한, 특수 언어 구문 등 일반 코드와는 다른 고유한 요구사항이 존재한다. 기존 모델은 이러한 도메인에서 20‑40% 수준의 낮은 성공률을 보이며, 실제 산업 적용에 큰 장벽이 된다. 본 논문은 이러한 격차를 메우기 위해 **InCoder‑32B**라는 32 B 파라미터 규모의 코드 전용 대형 모델을 제안한다. 목표는 하나의 모델로 다섯 개 주요 산업 분야(칩 설계, GPU 커널, 임베디드 시스템, 컴파일러 최적화, 3D 모델링)를 포괄하고, 일반 코드 벤치마크에서도 경쟁력을 유지하는 것이다.
**2. 모델 아키텍처 및 효율성**
InCoder‑32B는 디코더‑전용 트랜스포머이며, 기존 대형 모델과 동일한 레이어·헤드 구성을 유지하면서 **FlashAttention‑2**와 **PagedAttention**을 적용해 128K 토큰까지 메모리 효율적으로 처리한다. 또한, CUDA RMS 정규화와 같은 대규모 텐서 연산을 위한 특수 커널을 구현해, GPU 그리드 제한(65 535) 문제를 차원 평탄화(1D grid) 방식으로 해결한다(그림 2 참고). 이러한 설계는 산업 코드에서 흔히 나타나는 대형 행렬·이미지 처리 연산을 안정적으로 수행하게 만든다.
**3. 데이터 파이프라인**
- **Pre‑train**: 공개 저장소, 기술 논문, OCR을 통해 수집한 1.2 TB 규모의 일반·산업 코드 데이터를 3단계(리콜·필터·정제)로 정제한다. 라이선스·PII 필터링, 토큰‑레벨 중복 제거, 리포지터리 포크 통합, AST 기반 컴파일 검증을 수행해 데이터 품질을 확보한다.
- **Mid‑train**: 컨텍스트 길이를 8K→32K→128K 토큰으로 단계적 확장한다. 이때 합성 산업 QA, 에이전트 디버깅·수정 트래젝터리, 하드웨어 테스트벤치, 타이밍 제약 파일 등 도메인‑특화 아티팩트를 포함한다. QA는 시나리오 정의 → 시드 코드 생성 → 자동 검증 순으로 생성되며, 에이전트 트래젝터리는 Thought‑Action‑Observation 사이클을 따른다.
- **Post‑train**: 각 산업 도메인별 시뮬레이션 환경을 컨테이너화한다. (1) Verilog/RLT: Icarus Verilog, Verilator, Yosys를 이용한 시뮬·합성 파이프라인; (2) GPU: NVIDIA A100에서 nvcc·Triton 컴파일·실행, 성능 측정; (3) 3D CAD: CadQuery·OpenCascade 기반 모델링·볼륨 검증; (4) 임베디드: STM32F407 ARM‑Cortex‑M4 크로스 컴파일·Renode 시뮬레이션; (5) 어셈블리 최적화: 고정 CPU·코어 고정·반복 측정. 실행 성공·성능 메트릭을 라벨링해 SFT와 ‘Thinking’ 변형 두 버전으로 파인튜닝한다.
**4. 학습 설정**
- 4 096개의 NVIDIA H100 GPU에서 1.5 M 배치 크기로 600 B 토큰을 학습한다.
- 손실 함수는 AR + FIM + Cross‑file 코드‑텍스트 정렬을 결합하고, 중간 단계에서는 **Mixture‑of‑Experts** 방식으로 일반·산업 데이터 비율을 동적으로 조정한다.
- 학습 스케줄은 **Easy→Hard**, **Local→Global**, **Sub‑task→Repo** 순으로 진행되며, 각 단계마다 검증용 실행 기반 피드백을 루프에 삽입한다.
**5. 평가**
- **일반 코드 벤치마크**: SWE‑bench Verified 74.8% (Claude‑4.6 대비 +4.2%), LiveCodeBench 49.14% (Qwen‑3.5 대비 +5.3%), BFCL 60.99% (동등 수준).
- **산업 벤치마크**(9개, 4도메인): Verilog 코드 시뮬레이션 성공률 80.7% (전 모델 평균 58%), CUDA 커널 정확도 82.0% (전 모델 평균 65%), Triton 연산 성공률 73.1% (전 모델 48%), 3D 모델링 볼륨 일치 88.0% (전 모델 71%). 전체 평균 점수는 기존 오픈소스 최고 모델을 12‑15% 앞선다.
- **Ablation**: (1) 리포지터리 전이 데이터가 정적 스냅샷 대비 6% 정확도 향상, (2) 중간 단계 사고 경로(Thought‑Action‑Observation) 도입 시 배포 환경 변동에 대한 강인성 9% 상승, (3) 128K 컨텍스트 사용 시 장기 디버깅 시나리오 성공률 14% 증가.
**6. 주요 기여**
1. 산업 코드 전용 대형 모델 최초 제시, 다섯 분야를 하나의 파운데이션 모델로 통합.
2. 가장 포괄적인 산업 코드 평가 세트(14 일반 + 9 산업) 구축.
3. 실행‑grounded 데이터 생성·검증 파이프라인을 통해 산업 수준 코드 품질을 확보.
4. 초장기 컨텍스트와 에이전트 트래젝터리를 결합한 학습 전략이 새로운 사고 능력을 유도함을 실증.
**7. 한계 및 향후 연구**
- 현재는 공개된 시뮬레이터와 툴 체인에 의존하므로, 최신 상용 EDA·GPU 툴 버전과의 격차가 존재한다.
- 합성 데이터의 품질이 실제 엔지니어링 프로젝트와 완전히 일치하지 않을 수 있어, 산업 파트너와의 공동 데이터 구축이 필요하다.
- 모델 크기를 32 B에서 65 B 이상으로 확장하거나, 멀티모달(코드·시뮬레이션 로그·파형) 입력을 추가하면 더욱 정교한 최적화가 가능할 것으로 기대된다.
**8. 결론**
InCoder‑32B는 대규모 코드 LLM이 일반 프로그래밍을 넘어 실제 산업 현장의 복잡한 요구를 충족시킬 수 있음을 보여준다. 효율적인 아키텍처, 단계적 컨텍스트 확장, 실행 기반 검증, 그리고 사고‑행동‑관찰 사이클을 통한 에이전트 트레이닝이 결합돼, 기존 모델 대비 현저히 높은 정확도와 실용성을 달성했다. 이는 앞으로 코드 LLM이 산업 자동화, 하드웨어‑소프트웨어 공동 설계, 그리고 AI‑주도 엔지니어링 파이프라인에 핵심 기술로 자리매김할 가능성을 시사한다.
원본 논문
고화질 논문을 불러오는 중입니다...
댓글 및 학술 토론
Loading comments...
의견 남기기