vLLM CLI
扫码查看

简便部署和管理大型语言模型的命令行工具

vLLM CLI

综合介绍

vLLM CLI 是一个用于部署和管理大型语言模型(LLM)的命令行工具,基于 vLLM 框架开发。它提供交互模式和命令行模式,方便用户在本地或通过 HuggingFace Hub 部署模型。工具支持 GPU 状态监控、模型自动发现和配置文件管理,适合开发者、研究人员和需要快速部署 LLM 的用户。界面直观,操作简单,支持多 GPU 优化和多种预设配置,满足不同硬件和性能需求。

功能列表

  • 交互模式:通过菜单驱动的终端界面,轻松选择模型、配置参数和监控服务器。
  • 命令行模式:支持自动化脚本,直接运行命令快速部署模型。
  • 模型管理:自动检测本地模型,支持从 HuggingFace Hub 直接加载远程模型。
  • 配置管理:提供标准、高吞吐量、MoE 优化和低内存四种预设配置文件,满足不同场景。
  • 服务器监控:实时显示 GPU 使用率、服务器状态和日志流。
  • 系统信息:展示 GPU、内存、CUDA 兼容性等硬件信息。
  • 日志查看:当服务器启动失败时,可查看完整日志进行错误排查。

使用帮助

安装流程

vLLM CLI 支持通过 PyPI 安装或从源码构建,需满足以下条件:

  • Python 3.8 或更高版本
  • 支持 CUDA 的 NVIDIA GPU(目前仅支持 NVIDIA GPU)
  • 已安装 vLLM 包

从 PyPI 安装

运行以下命令快速安装:

pip install vllm-cli

安装完成后,可直接使用 vllm-cli 命令。

从源码构建

  1. 克隆代码库:
git clone https://github.com/Chen-zexi/vllm-cli.git
cd vllm-cli
  1. 创建并激活 Conda 环境:
conda create -n vllm-cli python=3.11
conda activate vllm-cli
  1. 安装依赖:
pip install -r requirements.txt
pip install hf-model-tool
  1. 开发模式安装:
pip install -e .

使用方法

交互模式

运行以下命令启动交互模式:

vllm-cli

进入后,界面显示菜单,包含以下功能:

  • 模型选择:列出本地模型或从 HuggingFace Hub 选择模型,支持自动下载。
  • 快速部署:使用上次成功配置快速启动服务器。
  • 自定义配置:调整 vLLM 参数(如量化方式、并行度),通过分类界面设置。
  • 服务器监控:查看 GPU 使用率、内存占用和实时日志。
  • 系统信息:显示 GPU 型号、CUDA 版本和依赖信息。

命令行模式

命令行模式适合自动化脚本或快速操作,常用命令包括:

  • 启动模型服务:
vllm-cli serve MODEL_NAME

示例:vllm-cli serve facebook/opt-125m

  • 使用预设配置文件:
vllm-cli serve MODEL_NAME --profile standard
  • 自定义参数启动:
vllm-cli serve MODEL_NAME --quantization awq --tensor-parallel-size 2
  • 查看可用模型:
vllm-cli models
  • 查看系统信息:
vllm-cli info
  • 检查运行中的服务器:
vllm-cli status
  • 停止指定服务器:
vllm-cli stop --port 8000

配置管理

vLLM CLI 提供灵活的配置系统,配置文件存储在:

  • 主配置:~/.config/vllm-cli/config.yaml
  • 用户配置文件:~/.config/vllm-cli/user_profiles.json
  • 缓存文件:~/.config/vllm-cli/cache.json

内置配置文件

工具提供四种预设配置文件,自动检测多 GPU 并设置张量并行:

  1. standard:默认配置,适合大多数模型和硬件。
  2. moe_optimized:针对混合专家(MoE)模型优化,启用专家并行。
  3. high_throughput:高吞吐量配置,设置最大模型长度为 8192,GPU 内存利用率为 95%,启用前缀缓存等功能。
  4. low_memory:低内存配置,使用量化(如 bitsandbytes)和保守内存设置,适合资源受限环境。

自定义配置

在交互模式中,可通过界面调整参数,如模型长度、量化方式和并行度。配置文件以 JSON 格式保存,示例:

{
"max_model_len": 4096,
"gpu_memory_utilization": 0.70,
"quantization": "bitsandbytes"
}

错误处理

启动服务器失败时,工具会显示错误提示并提供日志查看选项。日志文件存储在用户配置目录,方便排查问题。

系统要求

  • 操作系统:Linux
  • 硬件:NVIDIA GPU(需 CUDA 支持)
  • 依赖:vLLM、PyTorch(带 CUDA 支持)、hf-model-tool、Rich、Inquirer、psutil、PyYAML

环境变量

  • VLLM_CLI_ASCII_BOXES:启用 ASCII 字符界面,适配兼容性。
  • VLLM_CLI_LOG_LEVEL:设置日志级别(如 DEBUG、INFO)。

应用场景

  1. AI 模型开发开发者可通过 vLLM CLI 快速部署和测试大型语言模型,调整参数以优化性能,适合研究新模型或验证模型效果。
  2. 自动化工作流使用命令行模式,集成到 CI/CD 管道或脚本中,自动化部署模型服务,提升开发效率。
  3. 教育与研究研究人员可利用交互模式探索模型性能,查看 GPU 状态和实时日志,适合教学或实验场景。
  4. 低资源环境部署在内存有限的设备上,使用低内存配置部署模型,适合边缘设备或小型服务器。

QA

  1. vLLM CLI 支持哪些操作系统?目前仅支持 Linux 系统,且需 NVIDIA GPU 和 CUDA 支持。
  2. 如何从 HuggingFace Hub 加载模型?在交互模式中选择“远程模型”,工具会列出 HuggingFace Hub 的模型并自动下载。
  3. 如何查看服务器运行状态?使用 vllm-cli status 命令或交互模式的监控界面,查看 GPU 使用率和服务器状态。
  4. 启动失败怎么办?工具会提示错误并提供日志查看选项,检查 ~/.config/vllm-cli/ 目录下的日志文件。
  5. 是否支持 AMD GPU?目前仅支持 NVIDIA GPU,欢迎提交 PR 扩展支持。
微信微博Email复制链接