최근 대규모 언어모델(LLM)의 효율적인 확장을 가능하게 하는 혼합 전문가(MoE) 모델이 주목받고 있습니다. 하지만 MoE 모델은 추론(inference) 과정에서 발생하는 병목 현상 때문에 낮은 지연 시간(low-latency)을 달성하기 어렵다는 문제가 있었습니다. 이러한 문제를 해결하기 위해 '엑스폴드(ExFold)'라는 새로운 프레임워크가 제안되었는데, 이는 MoE 모델의 사전 학습(prefill)과 디코딩(decode) 두 가지 추론 단계를 통합적으로 가속화하여 최대 2.45배의 속도 향상을 이뤄냈습니다.
MoE 모델의 추론 과정은 크게 두 단계로 나뉩니다. 첫 번째는 사전 학습(prefill) 단계로, 입력 토큰(token)별 전문가(expert) 계산이 병목 현상을 일으킵니다. 두 번째는 디코딩(decode) 단계로, 배치(batch) 단위로 활성화되는 전문가 집합에서 발생하는 메모리 트래픽이 문제입니다. 기존의 가속화 방법들은 이 두 단계 중 하나에만 초점을 맞추거나, 제외된 전문가의 기여를 제대로 반영하지 못했습니다. 엑스폴드는 이 문제를 해결하기 위해 '전문가 폴딩(expert folding)'이라는 개념을 도입했습니다. 이는 예산 제약 내에서 핵심 전문가만 실행하되, 제외된 전문가들의 기여를 보정된 스칼라 프로젝터(scalar projector)를 사용하여 남은 전문가들에게 투영하는 방식입니다. 이를 통해 사전 학습 단계에서는 토큰(token) 수준의 상위 K개 전문가 폴딩을, 디코딩 단계에서는 배치(batch) 수준의 전문가 풀(pool) 폴딩을 수행하여 두 단계 모두에서 효율성을 극대화합니다.
엑스폴드는 vLLM에 플러그인(plug-in) 형태로 구현되었으며, 경량 전문가 폴딩 CUDA 커널을 통해 기존 품질의 약 99%를 유지하면서도 첫 토큰 생성 시간(TTFT)을 최대 1.41배, 토큰당 처리 시간(TPOT)을 최대 2.45배 단축하는 성능을 보였습니다. 이는 MoE 모델을 사용하는 서비스 제공자들에게 상당한 운영 비용 절감 효과를 가져다줄 것입니다. 특히, 별도의 재학습(re-training) 과정 없이 적용 가능하다는 점은 기존 MoE 모델에 쉽게 통합될 수 있음을 의미하며, 대규모 AI 모델의 상용화와 확산에 중요한 기여를 할 것으로 기대됩니다.
