vLLM 参数说明
基本用法
bash
复制代码
python -m vllm.entrypoints.openai.api_server [选项]
模型参数
| 参数 |
说明 |
默认值 |
--model |
使用的 HuggingFace 模型名称或路径 |
facebook/opt-125m |
--tokenizer |
使用的分词器名称或路径 |
|
--skip-tokenizer-init |
跳过分词器初始化 |
|
--revision |
模型版本(分支、标签或commit) |
|
--code-revision |
模型代码的特定版本 |
|
--tokenizer-revision |
分词器的特定版本 |
|
--tokenizer-mode |
分词器模式(auto/slow) |
auto |
--trust-remote-code |
信任 HuggingFace 的远程代码 |
|
--download-dir |
模型下载和缓存目录 |
HF默认缓存路径 |
--load-format |
模型加载格式(auto/pt/safetensors/npcache等) |
auto |
--dtype |
模型权重和激活的数据类型(auto/half/float/bfloat16等) |
auto |
--kv-cache-dtype |
KV 缓存的数据类型 |
auto |
--quantization-param-path |
FP8量化时的KV缓存缩放因子JSON路径 |
|
--max-model-len |
模型上下文长度,未指定则自动派生 |
|
--guided-decoding-backend |
引导解码使用的引擎(outlines/lm-format-enforcer) |
outlines |
多GPU与分布式
| 参数 |
说明 |
默认值 |
--worker-use-ray |
使用Ray进行多GPU分布式部署 |
自动启用 |
--pipeline-parallel-size, -pp |
pipeline并行数量 |
1 |
--tensor-parallel-size, -tp |
tensor并行数量 |
1 |
--max-parallel-loading-workers |
分批加载模型以避免OOM |
|
--ray-workers-use-nsight |
使用nsight分析Ray进程 |
|
性能与内存控制
| 参数 |
说明 |
默认值 |
--block-size |
Token块大小(8/16/32) |
16 |
--enable-prefix-caching |
启用prefix缓存 |
|
--use-v2-block-manager |
使用BlockSpaceManagerV2 |
|
--num-lookahead-slots |
用于speculative decoding的预览插槽 |
0 |
--seed |
随机种子 |
0 |
--swap-space |
每块GPU的CPU交换空间(GiB) |
4 |
--gpu-memory-utilization |
GPU显存使用比例(0~1) |
0.9 |
--num-gpu-blocks-override |
覆盖GPU块数量(测试用) |
|
--max-num-batched-tokens |
每轮最大token数量 |
|
--max-num-seqs |
每轮最大序列数量 |
256 |
--max-logprobs |
每轮最多返回的logprobs |
5 |
--disable-log-stats |
禁用统计日志 |
|
量化与精度
| 参数 |
说明 |
默认值 |
--quantization, -q |
权重量化方法(awq/gptq/fp8等) |
None |
--enforce-eager |
强制使用eager模式PyTorch |
False |
--max-context-len-to-capture |
CUDA Graph支持的最大上下文长度 |
8192 |
--disable-custom-all-reduce |
禁用自定义all-reduce逻辑 |
|
分词器线程池配置
| 参数 |
说明 |
默认值 |
--tokenizer-pool-size |
分词器线程池大小,0表示同步 |
0 |
--tokenizer-pool-type |
分词器线程池类型(如ray) |
ray |
--tokenizer-pool-extra-config |
额外配置(JSON格式) |
|
LoRA 相关
| 参数 |
说明 |
默认值 |
--enable-lora |
启用LoRA适配器支持 |
|
--max-loras |
单批次最大LoRA数量 |
1 |
--max-lora-rank |
LoRA最大秩 |
16 |
--lora-extra-vocab-size |
LoRA的额外词表大小 |
256 |
--lora-dtype |
LoRA使用的数据类型 |
auto |
--max-cpu-loras |
CPU中存储的最大LoRA数量 |
max_num_seqs |
硬件与图像支持
| 参数 |
说明 |
默认值 |
--device |
执行设备(auto/cuda/neuron/cpu) |
auto |
--image-input-type |
图像输入类型(pixel_values/image_features) |
|
--image-token-id |
图像token的ID |
|
--image-input-shape |
图像输入最大尺寸 |
|
--image-feature-size |
图像特征的context维度大小 |
|
调度与优化
| 参数 |
说明 |
默认值 |
--scheduler-delay-factor |
调度延迟因子 |
0.0 |
--enable-chunked-prefill |
启用基于最大token分块的预填充 |
|
推测性解码(Speculative Decoding)
| 参数 |
说明 |
--speculative-model |
用于推测的草稿模型名称 |
--num-speculative-tokens |
每次推测的token数量 |
--speculative-max-model-len |
草稿模型支持的最大长度 |
其他
| 参数 |
说明 |
--model-loader-extra-config |
模型加载器的额外JSON配置 |
异步引擎参数
| 参数 |
说明 |
默认值 |
--engine-use-ray |
使用Ray将LLM引擎作为独立进程启动 |
|
--disable-log-requests |
禁用请求日志记录 |
|
--max-log-len |
打印日志的最大prompt字符数或ID数 |
无限 |
参考:vLLM Engine Arguments