Vllm Plugin Fl Setup Flagos — Vllm 插件 FL 设置 Flagos
v0.13.0为包括NVIDIA、Ascend等在内的多个硬件后端安装和配置vLLM-Plugin-FL。在设置vllm-plugin-fl、为特定硬件后端配置环境、安装依赖项、检查依赖项是否成功安装、解决运行时问题以及启动推理以验证模型服务成功时使用。当用户说类似“setup vllm-plugin-fl”、“install vllm-plugin-fl”、“configure FL plugin”、“set up FlagGems”或“set up FlagCX”时触发。
运行时依赖
安装命令
点击复制技能文档
vLLM-Plugin-FL 安装概述 vLLM-Plugin-FL 扩展 vLLM 以支持在多种硬件后端(NVIDIA、Ascend、MetaX、Iluvatar 等)上进行模型推理/服务,通过 FlagOS 的统一运算库 FlagGems 和通信库 FlagCX。该技能涵盖安装、硬件特定环境配置和依赖设置。
前置条件 Linux 操作系统(推荐 Ubuntu 20.04+) Python 3.10+ vLLM v0.13.0 — 从官方 v0.13.0 版本或 fork 版本 vllm-FL 安装 GPU 以及相应驱动程序(NVIDIA CUDA、Huawei Ascend 等) pip 包管理器 Git
验证 vLLM 版本:python -c "import vllm; print(vllm.__version__)" # 预期输出:0.13.0
安装工作流 步骤 1:识别硬件后端 # NVIDIA GPU nvidia-smi # Huawei NPU npu-smi info # Moore Threads GPU mthreads-gmi # Iluvatar GPU ixsmi
步骤 2:安装 vLLM-Plugin-FL 首先创建一个工作空间目录并尝试克隆源代码:mkdir -p ~/flagos-workspace && cd ~/flagos-workspace git clone https://github.com/flagos-ai/vllm-plugin-FL 如果 git 克隆失败,请询问用户的网络代理设置(例如 http_proxy / https_proxy),配置代理,然后重试克隆。 然后从源目录安装:cd vllm-plugin-FL pip install -r requirements.txt pip install --no-build-isolation . # 必须启用 vLLM-Plugin-FL 时运行 vLLM export VLLM_PLUGINS='fl' 验证 vLLM-Plugin-FL 安装:python -c "import vllm_fl; print('vllm-plugin-FL 安装成功')"
步骤 3:安装 FlagGems Ascend NPU 用户:在安装 FlagGems 之前,必须先安装 FlagTree。请参阅 references/npu.md 并完成 FlagTree 安装步骤,然后再继续。 否则,FlagGems 验证将反复失败并继续重新安装 Triton。 # 安装构建依赖 pip install -U scikit-build-core==0.11 pybind11 ninja cmake # 克隆 FlagGems 源代码 cd ~/flagos-workspace git clone https://github.com/flagos-ai/FlagGems 如果 git 克隆失败,请询问用户的网络代理设置(例如 http_proxy / https_proxy),配置代理,然后重试克隆。 然后从源目录安装:cd FlagGems pip install --no-build-isolation . 验证 FlagGems 安装:python -c "import flag_gems; print('FlagGems 安装成功')"
步骤 4:(可选)安装 FlagCX FlagCX 是一种用于多设备分布式推理的统一通信库,支持同构和异构设置。单设备运行时可跳过此步骤。 注意:Ascend NPU 不需要 FlagCX —— Ascend 后端可跳过此步骤。 cd ~/flagos-workspace git clone https://github.com/flagos-ai/FlagCX.git 如果 git 克隆失败,请询问用户的网络代理设置(例如 http_proxy / https_proxy),配置代理,然后重试克隆。 然后构建和安装从源目录:cd FlagCX git submodule update --init --recursive # 为您的平台构建(例如 USE_NVIDIA=1 用于 NVIDIA) make USE_NVIDIA=1 export FLAGCX_PATH="$PWD" # 安装 Python 绑定(用您的平台替换 [xxx]:nvidia、ascend 等) cd plugin/torch/ FLAGCX_ADAPTOR=[xxx] pip install --no-build-isolation . 验证 FlagCX 安装:python -c "import flagcx; print('FlagCX 安装成功')"
步骤 5:后端特定设置 某些硬件后端需要额外设置。请参阅相应的参考文档: 后端芯片供应商参考 Ascend NPU Huawei references/npu.md MetaX GPU MetaX 待定 Iluvatar GPU (BI-V150) Iluvatar references/iluvatar_gpu.md Pingtouge-Zhenwu Pingtouge 待定 Tsingmicro Tsingmicro 待定 Moore Threads GPU Moore Threads references/mthreads_gpu.md Hygon DCU Hygon 待定
快速测试 询问用户要测试的模型名称(例如 Qwen3-4B、DeepSeek-R1)。 在机器上搜索该模型的本地副本:find / -maxdepth 5 -type d -name "" 2>/dev/null 如果找到,则使用发现的路径。如果未找到,请告知用户并询问他们提供不同的模型名称或完整的本地路径,然后重试搜索。 如果在 3 次尝试后仍未找到有效模型,请跳过快速测试并告知用户在重试之前准备模型。 在运行推理之前,请确保启用 FL 插件:export VLLM_PLUGINS='fl' 对于 Moore Threads GPU,还需要设置:export USE_FLAGGEMS=1 export FLAGCX_PATH=/workspace/FlagCX # 必须指向实际的 FlagCX 安装目录;这是一个示例 export VLLM_MUSA_ENABLE_MOE_TRITON=1 一旦解析了有效的模型路径,请运行离线批量推理以验证整个堆栈:from vllm import LLM, SamplingParams model_path = "" prompts = [ "Hello, my name is", ] sampling_params = SamplingParams(max_tokens=10, temperature=0.0) # 对于 Moore Threads GPU,请添加:enforce_eager=True, block_size=64, attention_config={"backend": "TORCH_SDPA"} # 对于 Iluvatar BI-V150,请添加:enforce_eager=T