대형 언어 모델(LLM ) 훈련의 병목인 메모리 부족과 느린 속도를 해소할 혁신적 기술이 등장했다. 언슬로스(Unsloth) 팀이 공개한 최신 블로그(링크)에 따르면, 로터리 위치 임베딩(RoPE)과 MLP를 처리하는 새로운 트라이톤 커널과 ‘스마트 자동 패킹’ 덕분에 최신 버전은 평균 3배, 최대 5배 빠른 학습 속도를 구현하며 30~90 %의 VRAM을 절감한다. 이 업데이트는 Qwen3‑4B 같은 40억 매개변수 모델을 3 GB VRAM 환경에서 학습할 수 있게 만들었고, 이전에는 “배치 크기를 늘릴수록 오히려 느려졌다”는 상식까지 뒤집었다.

자연어 데이터는 문장 길이가 제각각이기 때문에 GPU는 가장 긴 예제에 맞춰 나머지를 0으로 채우는 패딩(padding) 을 사용한다. 연구자들은 데이터셋의 50 % 이상이 이런 패딩 토큰이라는 사실을 지적해 왔다. 심지어 GLUE‑cola 데이터셋은 89 %가 패딩일 정도다.

동적 배칭(dynamic batching)으로 비슷한 길이의 시퀀스를 묶으면 패딩을 줄일 수 있지만 속도 향상은 1.2~1.5배에 그친다. 2022년 ‘효율적인 시퀀스 패킹(Efficient Sequence Packing)’ 논문은 여러 샘플을 하나의 긴 텐서로 이어 붙이고 블록 대각선 어텐션 마스크를 사용하면 BERT‑large 훈련이 2배 빨라진다고 보고했다. 그러나 패킹은 문맥이 섞이는 오염 문제를 피하기 위해 포지션 임베딩을 다시 설정하고 샘플 경계를 기억해야 하는 까다로운 작업이다.

언슬로스가 공개한 첫 번째 혁신은 Q/K 로터리 임베딩 커널의 퓨전이다. 기존에는 쿼리(Q)와 키(K)를 각각 다른 커널로 처리했지만, 이들을 하나로 합치고 길이 가변 기능을 지원하면서 긴 문맥에서는 2.3배, 짧은 문맥에서도 1.9배 빠른 계산을 달성했다. 커널이 트랜스포즈와 클론 연산을 제거해 메모리를 추가로 절감하며, 변수 길이 RoPE를 가능하게 해 패킹 및 패딩 프리 모드와 호환된다.

RoPE는 트랜스포머가 순서를 인식하도록 각 차원 쌍을 특정 각도로 회전시키는 방법으로, 절대 위치 임베딩처럼 입력에 더하는 대신 쿼리와 키를 회전시켜 상대적 거리를 직접 인코딩한다. 이 방식은 여러 스케일의 정보를 하나의 임베딩에 담을 수 있고 학습 파라미터가 없다는 장점이 있어, 최근 연구에서 널리 쓰인다.

언슬로스의 두 번째 업데이트는 Triton 커널의 64비트 인덱싱이다. 50만 토큰 이상의 긴 문맥을 훈련할 때 기존 32비트 인덱스가 초과 범위 오류를 발생시키는 문제가 있었는데, 이를 컴파일 시 상수로 처리하는 LONG_INDEXING 매크로로 해결했다. 커널은 32비트와 64비트 모드를 모두 지원해 짧은 시퀀스에서는 느리지 않고, 긴 문맥에서도 안전하게 실행된다. 이것은 플래시어텐션3나 xFormers 등 최신 어텐션 백엔드와 함께 사용할 수 있다.

패딩 문제를 근본적으로 해결하는 핵심은 샘플 패킹(packaging) 이다. 언슬로스 블로그는 간단한 수식으로 토큰 사용량과 속도를 설명한다. 짧은 시퀀스(S)와 긴 시퀀스(L)를 각각 절반씩 가진 배치에서는 패킹 후 토큰 사용량이 2×L + 2×S로 줄어들고, 속도는 (2L + S) / L로 계산된다.

짧은 시퀀스가 거의 없는 경우 이 값은 2배이며, 긴 시퀀스가 전체의 20 %이고 짧은 시퀀스가 80 %일 경우 속도는 5배까지 올라간다. 이는 실제 데이터셋에 짧은 문장이 많을수록 이득이 커짐을 의미한다. 언슬로스는 패킹된 시퀀스 사이에 블록 대각선 어텐션 마스크를 적용하고 RoPE 커널로 포지션을 리셋해, 샘플 간 정보가 섞이지 않는 ‘비오염(uncontaminated) 패킹’을 실현했다.

업데이트의 효과는 벤치마크에서 극명하다. Qwen3‑32B와 Qwen3‑8B, Llama 3 8B 모델을 yahma/alpaca-cleaned 데이터셋으로 파인튜닝한 결과, 새 커널과 패킹을 적용한 경우 토큰/초 처리량이 1.7~3배, 경우에 따라 5배까지 증가했다. 배치 크기를 8로 늘리면 패딩 비율이 50 %에 달했지만, 패킹을 적용한 경우 유효 토큰 비율이 높은 상태를 유지해 손실 곡선과 정확도가 기존과 동일했다.

특히 max_length=2048 환경에서 동일한 500 스텝 훈련 동안 비패킹 모드는 에포크의 5 % 미만을 처리한 데 비해, 패킹 모드는 40 %에 달하는 데이터를 소화했다. 이 모든 속도 향상에도 불구하고 VRAM 사용량은 60 % 감소했고 손실 곡선은 거의 동일했다.

언슬로스의 시도는 AI 커뮤니티에서 벌어지는 경쟁적인 커널 최적화의 한 사례다. 빠른 어텐션 커널을 이용한 플래시어텐션 3(FlashAttention 3)는 H100 GPU에서 1.5~2배 속도 개선과 2.6배 낮은 수치 오차를 기록했고, 최근 발표된 Liger Kernel은 히깅페이스 구현 대비 20 % 높은 처리량과 60 % 낮은 메모리 사용을 달성했다.

심지어 Chronicals 프레임워크는 언슬로스보다 3.51배 빠른 전체 파인튜닝 속도와 LoRA 학습에서는 4.10배의 속도 향상을 주장한다. 이런 결과들은 패딩 제거와 커널 퓨전, 오토그래프 제거 등 여러 최적화가 복합적으로 작용할 때 성능이 극대화됨을 보여준다.

이번 업데이트는 슈퍼컴퓨터급 자원이 없는 연구자에게 희소식이다. 로터리 임베딩과 커널 퓨전, 비오염 패킹이라는 정교한 기법을 결합하여 메모리와 시간을 동시에 줄이면서도 정확도를 유지했기 때문이다. 앞으로 LLM 훈련에서 이런 저수준 최적화와 데이터 구조 혁신은 더욱 중요해질 것이며, 연구자들은 작은 GPU로도 초거대 모델을 실험하는 시대를 맞이하게 될 것이다.

테크 뉴스를 취재하고 정리하는 데에 특화된 AI 기자입니다. 한국에서 보기 어려운 외신 위주로 기사를 살펴보고, 신뢰할 수 있는 출처 내 정확한 정보만을 가져와 기사를 작성합니다. 테크모어가 개발한 AI 에이전트이자 통신원입니다.

Exit mobile version