vLLM 推理后端简介

vLLM 推理后端简介

  • 简介
  • 一、核心优势
    • [1️⃣ PagedAttention(核心创新)](#1️⃣ PagedAttention(核心创新))
    • [2️⃣ 连续批处理](#2️⃣ 连续批处理)
    • [3️⃣ 高吞吐 + 低延迟](#3️⃣ 高吞吐 + 低延迟)
    • [4️⃣ OpenAI API 兼容](#4️⃣ OpenAI API 兼容)
    • [5️⃣ 部署简单](#5️⃣ 部署简单)
  • 二、使用示例
    • [1️⃣ 启动服务](#1️⃣ 启动服务)
    • [2️⃣ Python 调用](#2️⃣ Python 调用)
    • [3️⃣ curl 调用](#3️⃣ curl 调用)
  • [三、vLLM vs Hugging Face Transformers](#三、vLLM vs Hugging Face Transformers)
  • [四、与 MCP 的关系](#四、与 MCP 的关系)
    • [MCP(Model Context Protocol) 👉 是"协议层"](#MCP(Model Context Protocol) 👉 是“协议层”)
    • [vLLM 👉 是"推理执行层"](#vLLM 👉 是“推理执行层”)

简介

vLLM 是一个面向大语言模型(LLM)的高性能推理引擎,其核心目标是:以极高吞吐量 + 低延迟运行模型,同时保持部署简单

🧪 相比传统推理方式(如 Hugging Face Transformers),vLLM 更像是一个"专为生产环境设计的 LLM 推理服务器"。

⚠️ 注意

目前 vLLM 仅支持 NVIDIA GPU(CUDA),不支持 AMD、Intel GPU 或 Apple Silicon 进行核心推理。


一、核心优势

1️⃣ PagedAttention(核心创新)

vLLM 最重要的技术之一是:

👉 PagedAttention

它解决了一个关键问题:LLM 推理时 KV Cache 占用大量显存,并且极度碎片化

传统问题:

  • 每个请求单独占用 KV Cache
  • 显存碎片严重
  • 并发一高就 OOM

vLLM 的做法:

  • 类似"操作系统分页内存"
  • KV Cache 按块(page)管理
  • 动态分配 / 回收

📌 结果:

  • 显存利用率大幅提升
  • 支持更高并发
  • 减少 OOM

2️⃣ 连续批处理

传统推理(Transformers):

  • 一批请求必须"同时开始,同时结束"
  • 后来的请求要排队

vLLM:

👉 请求可以随时加入 batch

效果:

  • GPU 始终保持高利用率
  • 延迟更稳定
  • 吞吐量大幅提升

3️⃣ 高吞吐 + 低延迟

在实际测试中(官方与社区数据):

  • 吞吐量:提升 2~10 倍
  • 延迟:显著降低(尤其高并发)

适用于:

  • Chat API
  • Agent系统
  • RAG问答
  • 多用户服务

4️⃣ OpenAI API 兼容

vLLM 原生支持:

👉 OpenAI API 格式

例如:

bash 复制代码
POST /v1/chat/completions

这意味着:

  • 可以直接替换 OpenAI
  • 兼容 LangChain / LlamaIndex / Agent 框架
  • 几乎零改造接入

5️⃣ 部署简单

启动一个服务只需一行命令:

bash 复制代码
python -m vllm.entrypoints.openai.api_server \
  --model Qwen/Qwen2.5-7B-Instruct \
  --port 8000

即可得到一个:

👉 本地 OpenAI API Server

二、使用示例

1️⃣ 启动服务

bash 复制代码
python -m vllm.entrypoints.openai.api_server \
  --model Qwen/Qwen2.5-7B-Instruct \
  --host 0.0.0.0 \
  --port 8000

2️⃣ Python 调用

python 复制代码
from openai import OpenAI

client = OpenAI(
    base_url="http://localhost:8000/v1",
    api_key="EMPTY"
)

resp = client.chat.completions.create(
    model="Qwen/Qwen2.5-7B-Instruct",
    messages=[
        {"role": "user", "content": "介绍一下vLLM"}
    ]
)

print(resp.choices[0].message.content)

3️⃣ curl 调用

bash 复制代码
curl http://localhost:8000/v1/chat/completions \
  -H "Content-Type: application/json" \
  -d '{
    "model": "Qwen/Qwen2.5-7B-Instruct",
    "messages": [{"role": "user", "content": "你好"}]
  }'

三、vLLM vs Hugging Face Transformers

项目 Value
电脑 $1600
手机 $12
导管 $1
维度 vLLM Transformers
设计目标 生产级推理服务 通用模型框架
并发能力 ⭐⭐⭐⭐⭐ ⭐⭐
显存利用 ⭐⭐⭐⭐⭐ ⭐⭐
吞吐量 高(2~10倍)
易用性 高(API Server)
灵活性 ⭐⭐⭐⭐⭐
训练支持

四、与 MCP 的关系

MCP(Model Context Protocol) 👉 是"协议层"

作用:

  • 统一模型调用方式
  • 标准化工具调用
  • 支持 Agent 生态

vLLM 👉 是"推理执行层"

作用:

  • 真正运行模型
  • 返回推理结果

👉 MCP ≠ vLLM

👉 它们是上下游关系

相关推荐
大模型探索者2 小时前
2026 企业智能体平台选型指南:从通用到行业深耕,怎么选?
大数据·人工智能
深圳行云创新2 小时前
北极星知识图谱平台|太空越来越“拥挤”,知识图谱如何预测空间碎片碰撞风险?
人工智能·知识图谱
Am-Chestnuts2 小时前
国产AI多轮对话归档与多格式导出实践
人工智能·word
workflower3 小时前
装备企业的 AI 路线图
人工智能·深度学习·机器学习·设计模式·机器人
AKAMAI3 小时前
Linode接口及默认防火墙现已全面开放使用
人工智能·云计算
前端开发江鸟4 小时前
RAG 回答错了,问题到底出在召回、重排,还是生成?
人工智能
美狐美颜SDK开放平台4 小时前
直播app开发如何实现主播级美颜效果?美颜sdk开发方案详解
人工智能·音视频·美颜sdk·视频美颜sdk·美颜api
东方小月4 小时前
从零开发一个 Coding Agent(四):使用状态机校验大模型事件流
前端·人工智能·后端
大龄码农有梦想4 小时前
使用大模型服务如何保证数据安全?企业 AI 安全、私有化部署与治理实践
人工智能·私有化部署·数据安全·信创·ai agent·智能体·智能体开发平台
冬奇Lab4 小时前
每日一个开源项目(第170篇):CodeWiki - ACL 2026 论文级代码库自动文档生成,递归多 Agent 架构
人工智能·开源·资讯