vLLM 参数说明
基本用法
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