引擎参数#

下面,您可以找到 vLLM 每个引擎参数的解释

usage: vllm serve [-h] [--model MODEL]
                  [--task {auto,generate,embedding,embed,classify,score,reward,transcription}]
                  [--tokenizer TOKENIZER] [--skip-tokenizer-init]
                  [--revision REVISION] [--code-revision CODE_REVISION]
                  [--tokenizer-revision TOKENIZER_REVISION]
                  [--tokenizer-mode {auto,slow,mistral,custom}]
                  [--trust-remote-code]
                  [--allowed-local-media-path ALLOWED_LOCAL_MEDIA_PATH]
                  [--download-dir DOWNLOAD_DIR]
                  [--load-format {auto,pt,safetensors,npcache,dummy,tensorizer,sharded_state,gguf,bitsandbytes,mistral,runai_streamer}]
                  [--config-format {auto,hf,mistral}]
                  [--dtype {auto,half,float16,bfloat16,float,float32}]
                  [--kv-cache-dtype {auto,fp8,fp8_e5m2,fp8_e4m3}]
                  [--max-model-len MAX_MODEL_LEN]
                  [--guided-decoding-backend GUIDED_DECODING_BACKEND]
                  [--logits-processor-pattern LOGITS_PROCESSOR_PATTERN]
                  [--model-impl {auto,vllm,transformers}]
                  [--distributed-executor-backend {ray,mp,uni,external_launcher}]
                  [--pipeline-parallel-size PIPELINE_PARALLEL_SIZE]
                  [--tensor-parallel-size TENSOR_PARALLEL_SIZE]
                  [--max-parallel-loading-workers MAX_PARALLEL_LOADING_WORKERS]
                  [--ray-workers-use-nsight] [--block-size {8,16,32,64,128}]
                  [--enable-prefix-caching | --no-enable-prefix-caching]
                  [--disable-sliding-window] [--use-v2-block-manager]
                  [--num-lookahead-slots NUM_LOOKAHEAD_SLOTS] [--seed SEED]
                  [--swap-space SWAP_SPACE] [--cpu-offload-gb CPU_OFFLOAD_GB]
                  [--gpu-memory-utilization GPU_MEMORY_UTILIZATION]
                  [--num-gpu-blocks-override NUM_GPU_BLOCKS_OVERRIDE]
                  [--max-num-batched-tokens MAX_NUM_BATCHED_TOKENS]
                  [--max-num-partial-prefills MAX_NUM_PARTIAL_PREFILLS]
                  [--max-long-partial-prefills MAX_LONG_PARTIAL_PREFILLS]
                  [--long-prefill-token-threshold LONG_PREFILL_TOKEN_THRESHOLD]
                  [--max-num-seqs MAX_NUM_SEQS] [--max-logprobs MAX_LOGPROBS]
                  [--disable-log-stats]
                  [--quantization {aqlm,awq,deepspeedfp,tpu_int8,fp8,ptpc_fp8,fbgemm_fp8,modelopt,marlin,gguf,gptq_marlin_24,gptq_marlin,awq_marlin,gptq,compressed-tensors,bitsandbytes,qqq,hqq,experts_int8,neuron_quant,ipex,quark,moe_wna16,None}]
                  [--rope-scaling ROPE_SCALING] [--rope-theta ROPE_THETA]
                  [--hf-overrides HF_OVERRIDES] [--enforce-eager]
                  [--max-seq-len-to-capture MAX_SEQ_LEN_TO_CAPTURE]
                  [--disable-custom-all-reduce]
                  [--tokenizer-pool-size TOKENIZER_POOL_SIZE]
                  [--tokenizer-pool-type TOKENIZER_POOL_TYPE]
                  [--tokenizer-pool-extra-config TOKENIZER_POOL_EXTRA_CONFIG]
                  [--limit-mm-per-prompt LIMIT_MM_PER_PROMPT]
                  [--mm-processor-kwargs MM_PROCESSOR_KWARGS]
                  [--disable-mm-preprocessor-cache] [--enable-lora]
                  [--enable-lora-bias] [--max-loras MAX_LORAS]
                  [--max-lora-rank MAX_LORA_RANK]
                  [--lora-extra-vocab-size LORA_EXTRA_VOCAB_SIZE]
                  [--lora-dtype {auto,float16,bfloat16}]
                  [--long-lora-scaling-factors LONG_LORA_SCALING_FACTORS]
                  [--max-cpu-loras MAX_CPU_LORAS] [--fully-sharded-loras]
                  [--enable-prompt-adapter]
                  [--max-prompt-adapters MAX_PROMPT_ADAPTERS]
                  [--max-prompt-adapter-token MAX_PROMPT_ADAPTER_TOKEN]
                  [--device {auto,cuda,neuron,cpu,openvino,tpu,xpu,hpu}]
                  [--num-scheduler-steps NUM_SCHEDULER_STEPS]
                  [--multi-step-stream-outputs [MULTI_STEP_STREAM_OUTPUTS]]
                  [--scheduler-delay-factor SCHEDULER_DELAY_FACTOR]
                  [--enable-chunked-prefill [ENABLE_CHUNKED_PREFILL]]
                  [--speculative-model SPECULATIVE_MODEL]
                  [--speculative-model-quantization {aqlm,awq,deepspeedfp,tpu_int8,fp8,ptpc_fp8,fbgemm_fp8,modelopt,marlin,gguf,gptq_marlin_24,gptq_marlin,awq_marlin,gptq,compressed-tensors,bitsandbytes,qqq,hqq,experts_int8,neuron_quant,ipex,quark,moe_wna16,None}]
                  [--num-speculative-tokens NUM_SPECULATIVE_TOKENS]
                  [--speculative-disable-mqa-scorer]
                  [--speculative-draft-tensor-parallel-size SPECULATIVE_DRAFT_TENSOR_PARALLEL_SIZE]
                  [--speculative-max-model-len SPECULATIVE_MAX_MODEL_LEN]
                  [--speculative-disable-by-batch-size SPECULATIVE_DISABLE_BY_BATCH_SIZE]
                  [--ngram-prompt-lookup-max NGRAM_PROMPT_LOOKUP_MAX]
                  [--ngram-prompt-lookup-min NGRAM_PROMPT_LOOKUP_MIN]
                  [--spec-decoding-acceptance-method {rejection_sampler,typical_acceptance_sampler}]
                  [--typical-acceptance-sampler-posterior-threshold TYPICAL_ACCEPTANCE_SAMPLER_POSTERIOR_THRESHOLD]
                  [--typical-acceptance-sampler-posterior-alpha TYPICAL_ACCEPTANCE_SAMPLER_POSTERIOR_ALPHA]
                  [--disable-logprobs-during-spec-decoding [DISABLE_LOGPROBS_DURING_SPEC_DECODING]]
                  [--model-loader-extra-config MODEL_LOADER_EXTRA_CONFIG]
                  [--ignore-patterns IGNORE_PATTERNS]
                  [--preemption-mode PREEMPTION_MODE]
                  [--served-model-name SERVED_MODEL_NAME [SERVED_MODEL_NAME ...]]
                  [--qlora-adapter-name-or-path QLORA_ADAPTER_NAME_OR_PATH]
                  [--show-hidden-metrics-for-version SHOW_HIDDEN_METRICS_FOR_VERSION]
                  [--otlp-traces-endpoint OTLP_TRACES_ENDPOINT]
                  [--collect-detailed-traces COLLECT_DETAILED_TRACES]
                  [--disable-async-output-proc]
                  [--scheduling-policy {fcfs,priority}]
                  [--scheduler-cls SCHEDULER_CLS]
                  [--override-neuron-config OVERRIDE_NEURON_CONFIG]
                  [--override-pooler-config OVERRIDE_POOLER_CONFIG]
                  [--compilation-config COMPILATION_CONFIG]
                  [--kv-transfer-config KV_TRANSFER_CONFIG]
                  [--worker-cls WORKER_CLS]
                  [--generation-config GENERATION_CONFIG]
                  [--override-generation-config OVERRIDE_GENERATION_CONFIG]
                  [--enable-sleep-mode] [--calculate-kv-scales]
                  [--additional-config ADDITIONAL_CONFIG]

命名参数#

--model

要使用的 huggingface 模型的名称或路径。

默认值:“facebook/opt-125m”

--task

可选值:auto, generate, embedding, embed, classify, score, reward, transcription

模型要使用的任务。即使同一个模型可以用于多个任务,每个 vLLM 实例也只支持一个任务。当模型只支持一个任务时,可以使用 "auto" 来选择它;否则,您必须明确指定要使用的任务。

默认值:“auto”

--tokenizer

要使用的 huggingface tokenizer 的名称或路径。如果未指定,将使用模型名称或路径。

--skip-tokenizer-init

跳过 tokenizer 和 detokenizer 的初始化。

--revision

要使用的特定模型版本。它可以是分支名称、标签名称或提交 ID。如果未指定,将使用默认版本。

--code-revision

用于 Hugging Face Hub 上模型代码的特定修订版本。它可以是分支名称、标签名称或提交 ID。如果未指定,将使用默认版本。

--tokenizer-revision

要使用的 huggingface tokenizer 的修订版本。它可以是分支名称、标签名称或提交 ID。如果未指定,将使用默认版本。

--tokenizer-mode

可选值:auto, slow, mistral, custom

Tokenizer 模式。

  • “auto” 将在可用时使用快速 tokenizer。

  • “slow” 将始终使用慢速 tokenizer。

  • “mistral” 将始终使用 mistral_common tokenizer。

  • “custom” 将使用 –tokenizer 选择预注册的 tokenizer。

默认值:“auto”

--trust-remote-code

信任来自 huggingface 的远程代码。

--allowed-local-media-path

允许 API 请求从服务器文件系统指定的目录读取本地图像或视频。这是一个安全风险。应仅在受信任的环境中启用。

--download-dir

下载和加载权重的目录,默认为 huggingface 的默认缓存目录。

--load-format

可选值:auto, pt, safetensors, npcache, dummy, tensorizer, sharded_state, gguf, bitsandbytes, mistral, runai_streamer

要加载的模型权重格式。

  • “auto” 将尝试加载 safetensors 格式的权重,如果 safetensors 格式不可用,则回退到 pytorch bin 格式。

  • “pt” 将加载 pytorch bin 格式的权重。

  • “safetensors” 将加载 safetensors 格式的权重。

  • “npcache” 将加载 pytorch 格式的权重,并存储 numpy 缓存以加速加载。

  • “dummy” 将使用随机值初始化权重,这主要用于性能分析。

  • “tensorizer” 将使用 CoreWeave 的 tensorizer 加载权重。有关更多信息,请参阅示例部分中的 Tensorize vLLM 模型脚本。

  • “runai_streamer” 将使用 Run:aiModel Streamer 加载 Safetensors 权重

  • “bitsandbytes” 将使用 bitsandbytes 量化加载权重。

默认值:“auto”

--config-format

可选值:auto, hf, mistral

要加载的模型配置格式。

  • “auto” 将尝试加载 hf 格式的配置,如果不可用,则尝试加载 mistral 格式

默认值:“ConfigFormat.AUTO”

--dtype

可选值:auto, half, float16, bfloat16, float, float32

模型权重和激活的数据类型。

  • “auto” 将为 FP32 和 FP16 模型使用 FP16 精度,为 BF16 模型使用 BF16 精度。

  • “half” 用于 FP16。推荐用于 AWQ 量化。

  • “float16” 与 “half” 相同。

  • “bfloat16” 用于在精度和范围之间取得平衡。

  • “float” 是 FP32 精度的简写。

  • “float32” 用于 FP32 精度。

默认值:“auto”

--kv-cache-dtype

可选值:auto, fp8, fp8_e5m2, fp8_e4m3

kv 缓存存储的数据类型。如果为 “auto”,将使用模型数据类型。CUDA 11.8+ 支持 fp8 (=fp8_e4m3) 和 fp8_e5m2。ROCm (AMD GPU) 支持 fp8 (=fp8_e4m3)

默认值:“auto”

--max-model-len

模型上下文长度。如果未指定,将自动从模型配置中派生。

--guided-decoding-backend

默认情况下,哪个引擎将用于引导解码(JSON 模式/正则表达式等)。目前支持 outlines-dev/outlines, mlc-ai/xgrammar, 和 noamgat/lm-format-enforcer。可以通过 guided_decoding_backend 参数按请求覆盖。后端特定选项可以在后端名称后用逗号分隔的列表提供,后跟冒号。有效的后端和所有可用选项为:[xgrammar:no-fallback, outlines:no-fallback, lm-format-enforcer:no-fallback]

默认值:“xgrammar”

--logits-processor-pattern

可选的正则表达式模式,指定可以通过 logits_processors 额外完成参数传递的有效 logits processor 限定名称。默认为 None,表示不允许任何处理器。

--model-impl

可选值:auto, vllm, transformers

要使用的模型实现。

  • “auto” 将尝试使用 vLLM 实现(如果存在),如果 vLLM 实现不可用,则回退到 Transformers 实现。

  • “vllm” 将使用 vLLM 模型实现。

  • “transformers” 将使用 Transformers 模型实现。

默认值:“auto”

--distributed-executor-backend

可选值:ray, mp, uni, external_launcher

用于分布式模型工作节点的后端,可以是 “ray” 或 “mp”(多进程)。如果 pipeline_parallel_size 和 tensor_parallel_size 的乘积小于或等于可用的 GPU 数量,“mp” 将用于保持在单个主机上处理。否则,如果安装了 Ray,则默认为 “ray”,否则将失败。请注意,tpu 仅支持 Ray 用于分布式推理。

--pipeline-parallel-size, -pp

流水线并行阶段的数量。

默认值:1

--tensor-parallel-size, -tp

张量并行副本的数量。

默认值:1

--max-parallel-loading-workers

以多个批次顺序加载模型,以避免在使用张量并行和大型模型时出现 RAM OOM。

--ray-workers-use-nsight

如果指定,则使用 nsight 分析 Ray 工作节点。

--block-size

可选值:8, 16, 32, 64, 128

令牌块大小,用于令牌的连续块。这在 neuron 设备上被忽略,并设置为 --max-model-len。在 CUDA 设备上,仅支持最大为 32 的块大小。在 HPU 设备上,块大小默认为 128。

--enable-prefix-caching, --no-enable-prefix-caching

启用自动前缀缓存。使用 --no-enable-prefix-caching 显式禁用。

--disable-sliding-window

禁用滑动窗口,限制为滑动窗口大小。

--use-v2-block-manager

[已弃用] 块管理器 v1 已被移除,SelfAttnBlockSpaceManager(即块管理器 v2)现在是默认设置。将此标志设置为 True 或 False 对 vLLM 行为没有影响。

--num-lookahead-slots

推测解码所需的实验性调度配置。这将在未来被推测配置取代;它的存在是为了在在那之前启用正确性测试。

默认值:0

--seed

操作的随机种子。

默认值:0

--swap-space

每个 GPU 的 CPU 交换空间大小 (GiB)。

默认值:4

--cpu-offload-gb

要卸载到 CPU 的空间(GiB),每个 GPU。默认为 0,表示不卸载。直观地看,此参数可以被视为增加 GPU 内存大小的虚拟方式。例如,如果您有一个 24 GB 的 GPU 并将其设置为 10,实际上您可以将其视为 34 GB 的 GPU。然后您可以加载一个 13B 模型与 BF16 权重,这至少需要 26GB 的 GPU 内存。请注意,这需要快速的 CPU-GPU 互连,因为模型的一部分在每个模型前向传递中从 CPU 内存动态加载到 GPU 内存。

默认值:0

--gpu-memory-utilization

用于模型执行器的 GPU 内存 fraction,范围可以从 0 到 1。例如,值为 0.5 意味着 50% 的 GPU 内存利用率。如果未指定,将使用默认值 0.9。这是一个每个实例的限制,并且仅适用于当前的 vLLM 实例。如果您在同一 GPU 上运行另一个 vLLM 实例,则无关紧要。例如,如果您在同一 GPU 上运行两个 vLLM 实例,您可以将每个实例的 GPU 内存利用率设置为 0.5。

默认值:0.9

--num-gpu-blocks-override

如果指定,则忽略 GPU 性能分析结果,并使用此 GPU 块数。用于测试抢占。

--max-num-batched-tokens

每次迭代的最大批处理令牌数。

--max-num-partial-prefills

对于分块预填充,并发部分预填充的最大数量。默认为 1

默认值:1

--max-long-partial-prefills

对于分块预填充,将并发预填充的最大提示数(超过 –long-prefill-token-threshold)。将此值设置小于 –max-num-partial-prefills 将允许较短的提示在某些情况下跳过较长提示之前的队列,从而提高延迟。默认为 1。

默认值:1

--long-prefill-token-threshold

对于分块预填充,如果提示长度超过此令牌数,则请求被认为是长的。默认为模型上下文长度的 4%。

默认值:0

--max-num-seqs

每次迭代的最大序列数。

--max-logprobs

要返回的最大 log probs 数,logprobs 在 SamplingParams 中指定。

默认值:20

--disable-log-stats

禁用日志统计信息。

--quantization, -q

可选值:aqlm, awq, deepspeedfp, tpu_int8, fp8, ptpc_fp8, fbgemm_fp8, modelopt, marlin, gguf, gptq_marlin_24, gptq_marlin, awq_marlin, gptq, compressed-tensors, bitsandbytes, qqq, hqq, experts_int8, neuron_quant, ipex, quark, moe_wna16, None

用于量化权重的方法。如果为 None,我们首先检查模型配置文件中的 quantization_config 属性。如果为 None,我们假设模型权重未量化,并使用 dtype 来确定权重的数据类型。

--rope-scaling

JSON 格式的 RoPE 缩放配置。例如,{"rope_type":"dynamic","factor":2.0}

--rope-theta

RoPE theta。与 rope_scaling 一起使用。在某些情况下,更改 RoPE theta 可以提高缩放模型的性能。

--hf-overrides

HuggingFace 配置的额外参数。这应该是一个 JSON 字符串,将被解析为字典。

--enforce-eager

始终使用 eager 模式 PyTorch。如果为 False,则将混合使用 eager 模式和 CUDA 图,以获得最大的性能和灵活性。

--max-seq-len-to-capture

CUDA 图覆盖的最大序列长度。当序列的上下文长度大于此值时,我们将回退到 eager 模式。此外,对于编码器-解码器模型,如果编码器输入的序列长度大于此值,我们将回退到 eager 模式。

默认值:8192

--disable-custom-all-reduce

请参阅 ParallelConfig。

--tokenizer-pool-size

用于异步分词的 tokenizer 池大小。如果为 0,将使用同步分词。

默认值:0

--tokenizer-pool-type

用于异步分词的 tokenizer 池类型。如果 tokenizer_pool_size 为 0,则忽略。

默认值:“ray”

--tokenizer-pool-extra-config

tokenizer 池的额外配置。这应该是一个 JSON 字符串,将被解析为字典。如果 tokenizer_pool_size 为 0,则忽略。

--limit-mm-per-prompt

对于每个多模态插件,限制每个提示允许的输入实例数。期望一个逗号分隔的项目列表,例如:image=16,video=2 允许每个提示最多 16 张图像和 2 个视频。默认为每个模态 1。

--mm-processor-kwargs

多模态输入映射/处理的覆盖,例如,图像处理器。例如:{"num_crops": 4}

--disable-mm-preprocessor-cache

如果为 true,则禁用多模态预处理器/映射器的缓存。(不推荐)

--enable-lora

如果为 True,则启用 LoRA 适配器的处理。

--enable-lora-bias

如果为 True,则为 LoRA 适配器启用偏置。

--max-loras

单个批次中 LoRA 的最大数量。

默认值:1

--max-lora-rank

最大 LoRA 秩。

默认值:16

--lora-extra-vocab-size

LoRA 适配器中可能存在的额外词汇的最大大小(添加到基本模型词汇表)。

默认值:256

--lora-dtype

可选值:auto, float16, bfloat16

LoRA 的数据类型。如果为 auto,将默认为基本模型 dtype。

默认值:“auto”

--long-lora-scaling-factors

指定多个缩放因子(可以与基本模型缩放因子不同 - 请参阅例如 Long LoRA),以允许多个使用这些缩放因子训练的 LoRA 适配器同时使用。如果未指定,则仅允许使用基本模型缩放因子训练的适配器。

--max-cpu-loras

要存储在 CPU 内存中的 LoRA 的最大数量。必须 >= max_loras。默认为 max_loras。

--fully-sharded-loras

默认情况下,只有一半的 LoRA 计算使用张量并行进行分片。启用此选项将使用完全分片层。在高序列长度、最大秩或张量并行大小下,这可能更快。

--enable-prompt-adapter

如果为 True,则启用 PromptAdapters 的处理。

--max-prompt-adapters

批次中 PromptAdapters 的最大数量。

默认值:1

--max-prompt-adapter-token

PromptAdapters 令牌的最大数量

默认值:0

--device

可选值:auto, cuda, neuron, cpu, openvino, tpu, xpu, hpu

vLLM 执行的设备类型。

默认值:“auto”

--num-scheduler-steps

每个调度器调用的最大前向步骤数。

默认值:1

--multi-step-stream-outputs

如果为 False,则多步将在所有步骤结束时流式传输输出

默认值:True

--scheduler-delay-factor

在调度下一个提示之前应用延迟(延迟因子乘以先前的提示延迟)。

默认值:0.0

--enable-chunked-prefill

如果设置,则可以根据 max_num_batched_tokens 对预填充请求进行分块。

--speculative-model

要在推测解码中使用的草稿模型的名称。

--speculative-model-quantization

可选值:aqlm, awq, deepspeedfp, tpu_int8, fp8, ptpc_fp8, fbgemm_fp8, modelopt, marlin, gguf, gptq_marlin_24, gptq_marlin, awq_marlin, gptq, compressed-tensors, bitsandbytes, qqq, hqq, experts_int8, neuron_quant, ipex, quark, moe_wna16, None

用于量化推测模型权重的方法。如果为 None,我们首先检查模型配置文件中的 quantization_config 属性。如果为 None,我们假设模型权重未量化,并使用 dtype 来确定权重的数据类型。

--num-speculative-tokens

在推测解码中从草稿模型中采样的推测令牌数。

--speculative-disable-mqa-scorer

如果设置为 True,则 MQA scorer 将在推测中禁用,并回退到批次扩展

--speculative-draft-tensor-parallel-size, -spec-draft-tp

推测解码中草稿模型的张量并行副本数。

--speculative-max-model-len

草稿模型支持的最大序列长度。超过此长度的序列将跳过推测。

--speculative-disable-by-batch-size

如果入队请求数大于此值,则禁用新传入请求的推测解码。

--ngram-prompt-lookup-max

推测解码中 ngram 提示查找的最大窗口大小。

--ngram-prompt-lookup-min

推测解码中 ngram 提示查找的最小窗口大小。

--spec-decoding-acceptance-method

可选值:rejection_sampler, typical_acceptance_sampler

指定在推测解码中草稿令牌验证期间使用的接受方法。支持两种类型的接受例程:1) RejectionSampler,它不允许更改草稿令牌的接受率,2) TypicalAcceptanceSampler,它是可配置的,允许更高的接受率,但代价是质量较低,反之亦然。

默认值:“rejection_sampler”

--typical-acceptance-sampler-posterior-threshold

设置令牌被接受的后验概率的下限阈值。此阈值由 TypicalAcceptanceSampler 用于在推测解码期间做出采样决策。默认为 0.09

--typical-acceptance-sampler-posterior-alpha

TypicalAcceptanceSampler 中基于熵的令牌接受阈值的缩放因子。通常默认为 –typical-acceptance-sampler-posterior-threshold 的平方根,即 0.3

--disable-logprobs-during-spec-decoding

如果设置为 True,则在推测解码期间不返回令牌 log 概率。如果设置为 False,则根据 SamplingParams 中的设置返回 log 概率。如果未指定,则默认为 True。在推测解码期间禁用 log 概率会通过跳过提案采样、目标采样以及确定接受令牌后的 logprob 计算来减少延迟。

--model-loader-extra-config

模型加载器的额外配置。这将传递给与所选 load_format 对应的模型加载器。这应该是一个 JSON 字符串,将被解析为字典。

--ignore-patterns

加载模型时要忽略的模式。默认为 original/**/*,以避免重复加载 llama 的检查点。

默认值:[]

--preemption-mode

如果为 “recompute”,则引擎通过重新计算执行抢占;如果为 “swap”,则引擎通过块交换执行抢占。

--served-model-name

API 中使用的模型名称。如果提供了多个名称,则服务器将响应任何提供的名称。响应的模型字段中的模型名称将是列表中的第一个名称。如果未指定,则模型名称将与 --model 参数相同。请注意,此名称也将用于 prometheus 指标的 model_name 标签内容中,如果提供了多个名称,则指标标签将采用第一个名称。

--qlora-adapter-name-or-path

QLoRA 适配器的名称或路径。

--show-hidden-metrics-for-version

启用自指定版本以来已隐藏的已弃用 Prometheus 指标。例如,如果先前弃用的指标自 v0.7.0 版本以来已被隐藏,您可以使用 –show-hidden-metrics-for-version=0.7 作为临时应急方案,同时迁移到新指标。该指标很可能在即将发布的版本中被完全移除。

--otlp-traces-endpoint

OpenTelemetry 跟踪将发送到的目标 URL。

--collect-detailed-traces

有效选项为 model,worker,all。仅当设置了 --otlp-traces-endpoint 时,设置此选项才有意义。如果设置,它将收集指定模块的详细跟踪。这涉及使用可能代价高昂和/或阻塞的操作,因此可能会对性能产生影响。

--disable-async-output-proc

禁用异步输出处理。这可能会导致性能降低。

--scheduling-policy

可选值:fcfs, priority

要使用的调度策略。“fcfs”(先到先服务,即请求按到达顺序处理;默认值)或 “priority”(请求根据给定的优先级(值越低表示越早处理)和到达时间来处理,以决定任何平局)。

默认值:“fcfs”

--scheduler-cls

要使用的调度器类。“vllm.core.scheduler.Scheduler” 是默认调度器。可以直接是类,也可以是 “mod.custom_class” 形式的类路径。

默认值:“vllm.core.scheduler.Scheduler”

--override-neuron-config

覆盖或设置 neuron 设备配置。例如 {"cast_logits_dtype": "bloat16"}

--override-pooler-config

覆盖或设置池化模型的池化方法。例如 {"pooling_type": "mean", "normalize": false}

--compilation-config, -O

模型的 torch.compile 配置。当它是一个数字(0, 1, 2, 3)时,它将被解释为优化级别。注意:级别 0 是没有任何优化的默认级别。级别 1 和 2 仅用于内部测试。级别 3 是推荐的生产级别。要指定完整的编译配置,请使用 JSON 字符串。按照传统编译器的约定,也支持使用 -O 而不带空格。 -O3 等同于 -O 3。

--kv-transfer-config

分布式 KV 缓存传输的配置。应为 JSON 字符串。

--worker-cls

用于分布式执行的工作节点类。

默认值:“auto”

--generation-config

生成配置的文件夹路径。默认为 None,不加载生成配置,将使用 vLLM 默认值。如果设置为 “auto”,则将从模型路径加载生成配置。如果设置为文件夹路径,则将从指定的文件夹路径加载生成配置。如果在生成配置中指定了 max_new_tokens,则它会为所有请求设置服务器范围的输出令牌数量限制。

--override-generation-config

以 JSON 格式覆盖或设置生成配置。例如 {"temperature": 0.5}。如果与 –generation-config=auto 一起使用,则覆盖参数将与模型的默认配置合并。如果 generation-config 为 None,则仅使用覆盖参数。

--enable-sleep-mode

为引擎启用睡眠模式。(仅支持 cuda 平台)

--calculate-kv-scales

当 kv-cache-dtype 为 fp8 时,启用 k_scale 和 v_scale 的动态计算。如果 calculate-kv-scales 为 false,则将从模型检查点加载 scale(如果可用)。否则,scale 将默认为 1.0。

--additional-config

JSON 格式的指定平台的附加配置。不同的平台可能支持不同的配置。确保配置对于您正在使用的平台有效。输入格式类似于 ‘{“config_key”:”config_value”}’

异步引擎参数#

以下是与异步引擎相关的附加参数

usage: vllm serve [-h] [--disable-log-requests]

命名参数#

--disable-log-requests

禁用日志请求。