대규모 언어 모델인 LLM (Large Language Model)은 이제 인공지능 분야의 핵심 기술로 자리 잡았습니다. 이 모델들을 실제로 구동하고 우리가 원하는 결과를 얻으려면 특별한 소프트웨어 구성 요소가 필요한데, 이를 LLM 추론 엔진 (LLM Inference Engine) 이라고 부릅니다. LLM 추론 엔진은 모델을 메모리에 로드하고, 복잡한 계산을 수행하며, 최종 결과를 생성하는 모든 과정을 효율적으로 관리합니다.
LLM 추론 엔진은 주로 백엔드 실행 방식과 주요 활용 목적에 따라 3 가지 주요 계열로 나눌 수 있습니다. 각 계열은 특정 시나리오와 요구사항에 최적화되어 있습니다.
LLM 추론 엔진 분류 기준
우리는 LLM (Large Language Model) 추론을 위한 핵심 기술 스택과 주요 활용 목적을 기준으로 다음과 같이 분류합니다:
- PyTorch Framework + Hugging Face Transformers Library 기반: 연구 개발 및 높은 유연성을 필요로 하는 경우에 적합합니다.
- vLLM 기반: 대규모 동시 사용자 환경에서 빠른 속도와 높은 처리량을 요구할 때 사용합니다.
- Ollama C++ 언어 기반 GGUF format 모델 실행기: 제한된 리소스의 로컬 환경이나 오프라인 환경에서 경량화된 모델을 실행하는 데 최적화되어 있습니다.
1. PyTorch + Hugging Face Transformers 기반 (개발용)
이 계열은 AI (인공지능) 연구 커뮤니티에서 가장 널리 사용되는 조합입니다. PyTorch 프레임워크와 Hugging Face 의 transformers 라이브러리를 핵심으로 사용합니다. 이 조합의 가장 큰 장점은 모델의 구조를 유연하게 변경하고, 새로운 연구 아이디어를 빠르게 실험할 수 있다는 점입니다.
- TGI (Text Generation Inference): Hugging Face (허깅 페이스)에서 공식적으로 지원하는 고성능 추론 서비스입니다. REST API (레스트 에이피아이)를 제공하여 쉽게 통합할 수 있으며, 안정적인 운영이 가능합니다. 주로 서버나 클라우드 환경에서 사용됩니다.
- Gradio + transformers: 간단한 웹 UI 를 빠르게 만들어서 모델의 작동을 시연하거나 실험하는 데 유용합니다. 주로 로컬이나 Colab 과 같은 개발 환경에서 사용됩니다.
- FastChat: 다양한 LLM (Large Language Model)을 지원하는 멀티 모델 챗 UI와 REST API를 제공합니다. 여러 모델을 비교하거나 통합된 인터페이스로 사용하고 싶을 때 유용합니다.
2. vLLM 기반 (고속 대규모 처리 서버용)
vLLM 은 대규모 LLM (Large Language Model) 서비스를 위한 고성능 추론 엔진으로 각광받고 있습니다. 특히, GPU 메모리 사용을 획기적으로 최적화하는 PagedAttention과 같은 고급 기술을 사용하여, 수천 명의 동시 사용자가 LLM을 이용하더라도 높은 처리량과 낮은 응답 시간을 보장합니다.
- vLLM (단독 실행):
vLLM(브이엘엘엠) 자체는 주로 백엔드 엔진으로 사용됩니다. 대규모 언어 모델을 서비스하는 기업 환경에서 핵심적인 역할을 합니다. - FastChat-vLLM / OpenChat:
vLLM(브이엘엘엠)을 백엔드로 활용하여 사용자 친화적인 챗 인터페이스를 제공하는 솔루션입니다. 고성능 챗봇 서비스를 구축하는 데 적합합니다. - SkyPilot 기반 서버: 클라우드 환경에서
vLLM(브이엘엘엠) 기반의 고속 추론 서버를 자동으로 배포하고 관리할 수 있도록 돕는 도구입니다.
3. Ollama C++ 언어 기반 GGUF (지지유에프) 형식 모델 실행기
이 계열은 주로 C++ 언어로 구현된 경량 추론 엔진을 사용하며, GGUF 포맷으로 양자화된 모델을 효율적으로 실행하는 데 특화되어 있습니다. 양자화는 모델의 크기를 줄여 메모리 사용량을 낮추는 기술입니다. 따라서 이 실행기들은 고성능 GPU가 없어도 개인 컴퓨터나 임베디드 장치와 같은 제한된 리소스 환경에서 LLM (Large Language Model)을 실행하는 데 매우 적합합니다.
실행 엔진 Ollama의 주요 백엔드는 llama.cpp 으로, 이는 GGUF (지지유에프) 모델을 로컬에서 가장 쉽게 실행할 수 있도록 돕는 도구입니다. 모델 다운로드부터 실행까지의 과정을 자동화하여 사용 편의성이 매우 높습니다. Mac, Windows, Linux 등 다양한 운영체제를 지원합니다. 다음 실행 엔진들은 Ollma를 포함하고 있습니다.
- LibreChat
- AnythingLLM
- msty.app
- jan.ai