본문으로 건너뛰기

코드 컨셉: 프로그래밍 개념 시드를 활용한 대규모 합성 데이터셋 생성

NVIDIA가 91개 프로그래밍 개념 계층 구조를 기반으로 1,500만 개의 Python 문제를 생성하여 Nemotron 모델의 코딩 성능을 대폭 향상시킨 방법론을 공개했다.

섹션별 상세

01
NVIDIA는 수천 개의 프로그래밍 개념을 계층적으로 정리한 분류 체계(Taxonomy)를 구축했다. 이 분류 체계는 기초적인 문자열 처리부터 복잡한 알고리즘 및 데이터 구조 패턴까지 포함하며, 이를 통해 생성 데이터의 난이도와 다양성을 정밀하게 제어했다.
02
HumanEval 벤치마크와 관련된 91개의 핵심 개념을 식별하고 이를 조합하여 약 1,500만 개의 Python 프로그래밍 문제를 생성했다. 생성된 모든 코드는 Python의 ast.parse 함수를 통해 구문 오류가 없는 유효한 코드임을 검증하는 과정을 거쳐 데이터 품질을 확보했다.
03
GPT-OSS 120B 모델을 사용하여 '개념 시드(Concept Seed)'로부터 문제를 생성하는 방식을 채택했다. 예를 들어 '데이터 구조.집합.연산'과 '알고리즘.기하학.계산' 등의 개념을 조합하여 특정 제약 조건을 만족하는 복잡한 문제를 생성하도록 유도했다.
04
Nemotron-Nano-v3 모델의 마지막 1,000억 토큰 학습 과정에 생성된 데이터셋 100억 토큰을 포함하여 실험을 진행했다. 그 결과 HumanEval 점수가 73점에서 79점으로 상승했으며, 그래프 알고리즘이나 예외 상황 처리 등 질적인 측면에서도 개선이 확인됐다.
05
NVIDIA는 이 데이터셋(Nemotron-Pretraining-Code-Concepts)과 기반이 되는 분류 체계를 CC-BY-4.0 라이선스로 공개했다. 이는 커뮤니티가 다른 도메인에서도 유사한 방식으로 확장 가능하고 정밀한 데이터 생성을 수행할 수 있도록 지원하기 위함이다.

용어 해설

합성 데이터(Synthetic Data)
실제 세계에서 수집된 데이터가 아니라 AI 모델을 통해 인위적으로 생성된 데이터이다. 학습 데이터의 부족을 해결하고 특정 도메인의 성능을 정밀하게 타겟팅하여 강화하는 데 필수적인 역할을 한다.
분류 체계(Taxonomy)
정보나 개념을 계층적으로 조직화한 구조이다. 이 아티클에서는 프로그래밍 개념을 기초부터 심화까지 체계적으로 나누어 합성 데이터 생성의 가이드라인으로 활용했다.
추상 구문 트리 파싱(AST Parsing)
프로그래밍 언어의 소스 코드를 구조적으로 분석하여 트리 형태로 변환하는 과정이다. 생성된 합성 데이터가 문법적으로 유효한 Python 코드인지 자동으로 검증하는 필터링 도구로 사용됐다.
데이터 어블레이션(Data Ablation)
특정 데이터 구성 요소가 모델 성능에 미치는 영향을 파악하기 위해 해당 요소를 제거하거나 변경하며 실험하는 방법론이다. 특정 데이터셋의 실질적인 기여도를 측정하는 데 사용된다.

기술

  • Python
  • GPT-OSS 120B
  • Nemotron-Nano-v3
  • ast.parse

활용 사례

  • LLM 코딩 능력 강화
  • 도메인 특화 합성 데이터셋 구축
  • 데이터 효율적 사전 학습
AI 분석 전체 내용 보기

AI 요약 · 북마크 · 개인 피드 설정 — 무료

출처 · 인용 안내

원문 발행 2026. 03. 12.수집 2026. 03. 12.출처 타입 RSS

인용 시 "요약 출처: AI Trends (aitrends.kr)"를 표기하고, 사실 확인은 원문 보기 기준으로 진행해 주세요. 자세한 기준은 운영 정책을 참고해 주세요.