vllm-project/guidellm

Evaluate and Enhance Your LLM Deployments for Real-World Inference Needs

GuideLLM – LLM 추론을 위한 SLO 인식 벤치마킹

개요 – GuideLLM은 실제 프로덕션 워크로드에서 대규모 언어 모델이 어떻게 동작하는지 평가할 수 있는 Python 기반 플랫폼입니다. OpenAI 호환 엔드포인트(vLLM 서버 포함)와 통신하고, 구성 가능한 트래픽 패턴을 생성하며, 상세한 지연 시간 및 토큰 수준 메트릭을 기록하여 배포가 서비스 수준 목표(SLO)를 충족하는지 확인할 수 있습니다.

사용 이유

  • SLO 중심 메트릭 – 첫 토큰 지연 시간, 토큰 간 지연 시간, 종단 간 지연 시간 분포, 토큰 처리량을 캡처합니다.
  • 현실적인 트래픽 생성 – 동기, 동시, 고정 비율, 푸아송, 스윕 프로파일을 지원하며, 워밍업/쿨다운 처리를 포함합니다.
  • 유연한 데이터 소스 – 합성 텍스트, 합성 이미지/비디오, HuggingFace 데이터셋, 로컬 JSON/CSV/텍스트 파일 또는 사용자 지정 로더.
  • 멀티모달 지원 – 비전 입력을 합성하여 VLM 서비스를 벤치마킹할 수 있습니다.
  • 표준화된 출력 – 대시보드 또는 회귀 추적을 위한 JSON, CSV, HTML, 플롯 파일.
  • 확장 가능한 CLI/API – 스크립팅이나 CI 파이프라인에 쉽게 통합 가능. Kubernetes/Openshift용 컨테이너 이미지도 제공.

빠른 시작

# 설치 (Python 3.10‑3.13)
pip install guidellm[recommended]

# vLLM 서버 시작 (예제 모델)
vllm serve "neuralmagic/Meta-Llama-3.1-8B-Instruct-quantized.w4a16"

# 스윕 벤치마크 실행 (최대 30초)
guidellm run \
  --backend kind=openai_http,target=http://localhost:8000 \
  --profile kind=sweep \
  --constraint kind=max_duration,seconds=30 \
  --data kind=synthetic_text,prompt_tokens=256,output_tokens=128

이 명령은 진행 상황을 출력한 후 benchmarks.json/benchmarks.csv(또는 요청 시 HTML/플롯)를 결과 디렉토리에 작성합니다.

일반적인 워크플로우

목표 예제 명령 스니펫
속도 제한 부하 테스트 --profile kind=constant,rate=10 --constraint kind=max_duration,seconds=20
데이터셋 기반 평가 --data kind=huggingface,source=abisee/cnn_dailymail,load_kwargs.name=3.0.0 --data‑column‑mapper kind=generative_column_mapper,column_mappings.text_column=article
채팅 완성 벤치마크 --backend kind=openai_http,target=http://localhost:8000,request_format=/v1/chat/completions --data kind=json_file,path=data.json
멀티모달 VLM 테스트 --data kind=synthetic_image,... --data kind=synthetic_text,...
시나리오 재사용 guidellm run --config chat --backend kind=openai_http,target=http://localhost:8000

설치 옵션

  • PyPI – pip install guidellm[recommended]
  • 소스에서 – pip install git+https://github.com/vllm-project/guidellm.git
  • 컨테이너 – ghcr.io/vllm-project/guidellm:<태그> (멀티 아키텍처, Docker/Podman/K8s 지원)

프로젝트 확장 리포지토리에는 DEVELOPING.md, CONTRIBUTING.md, 행동 강령이 포함되어 있습니다. 개발자는 문서화된 플러그인 아키텍처를 따라 새로운 백엔드, 요청 형식 또는 데이터 로더를 추가할 수 있습니다.

라이선스 및 인용

  • Apache 2.0
  • 연구에서 GuideLLM을 사용하는 경우 제공된 BibTeX 항목으로 인용하세요.

GuideLLM은 SLO 인식 성능 데이터가 필요한 엔지니어와 ML 팀을 위한, 실제 제품 지향적인 LLM 추론 벤치마킹 스위트입니다.

관련

  • 프로젝트
  • Dispatch
  • 프로젝트
  • 프로젝트
  • 프로젝트