ref : https://sjkoding.tistory.com/91 ( 압도적 감사.)
위 링크 들어가면 자세히 설명되어 있습니다.
vllm은 대규모 언어 모델의 효율적인 추론을 위해 설계된 library이다.
- 모델 추론 중에 반복적으로 참조되는 데이터의 캐싱을 위해 키-값 캐시(KV Cache)를 사용.
- KV Cache는 트랜스포머 모델의 각 레이어에서 생성된 Key, Value 텐서를 저장하여, 동일한 입력에 대해 반복적인 계산을 피하고 성능을 최적화.
KV Cache는 다음과 같은 장점을 제공한다:
- 추론 속도 향상: KV Chache.
- 메모리 사용 최적화: 캐싱을 통해 필요한 메모리 용량을 줄이고, 효율적인 메모리 관리를 가능하게 한다.
- 메모리를 많이 소모할 수 있d음: 특히, 전체 GPU 메모리의 90%를 할당하여 모델 추론과 KV Cache를 처리함. 이는 빠른 추론이 가능하지만, GPU 메모리 부족을 초래할 수 있음.
해결
gpu_memory_utilization=0.8 % 약간 작게 설정
model = LLM(model_id, gpu_memory_utilization=gpu_memory_utilization)