搜索

pdf文档 vLLM v0.5.3 Documentation

1.07 MB 143 页 0 下载 6 浏览 0 评论 0 收藏
语言 格式 评分
英语
.pdf
3
摘要
The document provides detailed information about the vLLM v0.5.3 library, focusing on its configuration, environment variables, and performance tuning. It explains how to handle large language models (LLMs) with features like preemption mechanisms for managing KV cache space, chunked prefill for processing large inputs, and various runtime environment variables. The document also covers performance optimization techniques, including monitoring preemptions and adjusting parameters like gpu_memory_utilization and tensor_parallel_size. Additionally, it discusses the use of Prometheus metrics for monitoring and the impact of different attention backends on performance.
AI总结
# vLLM v0.5.3 文档总结 ## 1. 功能概述 vLLM 是一个快速且易于使用的大型语言模型(LLM)推理和 serving 库,主要特点包括: - **高性能**:支持高效的 serving 通量、PagedAttention 内存管理、连续批处理等。 - **灵活性**:支持多种解码算法(如平行采样、束搜索)、分布式推理( tensor 并行和 pipeline 并行)、流式输出等。 - **多模态支持**:实验性支持视觉语言模型(VLM),但目前仅限于单张图片输入。 - **量化支持**:支持多种量化方法(如 GPTQ、AWQ、SqueezeLLM、FP8 KV Cache)。 - **硬件支持**:支持 NVIDIA 和 AMD GPU,以及 CPU 环境。 --- ## 2. 环境变量配置 vLLM 使用以 `VLLM_` 为前缀的环境变量进行配置,关键变量包括: - `VLLM_HOST_IP` 和 `VLLM_PORT`:用于指定 vLLM 的内部 IP 和端口,但不适用于 API 服务器。 - `VLLM_CACHE_ROOT`:缓存文件的根目录,默认为 `~/.cache/vllm`。 - `VLLM_INSTANCE_ID`:标识 vLLM 实例,确保分布式环境中的一致性。 - `VLLM_USE_MODELSCOPE`:控制是否从 ModelScope 加载模型,默认为 `False`。 - `VLLM_CPU_KVCACHE_SPACE` 和 `VLLM_OPENVINO_KVCACHE_SPACE`:分别用于配置 CPU 和 OpenVINO 环境下的 KV 缓存空间。 --- ## 3. 视觉语言模型(VLM)支持 vLLM 提供实验性支持的视觉语言模型(VLM),适用于图像与文本交互的任务。目前支持以下功能: - 单张图片输入:每条文本提示最多支持一张图片。 - 图片加载格式:遵循 HuggingFace 文档规范。 - 模型初始化:通过 `LLM` 类传入模型名称(如 `llava-hf/llava-1.5-7b-hf`)。 - 图片处理:使用 PIL.Image 加载图片,并通过 `multi_modal_data` 字典传递给模型。 --- ## 4. 性能与调优 ### 4.1 预emption 机制 - 由于 transformer 模型的自回归特性,KV 缓存空间不足时,vLLM 会抢占请求以释放内存。 - 提示:通过增加 `gpu_memory_utilization` 或减少 `max_num_seqs` 和 `max_num_batched_tokens` 可以优化性能。 ### 4.2 分块 Prefill - vLLM 提供实验性分块 Prefill 功能,允许将大模型的 Prefill 阶段划分为多个小块处理。 - 启用方式:在命令行中使用 `--enable-chunked-prefill` 或在 `LLM` 构造函数中设置 `enable_chunked_prefill=True`。 ### 4.3 环境变量优化 - `VLLM_ATTENTION_BACKEND`:支持多种注意力计算后端(如 FlashAttention、XFormers 等)。 - `VLLM_OPENVINO_CPU_KV_CACHE_PRECISION`:OpenVINO 环境下 KV 缓存的精度配置。 --- ## 5. 资源与日志 - **资源收集**:vLLM 默认收集匿名使用数据,用于优化开发,默认数据透明且公开。 - **日志配置**:支持设置日志级别(如 `VLLM_LOGGING_LEVEL`)和函数调用跟踪(`VLLM_TRACE_FUNCTION`)。 --- ## 6. CPU 环境安装 vLLM 支持在 x86 CPU 环境下运行,主要要求: - **操作系统**:Linux。 - **依赖项**:推荐 gcc/g++ >= 12.3.0 和 AVX512 指令集(可选)。 - **快速启动**:可通过 Dockerfile 部署 CPU 环境。 --- ## 总结 vLLM 是一个功能强大的 LLM 推理库,支持高性能、多模态和分布式推理。通过合理的环境配置和性能调优,可以显著提升模型的运行效率。
P1
P2
P3
P4
P5
P6
P7
P8
P9
P10
P11
P12
下载文档到本地,方便使用
- 可预览页数已用完,剩余 131 页请下载阅读 -
文档评分
请文明评论,理性发言.