4GB 그래픽 카드로 70B 언어 모델을 실행하고 미세 조정까지 하는 방법
고사양 서버 없이도 거대한 언어 모델을 내 컴퓨터에서 직접 실행해 볼 수 있습니다. AirLLM은 모델의 레이어를 하나씩 불러와 메모리를 아끼는 방식으로, 작은 그래픽 카드에서도 대형 모델 추론이 가능하게 합니다. 최근에는 추론뿐 아니라 미세 조정(Training)까지 지원해, 제한된 하드웨어 환경에서 모델 학습 실험도 할 수 있게 되었습니다.
레이어 스트리밍으로 메모리 장벽을 넘다
기존 방식은 모델 전체를 그래픽 카드 메모리에 올려야 했지만, AirLLM은 한 번에 하나의 레이어만 GPU에 올리고 나머지는 디스크에 두는 방식을 사용합니다. 덕분에 모델의 총 크기가 아니라 단일 레이어의 크기가 메모리 사용량을 결정합니다. 이를 통해 70B 모델은 4GB, 671B 모델은 약 12GB의 VRAM에서 실행됩니다. 양자화나 증류 같은 정밀도 손실 과정 없이 원본 모델의 성능을 유지하면서 메모리 부담을 크게 줄이는 것이 핵심입니다.
추론과 학습을 위한 최신 업데이트
동결된 기본 가중치는 디스크에서 레이어 단위로 스트리밍되고, 어댑터만 GPU에 상주하도록 설계되었습니다. 이를 통해 Qwen3.8-Flash-Next(125B) 모델은 6GB 미만의 VRAM에서 학습이 가능하며, Qwen3.8-27B는 시퀀스 길이 512 기준 약 2GB에서 학습할 수 있습니다. 또한 2026년 8월에는 Qwen3.8-Flash-Next와 Qwen3.8-27B 모델에 대한 공식 지원이 추가되어, 최신 아키텍처의 모델들도 동일한 인터페이스로 사용할 수 있게 되었습니다.
모델별 VRAM 사용량과 지원 범위
AirLLM은 Hugging Face의 AutoModel 인터페이스를 사용해 다양한 오픈소스 모델을 지원합니다.
- 중소형 모델 (8B~30B) Qwen3, Mistral, Phi 등 8B급 모델은 약 1~2GB, 30B급 MoE 모델은 약 1~3GB의 VRAM을 사용합니다.
- 대형 모델 (70B~235B) Llama 3.x 70B는 약 4GB, Qwen3-235B는 약 3GB, Qwen3.8-27B는 3.33GB의 VRAM에서 실행됩니다.
- 초대형 모델 (405B~671B) Llama 3.1 405B는 약 8GB, DeepSeek-V3(671B)는 약 12GB, Kimi K3(2.8T)는 3.72GB의 VRAM에서 동작합니다.
설치와 실행을 위한 준비 사항
AirLLM은 pip install airllm 명령으로 설치하며, macOS의 Apple Silicon 칩도 지원합니다. 추론 시 모델이 레이어별로 분할되어 저장되므로, Hugging Face 캐시 디렉토리에 충분한 디스크 공간이 필요합니다. 특정 모델은 추가 의존성이 요구되는데, Kimi K3는 compressed-tensors와 flash-attn 설치 및 CUDA 12 기반 torch가 필요하고, Qwen3.8-Flash-Next는 transformers의 특정 빌드가 필요합니다. 또한 모델 분할 과정에서 디스크 공간이 부족하면 delete_original 옵션을 통해 원본 파일을 삭제하여 공간을 확보할 수 있습니다.
사용 전 확인해야 할 기술적 제약
AirLLM은 메모리 효율성을 극대화하기 위해 디스크 I/O에 의존하므로, SSD와 같은 빠른 저장 장치가 추론 속도에 영향을 미칩니다. 모델 압축(4bit/8bit) 기능을 사용하면 추론 속도를 최대 3배까지 높일 수 있지만, 이는 bitsandbytes 라이브러리 설치와 airllm 2.0.0 이상 버전이 필요합니다. 학습 기능은 Hugging Face Trainer나 bitsandbytes QLoRA와 다른 방식으로 동작하며, 특정 모델의 경우 transformers 라이브러리의 최신 개발 버전 설치가 필수입니다. 하드웨어 사양이 제한된 환경에서 대형 모델을 실험적으로 다루고자 하는 개발자에게 적합하지만, 실시간성이 극도로 중요한 서비스에는 디스크 로딩 지연이 발생할 수 있으므로 주의가 필요합니다.