피드로 돌아가기
Benchmarking Text Generation Inference
Hugging Face BlogHugging Face Blog
Backend

Hugging Face가 TGI Benchmarking 도구를 공개해 LLM 배포 시 Latency와 Throughput의 트레이드오프를 가시화하고 최적 설정 탐색 가능

Benchmarking Text Generation Inference

2024년 5월 29일12intermediate

Context

LLM 배포 비용이 높고 성능 튜닝이 어려운 상황에서 단순 처리량만으로는 배포 최적화를 판단하기 어렵다. 같은 하드웨어에서도 RAG(500~1000토큰 입력) 대 Chat(50~200토큰 입력) 같은 사용 사례에 따라 서버 설정을 다르게 구성해야 하는데, 각 구성이 실제로 어떤 성능 트레이드오프를 초래하는지 파악할 수단이 부족했다.

Technical Solution

  • Prefill과 Decode 단계 분리 이해: 전체 프롬프트는 단일 포워드 패스(Prefill)로 처리하고, 각 생성 토큰은 별도 포워드 패스(Decode)가 필요한 구조를 시각화
  • Token Latency, Request Latency, Time to First Token을 분리해 측정: 요청당 처리 시간이 아닌 토큰 단위 레이턴시와 응답 속도를 개별 지표로 제공
  • Batch Size별 성능 곡선 그래프 제공: 배치 크기 증가 시 Memory-Bound 구간(처리량 증가)과 Compute-Bound 구간(처리량 정체)을 구분 가능
  • Hugging Face Space에서 대화형 프로파일링 환경 제공: TGI-launcher.ipynb 노트북과 벤치마킹 도구를 함께 실행해 실시간으로 설정 변경 후 성능 재측정 가능
  • AWS, GCP, Inference Endpoints 등 동일 하드웨어 환경에 결과 이식: 한 번의 벤치마킹으로 도출한 최적 설정을 프로덕션 환경에 직접 적용

Key Takeaway

LLM 서버 최적화는 Flash Attention, Paged Attention, 양자화 같은 개별 기술 적용보다, 실제 워크로드(입력/출력 토큰 분포)에 맞춰 Batch Size와 메모리 정책을 정량적으로 튜닝하는 것이 비용 절감의 핵심이다.


LLM 배포를 운영하는 팀에서 TGI Benchmarking 도구를 통해 예상 사용 시나리오(평균 입력 토큰 수, 동시 사용자 수, 배치당 최대 요청 수)를 입력하면, Batch Size별 Latency-Throughput 곡선을 얻고 하드웨어 비용 대비 응답 시간 목표를 만족하는 최적 설정을 1~2시간 내에 결정할 수 있다.

원문 읽기