当前位置: 首页 > news >正文

【VLLM】大模型本地化部署

目录

 一、租用服务器到服务器连接VScode全流程(可选)

二、下载模型到本地服务器

1、进入魔塔社区官网

2、选择下载模型

3、执行下载

三、部署VLLM

1 参考vllm官网文档

2 查看硬件要求

3 安装vLLM框架

 4 启动模型

5 调用模型进行对话

四、vLLM 本地部署的核心特点

✅ 1. 极致性能:高吞吐 + 低延迟

✅ 2. 高效显存利用,适配大模型

✅ 3. OpenAI API 完美兼容

✅ 4. 支持多种主流大模型

✅ 5. 灵活部署能力

五、适合人群

六、不太适合的人群或场景

七、典型应用场景

1. 本地化大模型 API 服务

2. 数据隐私要求高的企业应用

3. 模型评估、对比实验

4. 智能问答 / RAG 系统推理引擎

5. 高并发的 AI 接口服务部署

6. 模型能力展示和原型验证

总结


 一、租用服务器到服务器连接VScode全流程(可选)

AutoDL连接VSCode运行深度学习项目的全流程教程:
【云端深度学习训练与部署平台】AutoDL连接VSCode运行深度学习项目的全流程-CSDN博客

AutoDL官网地址:AutoDL算力云 | 弹性、好用、省钱。租GPU就上AutoDL

这里介绍了 AutoDL 平台的使用方法,从平台简介、服务器租用、VSCode远程连接,到高级GPU监控工具的安装,适合中文开发者快速上手深度学习任务。

▲如果说电脑硬件配置太低(如:显存低于24GB),请根据【AutoDL连接VSCode运行深度学习项目的全流程教程】,通过云服务器来进行部署运行;

▲如果说电脑硬件配置足够高(如:显存24GB及以上),或者说有自己的服务器,可以直接跳过这一步;


二、下载模型到本地服务器

1、进入魔塔社区官网

魔塔社区官网地址:ModelScope 魔搭社区

2、选择下载模型

这里根据业务场景选择合适的模型类型和模型参数大小即可。

这里用SDK的下载方式下载模型:将代码复制到服务器中

3、执行下载

▲在服务器的数据盘中(autodl-tmp下 )创建一个.py文件(如download_model.py);

▲将复制的SDK下载代码复制到【download_model.py】 ;

▲修改存放路径为数据盘:cache_dir="/root/autodl-tmp"

#模型下载
from modelscope import snapshot_download
model_dir = snapshot_download('Qwen/Qwen3-0.6B',cache_dir="/root/autodl-tmp")

cache_dir="/root/autodl-tmp"表示存放的路径,/root/autodl-tmp为数据盘路径;

#出发路径:服务器根目录#查看当前位置
ls#进入到数据盘路径
cd autodl-tmp/#运行下载脚本download.py
python download.py

【注意】

▲下载完后,提示成功的信息可能会夹在进度条的中间,按下【回车】即可继续操作


▲验证模型文件是否下载完整?

这种情况主要出现在下载大参数模型时(如7B及以上参数模型),下载中途可能会因为网络问题导致文件下载失败从而终止。这种情况只需再次执行下载命令(如:python download.py),即可继续下载,中断反复执行即可,直到出现下载成功的提示信息即可。


▲模型资源重复

在下载模型时,有的模型文件可能会出现2个模型资源文件夹,不过这都不影响,不管用哪一份都可以;


三、部署VLLM

1 参考vllm官网文档

VllM文档参考地址:vLLM - vLLM 文档

因为VLLM的更新快,所以在部署过程中以官方文档为准

2 查看硬件要求

确保自己电脑硬件要求是否符合该要求,否则无法正常运行;

【知识扩展】

GPU 计算能力 7.0 或更高能干嘛?

  • 用途:AI 训练/推理(像 ChatGPT 模型)、科学计算、游戏光线追踪、3D 渲染、大数据处理。

  • 为什么越高越好

    • 更快:更多核心、更高效的计算(像张量核心加速 AI)。

    • 更强:支持高级指令,处理复杂任务。

    • 更省电:新架构能效更高。

    • 更兼容:支持最新软件和算法。

符合 7.0 或更高要求的 GPU

  • Volta(7.0):Tesla V100、TITAN V

  • Turing(7.5):RTX 2080 Ti、RTX 2070、RTX 2060、T4

  • Ampere(8.0/8.6):RTX 3090、3080、3060、A100、RTX A6000

  • Ada Lovelace(8.9):RTX 4090、4080、4070

  • Hopper(9.0):H100、H200

  • Blackwell(9.x):B100、B200(数据中心用)

建议

  • 个人/游戏:选 RTX 3060、4070、4090,性价比高。

  • AI/专业:选 A100、H100,算力强但贵。

  • 查具体型号:去 NVIDIA 官网(https://developer.nvidia.com/cuda-gpus)或用 nvidia-smi 工具。

如果有具体需求(比如预算、用途),告诉我,我再帮你缩小范围!


3 安装vLLM框架

第一步:创建虚拟环境

在服务器中执行以下命令

#创建一个虚拟环境
conda create -n vllm python=3.12 -y

vllm表示虚拟环境名称(可自定义);

python=3.12 表示python版本,根据vllm官方指定版本即可; 

第二步:激活虚拟环境

sourch activate vllm

conda activate vllm

 【可能报错】

root@autodl-container-9b344ca36c-008f014e:~/autodl-tmp# conda activate vllm
CondaError: Run 'conda init' before 'conda activate'                           root@autodl-container-9b344ca36c-008f014e:~/autodl-tmp# sourch activate vllm   
bash: sourch: command not found      

修复 Conda 激活问题

运行以下命令初始化 Conda:

conda init bash

然后重新打开一个终端(或运行 source ~/.bashrc 让改动立即生效):

source ~/.bashrc

然后你就可以正常激活虚拟环境了:

conda activate vllm

第三步:安装vllm

pip install vllm

 4 启动模型服务

vllm serve /root/autodl-tmp/Qwen/Qwen3-0.6B

/root/autodl-tmp/Qwen/Qwen3-0.6B 表示模型本地保存模型的绝对路径 


5 调用模型进行对话

#进入数据盘路径下
cd root/autodl-tmp#运行test.py脚本
python test.py

 

 执行代码如下

#使用openai的API风格调用本地模型
from openai import OpenAIclient = OpenAI(base_url="http://localhost:8000/v1",  api_key="yyds"  # 填任意非空字符串即可(vLLM/Ollama 不验证)
)chat_completion = client.chat.completions.create(model="/root/autodl-tmp/Qwen/Qwen3-0.6B",  messages=[{"role": "user", "content": "你好,做个自我介绍"}]
)print(chat_completion.choices[0].message.content)

 【扩展命令】

#退出虚拟环境
conda deactivate#查看你当前机器上所有 Conda 虚拟环境
conda info --env#彻底删除名为 vllm 的 Conda 环境及其所有内容
conda remove -n vllm --all 


四、vLLM 本地部署的核心特点

vLLM 是一个由 UC Berkeley 等团队开发的高性能、大语言模型推理引擎,专为本地或私有化部署场景设计,特别适合 高并发、低延迟、大模型服务化部署


✅ 1. 极致性能:高吞吐 + 低延迟

  • 📦 基于 PagedAttention 技术,极大减少内存碎片和重复计算

  • 🚀 比 HuggingFace Transformers 快 3~10 倍

  • ⏱ 支持 批量推理(Batching)并发调度(Multi-Request Handling)


✅ 2. 高效显存利用,适配大模型

  • 💾 利用显存分页机制,可在 1 张 GPU 上运行多个上下文窗口

  • ✂️ 更低显存开销,支持 上下文长度 4K~32K+

  • ⚖️ 支持 模型动态加载、按需调度


✅ 3. OpenAI API 完美兼容

  • 🧠 启动后可用 /v1/chat/completions 接口

  • 🛠 可直接接入 LangChain、Flowise、FastAPI、WebUI 等工具链

  • 🔒 本地化部署,数据私有、安全合规


✅ 4. 支持多种主流大模型

兼容 HuggingFace 上的绝大多数模型,包括但不限于:

模型系列示例
LLaMAmeta-llama/Llama-2-7b-chat
QwenQwen/Qwen-7B-Chat
Baichuanbaichuan-inc/Baichuan2-13B-Chat
Mistralmistralai/Mistral-7B-Instruct-v0.2
Gemmagoogle/gemma-7b
ChatGLMTHUDM/chatglm3-6b(通过支持的 fork)

✅ 5. 灵活部署能力

  • 🖥 单卡即可运行(如 24G RTX3090)

  • 🧩 支持多 GPU 分布式并行:Tensor Parallel + DeepSpeed

  • 🧵 支持多线程、高并发调用


五、适合人群

适合人群说明
👨‍💻 开发者 / AI 工程师具备基础 Python + Linux + CUDA 环境配置能力,想快速部署一个大模型 API 服务
🧪 科研人员 / 教研用户需要复现或评估多个大语言模型,在本地做精细对比实验
🧰 企业内测团队公司希望私有化部署 GPT 类服务、规避数据泄露风险,不依赖公网 API
🧠 AI 应用开发者开发基于大模型的应用,如智能客服、Agent、RAG 系统、Chat UI 等
🧩 边缘计算/轻量模型部署人员在小型服务器(单卡)或本地推理设备上运行压缩后的大模型,如 7B Qwen、Mistral 等

六、不太适合的人群或场景

不适合原因
零基础用户需具备一定 Linux、Python、CUDA 环境配置能力
纯 CPU 环境不支持无 GPU 的推理
需要训练/微调vLLM 专注推理,不支持模型训练或微调

vLLM 本身不直接支持微调,但你可以在 Hugging Face 或 PEFT 中微调模型(推荐 LoRA 节省资源),然后将微调后的权重加载到 vLLM 进行高效推理。


七、典型应用场景

1. 本地化大模型 API 服务

替代 OpenAI API,提供标准接口给 Web、APP、内部系统调用。

  • ✅ 完整兼容 OpenAI 接口(/v1/completions, /v1/chat/completions)

  • ✅ 可替代 GPT-3.5/4 接口使用,接入 LangChain、Flowise 等工具链


2. 数据隐私要求高的企业应用

如金融、医疗、政务、教育等对隐私数据严格的行业。

  • ✅ 模型在本地运行,不经公网传输,数据安全可控

  • ✅ 可部署在内网、企业自研云或私有服务器上


3. 模型评估、对比实验

比如需要对比 Qwen、LLaMA、Baichuan、Gemma 在多轮对话、长文摘要等任务上的表现。

  • ✅ 快速切换不同模型测试

  • ✅ 原生支持多个主流 HuggingFace 模型


4. 智能问答 / RAG 系统推理引擎

构建基于向量检索 + 大模型问答的知识问答系统。

  • ✅ 和 LangChain / LlamaIndex 高度兼容

  • ✅ 高吞吐、低延迟,适合在线用户交互场景


5. 高并发的 AI 接口服务部署

提供企业内嵌式 AI 能力,如 AI 编写文案、生成摘要、多轮对话等。

  • ✅ 支持批量推理 + 多线程

  • ✅ 吞吐量远高于传统 Transformers 推理方式


6. 模型能力展示和原型验证

快速部署一套模型接口,用于产品 MVP 测试或演示 Demo。


总结

vLLM 非常适合中高级开发者、AI 工程团队,在具备一定 GPU 资源的前提下部署高效、低成本、可控的大语言模型服务,尤其适合本地化、安全敏感、高并发调用等场景。

http://www.xdnf.cn/news/1117099.html

相关文章:

  • 当外卖骑手遇上“爽提学院”:一场关于专业的蜕变
  • Vue中的render()函数
  • 封装---优化try..catch错误处理方式
  • 小程序部分pai
  • 【OpenGL ES】手撕一个mini版的Android native渲染框架
  • 深入理解数据库连接池:原理、实现与Druid实战
  • 使用binutils工具分析目标文件(壹)
  • 【网络工程师软考版】计算机组成原理
  • SylixOS 下的中断嵌套
  • Android自定义View的事件分发流程
  • python的平安驾校管理系统
  • html案例:编写一个用于发布CSDN文章时,生成有关缩略图
  • 嵌入式固件 .pkg 打包流程
  • 深度学习图像分类数据集—宠物四种表情识别分类
  • 学习python调用WebApi的基本用法(2)
  • k8s存储入门
  • 基于Leaflet调用天地图在线API的多层级地名检索实战
  • 深度学习16(对抗生成网络:GAN+自动编码器)
  • 跨网络连接不同机器上的虚拟机
  • UNet改进(22):融合CNN与Transformer的医学图像分割新架构
  • 15. JVM调优的参数设置
  • [Linux 入门] Linux 引导过程、系统管理与故障处理全解析
  • word设置多级标题
  • Cursor的使用
  • docker容器高级管理-dockerfile创建镜像
  • 树莓派5-ollama-linux-arm64.tgz 下载
  • OkHttp SSE 完整总结(最终版)
  • cuda编程笔记(7)--多GPU上的CUDA
  • 敦煌藻井配色:姜黄×钴蓝的东方色彩应用手册
  • CVE-2022-0609