SGLang으로 새 모델 평가하기

SGLang으로 새 모델 평가하기

이 문서는 모델의 정확도와 성능을 평가하는 명령을 제공해요. 새 모델을 오픈소싱하기 전에, 이 명령들을 돌려 점수가 내부 벤치마크 결과와 일치하는지 확인해 봐 주세요.

교차 검증을 위해, 모델을 오픈소싱할 때 설치·서버 실행·벤치마크 실행 명령을 모든 점수와 하드웨어 요구사항과 함께 제출해 주세요.

참고: MiniMax M2

출처: SGLang으로 새 모델 평가하기

정확도

LLM

SGLang은 일반적인 벤치마크를 평가하는 내장 스크립트를 제공해요.

MMLU

python -m sglang.test.run_eval \
  --eval-name mmlu \
  --port 30000 \
  --num-examples 1000 \
  --max-tokens 8192

GSM8K

python -m sglang.test.run_eval \
  --eval-name gsm8k \
  --host 127.0.0.1 \
  --port 30000 \
  --num-examples 200 \
  --num-shots 5

HellaSwag

python benchmark/hellaswag/bench_sglang.py \
  --host http://127.0.0.1 \
  --port 30000 \
  --num-questions 200 \
  --num-shots 20

GPQA

python -m sglang.test.run_eval \
  --eval-name gpqa \
  --port 30000 \
  --num-examples 198 \
  --max-tokens 120000 \
  --repeat 8
reasoning 모델에는 `--thinking-mode `를 추가하세요. 지원 값은 `deepseek-v3`, `qwen-3`, `glm-45`, `kimi-k2`예요. 모델이 강제 thinking을 사용 중이라면 생략할 수 있어요.

HumanEval

pip install human_eval

python -m sglang.test.run_eval \
  --eval-name humaneval \
  --num-examples 10 \
  --port 30000

VLM

MMMU

python benchmark/mmmu/bench_sglang.py \
  --port 30000 \
  --concurrency 64
max tokens는 `--extra-request-body '{"max_tokens": 4096}'`로 설정할 수 있어요.

비디오를 처리할 수 있는 모델이라면 평가 범위를 VideoMME, MVBench 같은 관련 벤치마크로 넓히는 걸 추천해요.

성능

성능 벤치마크는 Latency(Time To First Token - TTFT)와 Throughput(tokens/second)을 측정해요.

LLM

지연 민감 벤치마크

단일 사용자처럼 낮은 동시성을 시뮬레이션해서 지연을 측정해요.

python -m sglang.bench_serving \
  --backend sglang \
  --host 0.0.0.0 \
  --port 30000 \
  --dataset-name random \
  --num-prompts 10 \
  --max-concurrency 1

처리량 민감 벤치마크

높은 트래픽 시나리오를 시뮬레이션해서 시스템 최대 처리량을 측정해요.

python -m sglang.bench_serving \
  --backend sglang \
  --host 0.0.0.0 \
  --port 30000 \
  --dataset-name random \
  --num-prompts 1000 \
  --max-concurrency 100

단일 배치 성능

단일 배치를 오프라인으로 처리하는 성능도 벤치마크할 수 있어요.

python -m sglang.bench_one_batch_server \
  --model <model-path> \
  --batch-size 8 \
  --input-len 1024 \
  --output-len 1024

더 세분화된 벤치마크를 실행할 수도 있어요.

  • 낮은 동시성: --num-prompts 10 --max-concurrency 1
  • 중간 동시성: --num-prompts 80 --max-concurrency 16
  • 높은 동시성: --num-prompts 500 --max-concurrency 100

결과 보고하기

각 평가에 대해 다음을 보고해 주세요.

  1. Metric 점수: 정확도 %(LLM, VLM); 지연(ms)과 처리량(tok/s)(LLM만).
  2. 환경 설정: GPU 종류/개수, SGLang 커밋 해시.
  3. 실행 구성: 모델 경로, TP 크기, 특별한 플래그.
  4. 평가 파라미터: 샷 수, 예시 수, max tokens.

더 알아보기 (Learn more)