第 4 章 环境变量


您可以使用环境变量来配置系统级别的安装、构建、记录 AI Inference Server 的行为。

重要

VLLM_PORTVLLM_HOST_IP 设置主机端口和 IP 地址,供 AI Inference Server 的内部使用。这不是 API 服务器的端口和 IP 地址。不要使用- host $VLLM_HOST_IP 和-- port $VLLM_PORT 来启动 API 服务器。

重要

AI Inference 服务器使用的所有环境变量都以 VLLM_ 前缀。如果您使用 Kubernetes,请不要命名服务 vllm,否则 Kubernetes 设置的环境变量可能会与 AI Inference Server 环境变量冲突。这是因为 Kubernetes 为每个服务设置环境变量,使用大写服务名称作为前缀。如需更多信息,请参阅 Kubernetes 环境变量

Expand
表 4.1. AI Inference 服务器环境变量
环境变量描述

VLLM_TARGET_DEVICE

支持 vLLM 的目标设备,支持 cuda (默认)、rocmneuroncpuopenvino

MAX_JOBS

并行运行的最大编译作业数量。默认情况下,这是 CPU 数量。

NVCC_THREADS

nvcc 使用的线程数量。默认情况下,这是 1。如果设置,MAX_JOBS 将减少,以避免过度订阅 CPU。

VLLM_USE_PRECOMPILED

如果设置,AI Inference 服务器使用预编译的二进制文件(\*.so)。

VLLM_TEST_USE_PRECOMPILED_NIGHTLY_WHEEL

是否强制在 Python 构建中使用 nightly wheel 进行测试。

CMAKE_BUILD_TYPE

Cmake 构建类型。可用选项:"Debug", "Release", "RelWithDebInfo"。

详细

如果设置,AI Inference 服务器在安装过程中打印详细日志。

VLLM_CONFIG_ROOT

AI Inference 服务器配置文件的根目录。

VLLM_CACHE_ROOT

AI Inference 服务器缓存文件的根目录。

VLLM_HOST_IP

用于分布式环境来确定当前节点的 IP 地址。

VLLM_PORT

用于分布式环境中的手动设置通信端口。

VLLM_RPC_BASE_PATH

当 frontend API 服务器以多处理模式运行时,用于 IPC 的路径。

VLLM_USE_MODELSCOPE

如果为 true,将从 ModelScope 而不是 Hugging Face Hub 加载模型。

VLLM_RINGBUFFER_WARNING_INTERVAL

环缓冲满时记录警告消息的时间间隔(以秒为单位)。

CUDA_HOME

cudatoolkit 主目录的路径,其应位于 bin、include 和 lib 目录下。

VLLM_NCCL_SO_PATH

NCCL 库文件的路径。由于 PyTorch 中的一个错误,对 NCCL >= 2.19 的版本需要。

LD_LIBRARY_PATH

当未设置 VLLM_NCCL_SO_PATH 时使用,AI Inference Server 会尝试在这个路径中找到 NCCL 库。

VLLM_USE_TRITON_FLASH_ATTN

控制是否 wantAI Inference Server 使用 Triton Flash Attention 的标志。

VLLM_FLASH_ATTN_VERSION

强制 AI Inference 服务器使用特定的闪存版本(2 或 3),仅对闪存后端有效。

VLLM_TEST_DYNAMO_FULLGRAPH_CAPTURE

用于启用 Dynamo 完整捕获的内部标志。

LOCAL_RANK

分布式设置中进程的本地排名,用于确定 GPU 设备 ID。

CUDA_VISIBLE_DEVICES

用于控制分布式设置中的可见设备。

VLLM_ENGINE_ITERATION_TIMEOUT_S

引擎中每个迭代的超时。

VLLM_API_KEY

AI Inference Server API 服务器的 API 密钥。

S3_ACCESS_KEY_ID

S3 access key ID for tensorizer to load model from S3。

S3_SECRET_ACCESS_KEY

S3 secret access key for tensorizer to load model from S3。

S3_ENDPOINT_URL

从 S3 加载模型的 S3 端点 URL,用于加载 S3 的模型。

VLLM_USAGE_STATS_SERVER

AI Inference Server usage stats server 的 URL。

VLLM_NO_USAGE_STATS

如果为 true,则禁用使用统计的集合。

VLLM_DO_NOT_TRACK

如果为 true,则禁用对 AI Inference Server usage stats 的跟踪。

VLLM_USAGE_SOURCE

使用统计集合的源。

VLLM_CONFIGURE_LOGGING

如果设置为 1,AI Inference 服务器使用默认配置或指定的配置路径配置日志。

VLLM_LOGGING_CONFIG_PATH

日志配置文件的路径。

VLLM_LOGGING_LEVEL

vLLM 的默认日志记录级别。

VLLM_LOGGING_PREFIX

如果设置,AI Inference 服务器会将这个前缀添加到所有日志消息中。

VLLM_LOGITS_PROCESSOR_THREADS

用于自定义日志处理器的线程数。

VLLM_TRACE_FUNCTION

如果设置为 1,AI Inference 服务器追踪调试的功能调用。

VLLM_ATTENTION_BACKEND

用于关注计算的后端,如 "TORCH_SDPA", "FLASH_ATTN", "XFORMERS")。

VLLM_USE_FLASHINFER_SAMPLER

如果设置,AI Inference 服务器则使用 FlashInfer sampler。

VLLM_FLASHINFER_FORCE_TENSOR_CORES

强制 FlashInfer 使用十个内核;否则使用 heuristics。

VLLM_PP_LAYER_PARTITION

Pipeline 阶段分区策略。

VLLM_CPU_KVCACHE_SPACE

CPU 键值缓存空间(默认为 4GB)。

VLLM_CPU_OMP_THREADS_BIND

OpenMP 线程绑定的 CPU 内核 ID。

VLLM_CPU_MOE_PREPACK

是否在不支持的 CPU 上对 MoE 层使用 prepack。

VLLM_OPENVINO_DEVICE

OpenVINO 设备选择(默认为 CPU)。

VLLM_OPENVINO_KVCACHE_SPACE

OpenVINO 键值缓存空间(默认为 4GB)。

VLLM_OPENVINO_CPU_KV_CACHE_PRECISION

OpenVINO KV 缓存的精度。

VLLM_OPENVINO_ENABLE_QUANTIZED_WEIGHTS

使用 HF Optimum 在模型导出期间启用权重压缩。

VLLM_USE_RAY_SPMD_WORKER

启用 Ray SPMD worker 以便在所有 worker 上执行。

VLLM_USE_RAY_COMPILED_DAG

使用 Ray 提供的编译 Graph API 来优化 control plane 开销。

VLLM_USE_RAY_COMPILED_DAG_NCCL_CHANNEL

在 Ray 提供的编译图形中启用 NCCL 通信。

VLLM_USE_RAY_COMPILED_DAG_OVERLAP_COMM

在 Ray 提供的 Compiled Graph 中启用 GPU 通信重叠。

VLLM_WORKER_MULTIPROC_METHOD

指定多进程 worker 的方法,如 "fork"。

VLLM_ASSETS_CACHE

用于存储下载资产的缓存路径。

VLLM_IMAGE_FETCH_TIMEOUT

在提供多模式模型时获取镜像的超时(默认为 5 秒)。

VLLM_VIDEO_FETCH_TIMEOUT

在提供多模式模型时获取视频的超时(默认为 30 秒)。

VLLM_AUDIO_FETCH_TIMEOUT

在提供多模式模型时获取音频的超时(默认为 10 秒)。

VLLM_MM_INPUT_CACHE_GIB

用于多模式输入缓存的缓存大小(默认为 8GiB)。

VLLM_XLA_CACHE_PATH

XLA 持久缓存目录的路径(仅适用于 XLA 设备)。

VLLM_XLA_CHECK_RECOMPILATION

如果设置,在每个执行步骤后,在 XLA 重新编译后。

VLLM_FUSED_MOE_CHUNK_SIZE

fused MoE 层的块大小(默认为 32768)。

VLLM_NO_DEPRECATION_WARNING

如果为 true,则跳过弃用警告。

VLLM_KEEP_ALIVE_ON_ENGINE_DEATH

如果为 true,在引擎错误后保持 OpenAI API 服务器处于活动状态。

VLLM_ALLOW_LONG_MAX_MODEL_LEN

允许指定大于模型的默认长度的最大序列长度。

VLLM_TEST_FORCE_FP8_MARLIN

无论硬件支持如何,都强制 FP8 Marlin 进行 FP8 量化。

VLLM_TEST_FORCE_LOAD_FORMAT

强制特定的负载格式。

VLLM_RPC_TIMEOUT

从后端服务器获取响应的超时。

VLLM_PLUGINS

要载入的插件列表。

VLLM_TORCH_PROFILER_DIR

用于保存 Torch 配置集追踪的目录。

VLLM_USE_TRITON_AWQ

如果设置,则使用 AWQ 的 Triton 实施。

VLLM_ALLOW_RUNTIME_LORA_UPDATING

如果设置,允许在运行时更新 Lora 适配器。

VLLM_SKIP_P2P_CHECK

跳过对等功能检查。

VLLM_DISABLED_KERNELS

为性能比较禁用的量化内核列表。

VLLM_USE_V1

如果设置,则使用 V1 代码路径。

VLLM_ROCM_FP8_PADDING

对于 ROCm,平板的 FP8 权重为 256 字节。

Q_SCALE_CONSTANT

FP8 KV Cache 的动态查询缩放因子计算。

K_SCALE_CONSTANT

FP8 KV Cache 的动态关键规模因子计算。

V_SCALE_CONSTANT

FP8 KV Cache 的动态值扩展因素计算的 divisor。

VLLM_ENABLE_V1_MULTIPROCESSING

如果设置,请在 LLM 中为 V1 代码路径启用多处理。

VLLM_LOG_BATCHSIZE_INTERVAL

日志批处理大小的时间间隔。

VLLM_SERVER_DEV_MODE

如果设置,AI Inference 服务器以开发模式运行,为调试启用额外的端点,如 /reset_prefix_cache

VLLM_V1_OUTPUT_PROC_CHUNK_SIZE

控制在单个 asyncio 任务中处理的最大请求数,以在 V1 AsyncLLM 接口中处理每个令牌输出。它会影响高级用户流请求。

VLLM_MLA_DISABLE

如果设置,AI Inference 服务器将禁用 MLA 关注优化。

VLLM_ENABLE_MOE_ALIGN_BLOCK_SIZE_TRITON

如果设置,AI Inference 服务器使用 moe_align_block_size 的 Triton 实施,例如 fused_moe.py 中的 moe_align_block_size_triton

VLLM_RAY_PER_WORKER_GPUS

Ray 中每个 worker 的 GPU 数。可以是一个部分,允许 Ray 在单个 GPU 上调度多个参与者。

VLLM_RAY_BUNDLE_INDICES

指定用于每个 worker 的 Ray 捆绑包的索引。格式:以逗号分隔的整数列表(如 "0,1,2,3")。

VLLM_CUDART_SO_PATH

指定 find_loaded_library () 方法的路径,当它可能无法正常工作时。使用 VLLM_CUDART_SO_PATH 环境变量设置。

VLLM_USE_HPU_CONTIGUOUS_CACHE_FETCH

启用连续缓存获取,以避免在 Gaudi3 上进行昂贵的收集操作。仅适用于 HPU 连续缓存。

VLLM_DP_RANK

数据并行设置中的进程的排名。

VLLM_DP_SIZE

数据并行设置全局大小。

VLLM_DP_MASTER_IP

数据并行设置中 master 节点的 IP 地址。

VLLM_DP_MASTER_PORT

数据并行设置中 master 节点的端口。

VLLM_CI_USE_S3

是否使用 S3 路径使用 RunAI Streamer 在 CI 中进行模型加载。

VLLM_MARLIN_USE_ATOMIC_ADD

是否在 gptq/awq marlin 内核中使用 atomicAdd。

VLLM_V0_USE_OUTLINES_CACHE

是否打开 V0 的概述缓存。这个缓存是未绑定的,在磁盘上,对于具有恶意用户的环境会变得不安全。

VLLM_TPU_DISABLE_TOPK_TOPP_OPTIMIZATION

如果设置,请禁用 top-k 和 top-p 抽样的特定于 TPU 的优化。

返回顶部
Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。 了解我们当前的更新.

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

Theme

© 2025 Red Hat