피드로 돌아가기
Hugging Face BlogAI/ML
원문 읽기
Open-R1 프로젝트가 DeepSeek-R1 파이프라인 재현을 위해 GRPO 훈련 및 대규모 합성 데이터 생성 인프라를 1주일 만에 구축
Open-R1: Update #1
AI 요약
Context
DeepSeek-R1의 공개 이후 훈련 파이프라인과 합성 데이터 생성 방법이 공개되지 않아 오픈소스 커뮤니티가 이를 재현할 수 없었다. 특히 R1 모델의 응답이 평균 6,000토큰(최대 20,000토큰 이상)으로 매우 길어 생성 과정의 GPU 메모리 사용량과 평가 비용이 급증했다.
Technical Solution
- GRPO(Grouped Relative Policy Optimization) 알고리즘을 TRL 라이브러리(v0.14)에 통합하여 단일/다중 보상 함수를 지원하는 훈련 파이프라인 구현
- DeepSpeed ZeRO 1/2/3과 vLLM을 결합하여 다중 GPU 병렬 훈련 지원 및 온라인 훈련의 생성 병목 제거
- 합성 데이터 생성을 위해 2개 8xH100 노드에서 32개 GPU(4x 8xH100 노드)로 확장하여 32개 병렬 요청 처리 가능하도록 구성
- 배치 기반 추론에서 스트리밍 기반 요청으로 전환하여 GPU 캐시 프리엠션으로 인한 GPU 사용률 변동성 제거
- MATH-500 벤치마크에 대한 평가 결과를 HuggingFace lighteval을 이용해 DeepSeek 공식 결과와 비교 검증
Impact
- DeepSeek-R1-Distill-Qwen-1.5B: MATH-500에서 81.6점(재현값) vs 83.9점(공식값) 달성
- DeepSeek-R1-Distill-Qwen-7B: MATH-500에서 91.8점(재현값) vs 92.8점(공식값) 달성
- DeepSeek-R1-Distill-Qwen-14B: MATH-500에서 94.2점(재현값) vs 93.9점(공식값) 달성
- DeepSeek-R1-Distill-Qwen-32B: MATH-500에서 95.0점(재현값) vs 94.3점(공식값) 달성
- DeepSeek-R1-Distill-Llama-8B: MATH-500에서 85.8점(재현값) vs 89.1점(공식값) 달성
- DeepSeek-R1-Distill-Llama-70B: MATH-500에서 93.4점(재현값) vs 94.5점(공식값) 달성
Key Takeaway
대규모 생성 모델의 합성 데이터 생성은 GPU KV 캐시 프리엠션으로 인한 사용률 변동이 주요 병목이므로, 배치 기반 처리에서 스트리밍 기반 요청으로 전환하고 충분한 여유 메모리를 확보하는 것이 처리량 안정성을 확보하는 핵심이다.
실천 포인트
긴 응답(6,000토큰 이상)을 생성하는 추론 파이프라인을 구축할 때는 vLLM의 KV 캐시 프리엠션 정책(PreemptionMode.RECOMPUTE)과 배치 크기를 함께 고려해야 하며, 스트리밍 기반 요청 전송으로 전환하면 GPU 메모리 사용률 변동성을 줄여 전체 처리량을 안정화할 수 있다.