Apex-2 구축 과정에서 배운 점
요약
Apex-2 모델 구축 과정에서 GPU 병목 현상, 비용 효율적인 인스턴스 활용법(GH200), 그리고 데이터 중복 제거 전략 등 실질적인 경험을 공유합니다. 특히 두 개의 GH200 인스턴스를 사용하고 주기적으로 모델을 병합하는 방식이 단일 H100보다 저렴하면서도 1.9배 빠르게 학습을 진행할 수 있음을 보여줍니다.
핵심 포인트
- GPU와 VRAM은 여전히 가장 큰 비용 및 성능 병목 지점이다.
- 두 개의 GH200 인스턴스를 활용하고 주기적으로 모델을 병합하는 것이 효율적이다.
- 데이터셋의 중복 제거는 컴퓨팅 자원 절약에 필수적인 트레이드오프다.
안녕하세요 여러분, 제 모델에 관심을 가져주셔서 정말 감사합니다. 기대했던 것보다 훨씬 큰 반응입니다.
여기 Apex-2를 구축하면서 겪었던 시행착오에 대한 간략한 요약이 있습니다.
- GPU가 항상 병목 지점이었다
저는 약 1T 토큰으로 학습시키려고 계획했지만, 결국 약 80B만 학습시킬 수 있었습니다. FineWeb-Edu만 해도 약 1.3T 토큰인데, 제가 규모를 명확하게 과소평가했습니다. 단일 H100으로는 충분하지 않았습니다. 이 프로젝트는 왜 그렇게 많은 돈이 GPU와 VRAM에 투입되는지 정말 보여주었습니다. - DiLoCo
같은 리전 내에서 두 개의 독립적인 인스턴스를 실행하는 것이 저에게 더 효과적이었습니다. 2x H100 인스턴스 대신, 저는 두 개의 GH200 인스턴스를 사용하고 고정된 단계마다 모델을 병합했습니다.
각 GPU는 약 40%의 MFU에 도달했습니다. 2x H100 인스턴스는 GPU당 비용이 더 많이 들었습니다(GH200의 시간당 $2.29 대비 약 $4.19/시간). 두 개의 GH200 인스턴스를 사용하고, 각각 약 40% MFU로 매 350단계마다 병합하자, 학습은 단일 GPU에서보다 저렴한 비용으로 약 1.9배 빠르게 진행되었습니다. (인스턴스 간의 데이터센터 네트워크가 도움이 되었을 수 있습니다. 일반적으로 병합은 1분도 걸리지 않았습니다.) - FineWeb-Edu와 DCLM의 중복 제거
전체 코퍼스를 한 번에 중복 제거(MinHash, 근접 중복 포함)했을 때, 제 FineWeb-Edu 샘플의 57%와 DCLM의 34%가 중복인 것으로 나타났습니다. FineWeb-Edu는 각 Common Crawl 스냅샷 내에서만 중복 제거되므로, 나중에 크롤링된 페이지는 남아 있습니다. 예산이 더 크다면 상관없을 수 있지만, 저는 매우 적은 컴퓨팅 자원으로 최대한의 효율을 뽑아내야 했기 때문에 이들을 제거했습니다. (참고: FineWeb 저자들은 스냅샷 전반에 걸쳐 중복 제거하는 것이 그들의 결과를 개선하지 않았다고 보고했으므로, 이것은 자유로운 승리라기보다는 트레이드오프입니다.)
MoE 아키텍처의 경우 Mixtral 논문(https://arxiv.org/abs/2401.04088)을 따랐습니다. 전체 프로젝트 비용은 약 $2,000이었습니다.
관심 있으시면 LLM에 대한 저의 생각도 여기에 작성했습니다: https://github.com/DW-dev-UE/LLM-from-scratch/blob/main/ThinkingLab/ThinkingLab.en.md
관심 가져주셔서 다시 한번 감사드립니다! 기회가 된다면 연구실에 참여하여 모두를 위한 LLM 구축을 돕고 싶습니다.
제출자: /u/Prestigious-Taste-63
[링크] [댓글]
AI 자동 생성 콘텐츠
본 콘텐츠는 r/LocalLLaMA의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
원문 바로가기