Each language version is independently generated for its own context, not a direct translation.
1. 문제: 왜 기존 방식은 느릴까요? (동기식 시스템)
기존의 AI 훈련 방식은 **'동기식 (Synchronous)'**이라고 불립니다. 이를 **'한 번에 다 완성해야만 다음 단계로 넘어가는 식당'**에 비유할 수 있습니다.
- 상황: 식당에는 요리사 (생성 모델) 들이 여러 명 있습니다. 손님 (학습 데이터) 들이 주문을 넣으면, 요리사들은 각자 요리를 시작합니다.
- 문제: 어떤 요리는 5 분 걸리고, 어떤 요리는 50 분이 걸립니다.
- 비효율: 식당 주인 (훈련 시스템) 은 "모든 요리가 다 완성될 때까지 기다려야만" 다음 단계인 '맛보기 (학습)'를 시작할 수 있습니다.
- 5 분 만에 요리를 끝낸 요리사들은 45 분 동안 손을 놓고 기다려야 합니다.
- 가장 느린 요리사가 끝날 때까지 모든 요리사들이 멈춰 서 있는 셈입니다.
- 결과적으로 비싼 장비 (GPU) 가 놀고 있는 시간이 너무 많아, 훈련 속도가 매우 느립니다.
2. 해결책: AReaL 의 새로운 방식 (비동기식 시스템)
AReaL 은 이 문제를 **'완벽하게 분리된 주방과 맛보기 팀'**으로 해결합니다.
- 생성 팀 (Rollout Workers): 이들은 멈추지 않고 계속 요리를 만듭니다.
- 요리가 50 분 걸리든 5 분 걸리든, 한 요리가 끝나면 바로 다음 주문을 받아 계속 만듭니다.
- 요리사가 기다리는 시간이 전혀 없습니다.
- 훈련 팀 (Trainer Workers): 이들은 요리가 쌓이면 바로 맛보기를 시작합니다.
- 모든 요리가 다 완성될 때까지 기다리지 않고, 요리가 10 접시만 쌓여도 바로 맛을 보고 레시피를 수정합니다.
- 핵심: 요리 (생성) 와 맛보기 (학습) 가 동시에 일어나기 때문에, 비싼 장비가 쉬는 시간이 거의 없습니다.
3. 새로운 방식의 위험과 AReaL 의 지혜
하지만 이렇게 하면 **'레시피가 섞이는 문제'**가 생깁니다.
- 문제: 요리사 A 는 '구식 레시피'로 요리를 만들고, 요리사 B 는 '최신 레시피'로 요리를 만듭니다. 훈련 팀은 이 섞인 요리를 한꺼번에 맛보게 됩니다.
- "어? 이 요리는 옛날 레시피로 만든 건데, 최신 레시피로 고치라고 하면 혼란이 오지 않을까?"
- AI 가 엉뚱한 방향으로 학습할 수 있습니다 (데이터가 낡아지는 문제, Staleness).
AReaL 의 해결책 (두 가지 지혜):
낡은 레시피 관리 (Staleness Control):
- 너무 오래된 레시피로 만든 요리만 모아서 학습하지 않도록, 최신 레시피와 너무 멀지 않은 요리들만 학습 데이터로 골라냅니다.
- 하지만 너무 엄격하게 걸러내면 요리가 쌓이는 속도가 느려지므로, 적당한 수준으로 허용합니다.
지능적인 맛보기 (Decoupled PPO):
- 기존 방식은 "모든 요리는 같은 레시피로 만들어져야 한다"고 강요했습니다.
- AReaL 은 **"요리가 어떤 레시피로 만들어졌든, 맛을 보고 '최신 레시피'에 맞춰 고쳐라"**는 새로운 방식을 도입했습니다.
- 마치 "이 요리는 옛날 레시피로 만들었지만, 지금의 최신 맛에 맞게 고쳐보자"라고 유연하게 접근하여, 낡은 데이터로도 학습을 안정적으로 시킵니다.
4. 결과는 어떨까요?
이 시스템을 적용한 결과:
- 속도: 같은 양의 장비로 훈련할 때, 기존 방식보다 최대 2.77 배 더 빠릅니다. (약 3 배 빠름)
- 성능: 속도가 빨라졌다고 해서 AI 의 실력이 떨어지지 않았습니다. 오히려 수학 문제나 코딩 실력이 더 좋아지거나 유지되었습니다.
- 확장성: 컴퓨터 (GPU) 를 더 많이 추가할수록 속도가 비례해서 빨라지는 '선형 확장'이 잘 일어납니다.
요약
AReaL은 AI 가 '생각하는 능력'을 기르는 훈련 과정을, **"가장 느린 사람이 끝날 때까지 기다리는 구식 방식"**에서 **"모든 사람이 멈추지 않고 일하고, 쌓인 결과물을 실시간으로 반영하는 현대적 방식"**으로 바꾼 혁신적인 시스템입니다.
이 덕분에 AI 는 더 적은 시간과 비용으로 더 똑똑해질 수 있게 되었습니다. 마치 식당에서 요리사들이 쉬지 않고 요리를 만들고, 셰프가 그 요리를 실시간으로 맛보며 레시피를 고쳐나가는 상황과 같습니다.
Each language version is independently generated for its own context, not a direct translation.
1. 문제 정의 (Problem)
대규모 언어 모델의 강화 학습 (RL) 은 수학, 코딩, 논리 퍼즐 등 복잡한 추론 작업에서 뛰어난 성능을 보여주고 있습니다. 그러나 이러한 RL 훈련을 대규모로 확장하는 데에는 다음과 같은 시스템적 한계가 존재합니다.
- 동기식 (Synchronous) 시스템의 비효율성: 기존 대부분의 대규모 RL 시스템 (PPO, GRPO 등) 은 '생성 (Rollout)'과 '훈련 (Training)' 단계를 엄격하게 번갈아 수행합니다. 즉, 배치 내 모든 샘플이 생성될 때까지 기다린 후 모델 업데이트를 수행합니다.
- GPU 활용도 저하: LLM 추론 (생성) 시 입력 프롬프트에 따라 출력 길이가 크게 달라집니다. 동기식 시스템에서는 가장 긴 출력이 완료될 때까지 다른 GPU 들이 대기해야 하므로, 짧은 출력을 생성한 GPU 들은 유휴 상태가 되어 연산 자원이 낭비됩니다.
- 확장성 문제: 모든 장치가 생성과 훈련을 번갈아 수행해야 하므로, 디바이스 수가 증가할수록 디코딩 배치 크기가 줄어들어 메모리-IO 바운드 (Memory-IO bound) 영역으로 진입하여 처리량 (Throughput) 이 정체됩니다.
2. 방법론 (Methodology)
AREAL 은 생성과 훈련을 완전히 비동기적으로 분리 (Decoupling) 하여 시스템 효율성을 극대화하는 아키텍처를 제안합니다.
2.1 시스템 아키텍처
- 비동기 파이프라인:
- Rollout Worker: 모델 업데이트를 기다리지 않고 스트리밍 방식으로 지속적으로 새로운 샘플 (Rollout) 을 생성합니다.
- Trainer Worker: 롤아웃 워커로부터 데이터가 모이면 즉시 모델 업데이트를 수행합니다.
- Interruptible Generation: 모델 가중치가 업데이트되면, 진행 중인 생성 작업을 중단하고 새로운 가중치로 KV 캐시를 재계산하여 다음 토큰을 생성합니다. 이를 통해 최신 모델 가중치를 반영하면서도 생성 대기 시간을 제거합니다.
- 핵심 구성 요소:
- Reward Service: 생성된 응답의 정확도를 평가 (예: 코드 실행, 정답 매칭).
- Replay Buffer: 생성된 데이터와 보상을 저장.
- Rollout Controller: 데이터 흐름을 제어하고, 데이터의 '신선도 (Staleness)'를 관리.
2.2 알고리즘적 혁신 (Algorithmic Innovations)
비동기 시스템은 훈련 데이터가 최신 모델이 아닌 이전 버전의 모델에서 생성된 '오래된 데이터 (Stale Data)'를 포함하게 되는데, 이는 기존 PPO 알고리즘의 안정성을 해칠 수 있습니다. 이를 해결하기 위해 두 가지 기법을 도입했습니다.
Staleness-Aware Training (신선도 인식 훈련):
- 훈련 배치 내 데이터의 최대 신선도 (최대 허용된 모델 버전 차이, η) 를 제어하는 하이퍼파라미터를 도입합니다.
- 너무 오래된 데이터가 훈련에 포함되지 않도록 생성 요청의 속도를 동적으로 조절합니다.
Decoupled PPO Objective (분리된 PPO 목적 함수):
- 기존 PPO 는 행동 정책 (Behavior Policy, πbehav) 과 근사 정책 (Proximal Policy, πprox) 을 동일하게 가정하지만, 비동기 환경에서는 이 둘이 다를 수 있습니다.
- AREAL 은 πprox를 최신 모델 가중치로 설정하고, πbehav를 데이터 생성 시의 정책으로 분리하여 목적 함수를 수정합니다.
- 이를 통해 오래된 데이터로 훈련하더라도 최신 모델이 안정적으로 업데이트되도록 하여, 데이터의 신선도가 낮아도 성능 저하를 방지합니다.
3. 주요 기여 (Key Contributions)
- 완전 비동기 RL 시스템 설계: 생성과 훈련을 물리적으로 분리하여 GPU 유휴 시간을 제거하고, 가변 길이 출력 (Variable-length outputs) 에 대한 동적 배칭 (Dynamic Batching) 을 통해 하드웨어 효율성을 극대화했습니다.
- 비동기 환경에 적합한 알고리즘 개선: 데이터의 신선도 (Staleness) 가 높아도 학습이 불안정해지지 않도록 '분리된 PPO 목적 함수'와 '신선도 제어 메커니즘'을 제안했습니다.
- 시스템 최적화: 인터럽트 가능한 생성 (Interruptible Generation), 동적 마이크로배치 할당, 병렬 보상 서비스 등을 통해 전체 처리량을 향상시켰습니다.
4. 실험 결과 (Results)
AREAL 은 수학 (AIME24) 및 코딩 (LiveCodeBench) 벤치마크에서 다양한 모델 크기 (1.5B ~ 32B) 로 평가되었습니다.
- 훈련 속도 향상: 동기식 시스템 (Verl 등) 대비 최대 2.77 배의 훈련 속도 향상 (End-to-end training time 단축) 을 달성했습니다.
- 성능 유지 및 향상: 훈련 속도가 빨라졌음에도 불구하고, 최종 모델의 정확도는 동기식 시스템과 동일하거나 오히려 향상되었습니다 (예: 1.5B 모델 기준 AIME24 점수 42.2 vs 42.0).
- 확장성 (Scalability): 최대 512 개의 GPU 에서 선형 확장 (Linear scaling) 효율을 보였으며, 동기식 시스템은 32K 컨텍스트 길이에서 OOM(Out of Memory) 이 발생하거나 확장성이 떨어지는 반면, AREAL 은 안정적으로 확장되었습니다.
- 신선도 제어 효과: 실험을 통해 적절한 신선도 제어 (η≤8) 와 분리된 목적 함수를 결합할 때, 동기식 훈련 (Oracle) 과 유사한 성능을 유지하면서 처리량을 2 배 이상 높일 수 있음을 입증했습니다.
5. 의의 및 결론 (Significance)
- 대규모 RL 훈련의 새로운 패러다임: 기존 동기식 방식의 시스템적 비효율성을 근본적으로 해결하여, 대규모 언어 모델의 RL 훈련을 위한 새로운 표준 아키텍처를 제시했습니다.
- 알고리즘 - 시스템 공동 설계 (Co-design): 단순히 시스템을 빠르게 만드는 것을 넘어, 비동기 환경에서 발생하는 알고리즘적 문제 (데이터 신선도) 를 해결하는 알고리즘적 혁신을 통해 시스템의 안정성을 보장했습니다.
- 실용성: 오픈소스로 공개된 AREAL 은 연구자와 개발자가 더 적은 시간과 비용으로 더 강력한 추론 능력을 가진 모델을 훈련할 수 있게 하여, 대규모 AI 시스템의 발전에 기여할 것으로 기대됩니다.
결론적으로, AREAL 은 생성과 훈련의 분리, 신선도 관리, 분리된 PPO 목적 함수를 통해 대규모 RL 훈련의 병목 현상을 해결하고, 높은 처리량과 우수한 모델 성능을 동시에 달성한 획기적인 시스템입니다.