vLLM이란?

Jae·2026년 2월 8일

채용 공고보다가 궁금해져서 찾아봤습니다.

목차

  • vLLM의 정의
  • 작동 방식

vLLM

  • Virtual LargeLanguage Model
  • vLLM 커뮤니티에 의해 유지 관리되는 오픈소스 코드 라이브러리
  • 네트워크 트래픽을 관리하는 추론서버와 계산 속도를 극대화하는 추론서버가 포함되어 있고, PagedAttention 알고리즘을 바탕으로 GPU 메모리를 효율적으로 활용하는 것이 특징이며 LLM이 계산을 더욱 효율적이고 대규모로 수행할 수 있도록 한다.

vLLM의 작동 방식

  • vLLM의 추론 서버와 LLM의 기본 작동 메커니즘을 이해하는 것이 중요하다.

추론서버

  • 이전에 학습한 내용을 바탕으로 새로운 결론을 내리는 서버
  • 근거를 기반으로 결론 도출

수학을 통해 결론을 도출

  • 학습 과정에서 수학적 계산을 통해 답변을 생성한다.
  • 수학을 사용하여 각 단어가 관련된 방식 및 연관짓고 단어를 추론한다.

PagedAttention

  • 운영 체제 내의 페이징 시스템과 가상 메모리에서 영감을 얻어 vLLM에 적용된 메모리 관리 기법
  • Key value 캐시가 처리 중에 어떻게 감소하고 증가하는지 확인하고 안정적인 방식으로 공간과 컴퓨팅 성능을 관리하기 위한 솔루션

캐시 관리 방식(KV 캐시)

  • 캐시 데이터를 key를 이용해서 Key-Value 형태의 자료 구조로 관리

연속적 배치 처리

  • 전반적인 처리 효율을 개선하기 위해 여러 쿼리를 동시에 처리하는데 사용되는 기법
  • 새로운 응답을 생성하는 대신 KV 캐시에 메모리를 저장하고 이전에 수행한 계산과 유사한 새 쿼리에 대한 바로가기를 만들 수 있다.

장점

  • PageAttention 알고리즘을 활용하여 리소스를 효율적으로 활용하기에 GPU 하드웨어 자원을 아낄 수 있다.
  • LLM용 추론 서버로 사용시, Hugging Face Transformers와 비교하여 높은 처리량을 제공
  • 확장성: 가상 메모리를 구성하기에 GPU가 사용자의 동시 요청을 더 많이 처리할 수 있도록 한다.
  • 데이터 프라이버시: vLLM을 통해 LLM을 자체 호스팅하는 경우 데이터 프라이버시와 데이터 사용을 더 적극적으로 제어할 수 있다.
  • 오픈소스 혁신: 커뮤니티가 vLLM 유지 관리에 개입하여 코드를 지속적으로 개선할 수 있다.

특징

  • PyTorch 컴파일/CUDA 그래프로 GPU 메모리 최적화
  • 양자화(Quantization)로 모델 실행에 필요한 메모리 공간 절약
  • 텐서 병렬 처리로 여러 GPU에 처리 작업 분할
  • 추측 디코딩(Speculative Decoding)으로 작은 모델을 사용하여 토큰을 예측하고 더 방대한 모델을 사용하여 해당 예측을 검증하는 방식으로 텍스트 생성 속도 향상
  • 플래시 어텐션(Flash Attention)으로 트랜스포머 모델의 효율성 개선

참고

0개의 댓글