엔진 인자
엔진 인자 (Engine Arguments)
엔진 인자는 vLLM 엔진의 동작을 제어합니다. 오프라인 추론에서는 LLM 클래스의 인자로, 온라인 서빙에서는 vllm serve의 인자로 전달됩니다.
출처: 문서
본문
엔진 인자 클래스(EngineArgs, AsyncEngineArgs)는 vllm.config에 정의된 구성 클래스들을 조합한 것입니다. 따라서 개발자 문서가 필요하다면 이 구성 클래스들을 보는 것을 권장합니다. 타입·기본값·docstring의 진실의 원천(source of truth)이 바로 이 클래스들이기 때문입니다.
JSON CLI 인자를 넘길 때, 아래 두 방식은 서로 동등합니다.
--json-arg '{"key1": "value1", "key2": {"key3": "value2"}}'
--json-arg.key1 value1 --json-arg.key2.key3 value2
리스트 요소는 + 기호로 각각 전달할 수 있습니다.
--json-arg '{"key4": ["value3", "value4", "value5"]}'
--json-arg.key4+ value3 --json-arg.key4+='value4,value5'
EngineArgs 인자 그룹
vllm serve와 LLM(...)에서 쓰는 인자는 크게 여러 그룹으로 나뉩니다.
| 그룹 | 설명 |
|---|---|
| ModelConfig | 모델 및 모델 실행기(runner) 설정 |
| CacheConfig | KV 캐시 관련 설정 |
| ParallelConfig | 텐서/파이프라인/데이터 병렬화 등 |
| SchedulerConfig | 스케줄링(max_num_seqs, max_num_batched_tokens 등) |
| DeviceConfig | 실행 디바이스 설정 |
| LoRAConfig | LoRA 어댑터 설정 |
| PromptConfig | 프롬프트 관련 설정 |
| EngineConfig | 엔진 전반 구성 |
ModelConfig 핵심 인자
| 인자 | 기본값 | 설명 |
|---|---|---|
--model |
Qwen/Qwen3-0.6B |
사용할 Hugging Face 모델의 이름 또는 경로 |
--runner |
auto |
사용할 모델 러너 종류(auto, draft, generate, pooling). vLLM 인스턴스 하나는 러너 하나만 지원 |
--convert |
auto |
어댑터로 모델 변환(auto, classify, embed, none, reward) |
--task |
None |
[DEPRECATED] 모델에 사용할 태스크(generate, embed, reward 등) |
--tokenizer |
None |
기본 토크나이저 대신 쓸 토크나이저 이름/경로 |
--hf-overrides |
None |
config.json 오버라이드(예: 아키텍처 지정) |
사용 예시:
vllm serve meta-llama/Llama-3.1-8B-Instruct \
--tensor-parallel-size 2 \
--max-model-len 8192 \
--max-num-seqs 128 \
--gpu-memory-utilization 0.9
전체 인자(수백 개)는 vllm serve --help 또는 LLM 클래스 docstring에서 확인할 수 있습니다.
더 알아보기 (Learn more)
- Configuration Options — 구성 수준 개요
- Environment Variables — 엔진 인자와 함께 쓰는 환경 변수
- Conserving Memory — 메모리 관련 엔진 인자
- Optimization and Tuning — 성능 관련 엔진 인자