airllm: 한 번에 한 레이어씩 로드하여 저사양 GPU에서 거대 LLM을 실행하는 메모리 효율적인 추론 엔진

airllm: 한 번에 한 레이어씩 로드하여 저사양 GPU에서 거대 LLM을 실행하는 메모리 효율적인 추론 엔진

해결하는 문제

AirLLM은 사용자가 VRAM이 매우 제한적인 소비자용 하드웨어에서 거대한 대규모 언어 모델(LLM)을 실행할 수 있게 해줍니다. Llama 3.1 405B 또는 DeepSeek-V3 671B와 같은 모델을 8GB에서 12GB 정도의 메모리만 있는 GPU에서 실행할 수 있게 하여, 값비싼 고사양 GPU나 증류(distillation) 또는 가지치기(pruning)와 같은 복잡한 모델 압축 기술의 필요성을 우회합니다.

작동 방식

모델 전체를 VRAM에 로드하는 대신, AirLLM은 모델을 분해하여 레이어별로 저장합니다. 추론 과정에서 GPU에는 한 번에 모델의 한 레이어만 유지되므로, VRAM 요구 사항은 전체 모델 크기가 아닌 단일 레이어의 크기에 의해 결정됩니다. 또한 디스크 상의 가중치 크기를 줄이고 로딩 시간을 최대 3배까지 단축하기 위해 선택적인 블록 단위 양자화(4-bit 또는 8-bit)를 지원합니다.

대상 사용자

모델 정확도를 희생하지 않으면서 저사양 범용 컴퓨터나 취미용 GPU 카드에서 최첨단 거대 LLM을 실행하고자 하는 개발자와 연구자.

주요 특징

  • 극단적인 VRAM 효율성: 70B 모델을 4GB GPU에서, 671B 모델을 12GB GPU에서 실행할 수 있습니다.
  • 폭넓은 모델 지원: 단일 AutoModel 인터페이스를 통해 Llama, Qwen, DeepSeek, Mistral, Mixtral, Phi, Gemma 등을 지원합니다.
  • 정확도 손실 없음: 기본적으로 양자화, 증류 또는 가지치기를 요구하지 않고 작동합니다.
  • 교차 플랫폼 지원: Linux 및 Apple Silicon (MacOS)에서 작동합니다.
  • 성능 최적화: 더 빠른 추론을 위해 모델 로딩과 연산을 중첩시키기 위한 프리페칭(prefetching)을 기능에 포함하고 있습니다.

Sources