HyperAI초신경
Back to Headlines

애플과 홍콩대, 코드 생성 전용 7B 확산 모델 DiffuCoder 소개

3일 전

Apple과 홍콩대학교가 소개한 DiffuCoder: 7B 확산형 LLM 코드 생성에 특화 확산형 LLM(Large Language Model)은 자연어 처리(NLP) 분야에서 대화와 코드 생성 등 다양한 작업에서 우수한 성능을 보여주면서 혁신을 가져왔다. 마스크 확산 모델이 등장하면서 이러한 모델은 LLaDA와 Dream과 같은 확산 기반 LLM으로 확장되었다. 이 모델은 전체 시퀀스를 병렬로 점진적으로 정제하기 때문에, 글로벌 콘텐츠 계획이 가능하다. 코드 작성은 종종 비순차적인 왕복 정제 과정을 필요로 하므로, 확산형 LLM 접근법은 코드 생성에 매우 적합하다. 그러나 오픈소스 확산형 LLM이 코딩 작업에서 어떻게 수행되는지는 여전히 불분명하다. 이는 기존의 사후 훈련 노력이 미세한 개선만을 보이나, 반자동 순차적 디코딩에 의존하기 때문이라는 점에서 확인된다. 텍스트 확산 모델의 발전과 코드 합성에 미치는 영향 초기 텍스트 확산 모델에는 마스크 확산 모델이 포함되었고, 최근에는 DiffuLLaMA, LLaDA, Dream과 같은 확산형 LLM이 출시되었다. 블록 확산은 각 블록 내에서 확산을 적용하는 하이브리드 접근 방식을 제안한다. LaViDa, MMaDA, Dimple과 같은 다중 모달 모델은 텍스트 확산 모델과 비전 모델을 결합한다. 코드 생성 분야에서는 CodeFusion이 처음으로 확산 모델과 코드 생성을 결합했지만, 작은 규모의 모델과 간단한 작업에만 제한적이었다. 최근 상업 규모의 확산형 LLM인 Mercury와 Gemini는 선두 자동 순차적 코드 모델과 유사한 성능을 보여주고 있다. 그러나 현재의 dLLM(difussion LLM)용 강화 학습(RL) 방법, 예를 들어 d1과 MMaDA가 사용하는 GRPO는 롤아웃과 평가 동안 블록 확산 디코딩에 의존하여 불안정한 보상 학습 행동을 보이는 경향이 있다. Apple과 홍콩대학교가 제안한 DiffuCoder: 코드 전용 확산 모델 Apple과 홍콩대학교 연구진이 제안한 DiffuCoder는 7B 규모의 마스크 확산 모델로, 코드 생성에 특화되어 130B의 효과적인 토큰으로 훈련되었다. 이는 확산 기반 LLM의 행동을 탐색하고 사후 훈련 방법을 발전시키는 데 중요한 테스트베드 역할을 한다. 연구진은 로컬 및 글로벌 자동 순차성 지표를 도입하여 생성이 좌우로 진행되는 정도를 측정했다. 분석 결과, 확산형 LLM은 조건부 생성 중 엔트로피 싱크 효과를 나타내며, 강한 인과적 편향을 일으키는 것으로 밝혀졌다. 샘플링 온도가 0.2에서 1.2까지 증가함에 따라 DiffuCoder는 토큰 생성 순서가 더 유연해져 엄격한 좌우 제약에서 벗어나 Pass@10 정확도를 높일 수 있었다. 네 단계 훈련 파이프라인: RefineCode와 Coupled-GRPO 활용 연구진은 Qwen-2.5-Coder를 기반 모델로 사용하여, RefineCode와 Stackv2에서 얻은 400B 토큰 코드 사전 훈련 코퍼스를 사용해 모델을 지속적으로 사전 훈련했다. 훈련은 네 단계로 구성된다: 적응 사전 훈련(65B 토큰), 16B 토큰의 안내 코드 데이터를 사용한 중간 훈련(4 에폭), 436K SFT 샘플을 사용한 명령어 튜닝, 21K 어려운 샘플을 사용한 Coupled-GRPO 사후 훈련(Acecoder-87K에서 추출). 1단계에서는 65B 토큰을 처리한 후 조기 중단이 적용되었고, 2단계는 4 에폭 동안 훈련되어 총 65B 토큰을 처리했다. HumanEval, MBPP, EvalPlus, BigCodeBench 세 가지 코드 벤치마크와 이를 두 가지 하위 집합(완전 및 어려움)으로 구분하여 완성 및 명령어 기반 쿼리 유형을 포함하는 평가 환경을 구축했다. 벤치마크 결과: DiffuCoder의 성능과 최적화 통찰력 DiffuCoder는 130B 코드 토큰으로 훈련되어 Qwen2.5-Coder와 OpenCoder와 같은 수준의 성능을 보였다. 그러나 모든 dLLM은 명령어 튜닝 후에도 Qwen2.5-Coder+SFT와 같은 데이터에서 상당한 개선을 보이는 Qwen2.5-Coder+SFT에 비해 기반이 되는 모델에 비해 미세한 개선만을 보이는 것으로 나타났다. Coupled-GRPO 훈련은 매우 효과적이었으며, d1, 전체 마스크 완성, 분리 샘플링 등의 기준 변형들은 불안정한 보상 학습 행동을 나타냈다. RL 미세 조정은 평가 시 최적 샘플링 온도를 0.2에서 더 높은 값으로 증가시키는데, 이는 훈련이 토큰별 분포를 날카롭게 만드는 것을 의미한다. 이는 모델이 엄격한 자동 순차적 디코딩에 대한 의존성을 줄이고 병렬로 토큰을 생성할 수 있는 능력을 향상시킨다. Coupled-GRPO와 확산 기반 코드 모델의 미래 이 논문에서 연구진은 강력한 성능을 가진 7B 규모의 오픈소스 확산 모델인 DiffuCoder와 그 완전한 훈련 레시피, dLLM의 코드 생성에 대한 상세 분석을 제시한다. 또한 Coupled-GRPO라는 RL 알고리즘을 소개하는데, 이 알고리즘은 비자동 순차적 성질을 존중하여 더 정확한 가능도 추정을 위한 결합 샘플링 기술을 통해 dLLM의 성능을 향상시킨다. Coupled-GRPO는 DiffuCoder의 성능을 향상시키며, 확산 원칙과 일치하는 RL 방법의 효과성을 보여준다. 이 연구는 커뮤니티에게 dLLM에 대한 깊은 통찰력을 제공하며, 복잡한 추론 및 생성 작업에서의 응용 분야에 대한 미래 연구의 견고한 기반을 마련한다. 이 연구는 확산형 LLM이 코드 생성 분야에서 어떤 성능을 보이는지 체계적으로 분석하여, 관련 산업계와 연구커뮤니티에서 많은 주목을 받고 있다. Apple과 홍콩대학교 연구팀의 기여는 확산형 LLM의 성능 개선과 새로운 훈련 방법 개발에 중요한 역할을 하고 있으며, 이는 앞으로의 코드 생성 기술 발전에 큰 영향을 미칠 것으로 기대된다. 이 연구 결과를 통해 확산형 LLM이 코드 생성에 있어 더욱 진보된 성능을 보일 수 있을 것으로 보이며, 관련 분야의 연구자들에게 새로운 연구 방향을 제시하고 있다.

Related Links