LLM 서빙 관련 정리

📌 LLM 서빙 관련 핵심 정리

개요

  • LLM 서빙 도구(MLC, CTranslate2, vLLM, TensorRT-LLM 등)는 오픈소스 LLM 가중치를 GPU/CPU/모바일 등 다양한 환경에서 고성능·저지연으로 제공하기 위한 프레임워크.
  • 폐쇄형 모델(OpenAI GPT, Claude, Gemini 등)은 가중치 비공개 → 직접 서빙 불가능, API 기반으로만 사용.
  • Azure OpenAI / AWS Bedrock: 모델 가중치를 제공하지 않는 관리형 LLM 서비스. 직접 수정은 불가, 제한된 Fine-tuning API만 제공.
  • 자체 서빙 이유: 보안, 데이터 소유권, 비용 절감, 커스터마이징, 성능 제어.
  • 모델 수정 방식:
  • 가중치 수정: 모델을 뜯어서 파라미터를 직접 고치는 것. 직접 weight를 변경 → 관리형 LLM 불가.
  • Fine-tuning: 제한된 API로 특정 태스크/도메인 학습.
  • RAG: 외부 지식을 검색해 모델 입력에 주입.

1. LLM 서빙 도구 성능/메모리/동시성/하드웨어 지원 비교

도구성능(추론 속도)메모리 효율동시성 처리하드웨어 지원
MLC-LLM중~상 (하드웨어별 최적화 필요)우수 (양자화, 오프로드 지원)중간 수준CPU, GPU, NPU, WebGPU, 모바일
CTranslate2중간 (CPU 최적화 강점)매우 우수 (저메모리 운영)제한적CPU, GPU (NVIDIA, Intel)
vLLM매우 높음 (PagedAttention)우수 (효율적 KV 캐시)매우 높음 (대규모 동시 요청 처리)GPU 중심 (CUDA)
TensorRT-LLM최고 (NVIDIA GPU 전용 최적화)우수 (FP8, INT4)높음NVIDIA GPU 전용
TGI높음 (FlashAttention)우수높음GPU 중심
llama.cpp낮음~중간 (CPU 기반)매우 우수 (int4/int8 양자화)낮음CPU, 모바일, WebAssembly

2. API 기반 vs 자체 서빙 기반 비교

항목API 기반 (OpenAI, Claude API 등)자체 서빙 (vLLM, TensorRT-LLM 등)
보안외부 전송 필요 → 기밀 유출 위험사내망/온프레미스 → 높은 보안성
비용소규모 저렴, 대규모 고비용초기 비용↑, 대규모 장기 저렴
운영 난이도쉬움 (서비스 제공사 관리)높음 (모델 배포·모니터링 필요)
유연성모델 구조/가중치 수정 불가자유로운 수정·최적화 가능
성능 제어제공사 SLA 의존하드웨어·소프트웨어 직접 튜닝 가능
업데이트자동 최신 모델 제공직접 업그레이드 필요

3. 가중치 수정 vs Fine-tuning vs RAG 비교

  • 관리형 LLM에서의 Fine-tuning 제한 사항
  • 원본 가중치 접근 불가
  • 커스텀 학습 데이터 업로드만 가능
  • 학습된 결과물은 API 형태로만 호출 가능
구분가중치 수정 (Weight Editing)Fine-tuningRAG (검색결합생성)
정의특정 레이어 파라미터 직접 변경새 데이터로 모델 재학습외부 지식 검색 후 입력에 결합
목적특정 지식/편향 수정, 미세 변경도메인/태스크 특화최신 정보 반영, 지식 확장
수정 범위단일 파라미터~전체 가능전체/부분 레이어모델 가중치 변경 없음
데이터 필요없음 또는 소량학습 데이터 필수문서·DB 등 외부 자료
속도/비용빠름(소규모 변경)느림(학습 필요)빠름(검색+추론)
관리형 LLM에서 가능 여부❌ 불가✅ 일부 가능 (API 제공 범위 내)✅ 가능
예시모델에 저장된 잘못된 사실 수정GPT-3.5를 법률 문서 작성 특화내부 문서 검색 후 답변

서빙 성능 최적화 실습

다운로드 링크 serving_extensions_vllm_tensorrtllm.ipynb

vLLMTensorRT-LLM을 이용한 고성능 LLM 서빙 환경 구축 가이드와 성능 튜닝 실습.

주요 내용:

  • vLLM Python API 및 OpenAI 호환 서버 실행 방법
  • 동시성/배치/메모리 최적화 옵션 (max_num_batched_token, gpu_memory_utilization 등)
  • TensorRT-LLM 변환/엔진 빌드 명령어 예시 (fp16, fp8, int8 정밀도 선택)
  • 런타임 추론, 서버 모드 구성, 병렬화 전략
  • OpenAI 호환 엔드포인트 성능 측정 미니 벤치마크 코드
  • 실전 성능 최적화 체크리스트

—— GPT-5, Claude-4 를 통해 생성된 문서를 수정

AD

코멘트

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다