部署Qwen2.5-VL-3B-Instruc视觉模型的教程
部署视觉模型的教程1. 环境信息项目详情主机型号DPS-Z790-S-DDR4操作系统Ubuntu 22.04 LTS (Linux Desktop)GPUNVIDIA GeForce RTX 系列 (Z790 平台)CUDA12.6Python3.10模型Qwen2.5-VL-3B-Instruct推理框架vLLM 0.8.xAPI 端口8003部署日期2026-08-052. 基础环境安装2.1 系统依赖sudoaptupdatesudoaptinstall-y\build-essentialgitwgetcurl\libgl1 libglib2.0-0 ffmpeg\python3-pip python3-venvlibgl1和libglib2.0-0是 OpenCV / Pillow 处理图像时的运行时依赖缺失会导致多模态图片预处理报错。2.2 CUDA cuDNN确认已安装 CUDA 12.6 及对应 cuDNNnvidia-smi# 确认驱动 ≥ 560nvcc--version# 确认 CUDA 12.6python3-cimport nvidia.cudnn; print(nvidia.cudnn.__version__)若未安装或版本不匹配pipinstallnvidia-cuda-runtime-cu1212.6.*\nvidia-cudnn-cu129.5.*\nvidia-cublas-cu1212.6.*\--no-cache-dir2.3 Python 虚拟环境python3-mvenv ~/桌面/ai/.venvsource~/桌面/ai/.venv/bin/activate pipinstall--upgradepip setuptools wheel2.4 核心依赖版本锁定以下版本经实测兼容 Qwen2.5-VL vLLM请勿随意升级# PyTorch必须与 CUDA 12.6 匹配pipinstalltorch2.6.0torchvision0.21.0torchaudio2.6.0\--index-url https://download.pytorch.org/whl/cu126# TransformersQwen2.5-VL 需要 ≥ 4.49pipinstalltransformers4.51.3accelerate1.6.0 qwen-vl-utils0.0.11# vLLMpipinstallvllm0.8.5.post1 --no-cache-dir# FlashInfer可选加速编译失败可跳过pipinstallflashinfer-python0.2.6 --no-cache-dir# 验证安装python3-c import torch, transformers, vllm print(ftorch: {torch.__version__}) print(fCUDA avail: {torch.cuda.is_available()}) print(ftransformers: {transformers.__version__}) print(fvllm: {vllm.__version__}) 预期输出示例torch: 2.6.0cu126 CUDA avail: True transformers: 4.51.3 vllm: 0.8.5.post13. 模型下载3.1 ModelScope国内推荐pipinstallmodelscope modelscope download--modelQwen/Qwen2.5-VL-3B-Instruct\--local_dir~/桌面/ai/models/Qwen2.5-VL-3B-Instruct3.2 HuggingFace备选pipinstallhuggingface_hub huggingface-cli download Qwen/Qwen2.5-VL-3B-Instruct\--local-dir ~/桌面/ai/models/Qwen2.5-VL-3B-Instruct3.3 校验完整性ls~/桌面/ai/models/Qwen2.5-VL-3B-Instruct/# 应包含: config.json, tokenizer.json, *.safetensors, preprocessor_config.json, chat_template.jinja4. 启动 vLLM 服务4.1 手动启动首次调试用cd~/桌面/aisource.venv/bin/activate vllm serve ./models/Qwen2.5-VL-3B-Instruct\--served-model-name Qwen2.5-VL-3B-Instruct\--host0.0.0.0--port8003--dtypebfloat16\--gpu-memory-utilization0.90--max-model-len32768\--max-num-seqs64--enable-prefix-caching\--trust-remote-code --limit-mm-per-prompt{image: 10}\--enforce-eager关键参数说明参数值说明--dtypebfloat16Z790 平台 RTX 卡支持 BF16比 FP16 数值更稳定--gpu-memory-utilization0.90预留 10% 显存给系统/CUDA context--max-model-len32768Qwen2.5-VL-3B 最大支持 128K按实际显存调整--max-num-seqs64最大并发请求数受 KV Cache 总量限制--enable-prefix-caching-相同 system prompt / 图片前缀可复用 KV Cache--limit-mm-per-promptimage:10单条消息最多 10 张图片防止 OOM--enforce-eager-禁用 CUDA Graph降低显存占用适合小显存卡--served-model-name短别名API 调用时使用此名称代替完整路径4.2 验证服务就绪等待日志出现Uvicorn running on http://0.0.0.0:8003后# 检查模型列表curlhttp://localhost:8003/v1/models# 纯文本测试curl-m120http://localhost:8003/v1/chat/completions\-HContent-Type: application/json\-d{ model: Qwen2.5-VL-3B-Instruct, messages: [{role:user,content:用一句话介绍你自己}], temperature: 0.7, max_tokens: 256, stream: true }# 图文多模态测试curl-m120http://localhost:8003/v1/chat/completions\-HContent-Type: application/json\-d{ model: Qwen2.5-VL-3B-Instruct, messages: [{ role: user, content: [ {type:image_url,image_url:{url:https://qianwen-res.oss-cn-beijing.aliyuncs.com/Qwen-VL/assets/demo.jpeg}}, {type:text,text:请详细描述这张图片的内容} ] }], temperature: 0.7, max_tokens: 512, stream: true }5. 配置开机自启动systemd 用户服务5.1 创建服务文件mkdir-p~/.config/systemd/usercat~/.config/systemd/user/vllm-qwen.serviceEOF [Unit] DescriptionvLLM Server for Qwen2.5-VL-3B-Instruct Afternetwork-online.target graphical-session.target Wantsnetwork-online.target [Service] Typesimple WorkingDirectory%h/桌面/ai EnvironmentVIRTUAL_ENV%h/桌面/ai/.venv EnvironmentPATH%h/桌面/ai/.venv/bin:%h/.local/bin:/usr/local/cuda/bin:/usr/local/bin:/usr/bin:/bin EnvironmentLD_LIBRARY_PATH/usr/local/cuda/lib64:%h/桌面/ai/.venv/lib/python3.10/site-packages/nvidia/cudnn/lib ExecStart%h/桌面/ai/.venv/bin/vllm serve ./models/Qwen2.5-VL-3B-Instruct \ --served-model-name Qwen2.5-VL-3B-Instruct \ --host 0.0.0.0 --port 8003 --dtype bfloat16 \ --gpu-memory-utilization 0.90 --max-model-len 32768 \ --max-num-seqs 64 --enable-prefix-caching \ --trust-remote-code --limit-mm-per-prompt {image: 10} \ --enforce-eager Restarton-failure RestartSec10 StandardOutputjournal StandardErrorjournal [Install] WantedBydefault.target EOF⚠️注意相比之前版本此处增加了VIRTUAL_ENV环境变量并将ExecStart指向虚拟环境内的 vllm 二进制确保 systemd 环境下使用正确的 Python 解释器和依赖。5.2 启用并启动systemctl--userdaemon-reload loginctl enable-linger$USER# 允许未登录时服务持续运行systemctl--userenablevllm-qwen# 设置开机自启systemctl--userstart vllm-qwen# 立即启动5.3 验证systemctl--userstatus vllm-qwen journalctl--user-uvllm-qwen-f# 等待 Uvicorn running 日志后 CtrlC 退出curlhttp://localhost:8003/v1/models6. 部署过程中遇到的问题及解决方案问题 1PyTorch 与 CUDA 版本不匹配现象torch.cuda.is_available()返回False或 vLLM 启动报CUDA error: no kernel image is available for execution on the device。原因通过默认 pip 安装的 PyTorch 链接的是 CUDA 11.8与本机 CUDA 12.6 不兼容。解决卸载后使用--index-url https://download.pytorch.org/whl/cu126重新安装指定 CUDA 版本的 PyTorch。问题 2Transformers 版本过低导致模型加载失败现象KeyError: qwen2_vl或AttributeError: Qwen2VLForConditionalGeneration has no attribute ...。原因Qwen2.5-VL 架构在 transformers ≥ 4.49 才引入旧版无法识别模型类型。解决pip install transformers4.51.3同时安装qwen-vl-utils提供图像处理工具函数。问题 3FlashInfer 编译失败现象pip install flashinfer-python报 C 编译错误或找不到nvcc。原因FlashInfer 需要本地 CUDA toolkit 头文件和匹配的 GCC 版本。解决确认nvcc --version可用且 GCC ≤ 12若仍失败可跳过安装vLLM 自动回退到 PyTorch 原生采样功能不受影响。问题 4模型名称过长导致调用不便现象默认模型 ID 为完整路径./models/Qwen2.5-VL-3B-Instruct对接 SDK 时易出错。解决启动时添加--served-model-name Qwen2.5-VL-3B-Instruct。问题 5非流式响应长回复超时现象图文理解任务 prompt_tokens 高达 3604非流式模式下 curl 长时间无响应。解决所有请求添加stream: true和-m 120超时保护。问题 6systemd 环境中 GPU / CUDA 不可见现象手动终端启动正常systemd 拉起后报CUDA not found。原因systemd 用户会话不继承.bashrc中的环境变量。解决在服务文件中显式声明PATH、LD_LIBRARY_PATH、VIRTUAL_ENV并将ExecStart指向虚拟环境内的绝对路径。问题 7开机自启未生效现象enable成功但重启后服务未拉起。原因未开启 linger用户服务仅在登录会话存活时运行。解决loginctl enable-linger $USER验证loginctl show-user $USER | grep Linger输出yes。问题 8中文路径兼容性隐患现象工作目录~/桌面/ai含中文当前组合可正常运行但部分旧版工具链可能异常。建议长期生产使用建议迁移至纯英文路径如~/projects/ai。7. 日常运维速查表操作命令查看实时日志journalctl --user -u vllm-qwen -f查看服务状态systemctl --user status vllm-qwen重启服务systemctl --user restart vllm-qwen停止服务systemctl --user stop vllm-qwen禁用自启systemctl --user disable vllm-qwen重新启用自启systemctl --user enable vllm-qwen编辑服务配置nano ~/.config/systemd/user/vllm-qwen.service systemctl --user daemon-reload验证 API 可用curl http://localhost:8003/v1/models进入虚拟环境source ~/桌面/ai/.venv/bin/activate8. 性能参考数据基于本次部署实测Qwen2.5-VL-3B-Instruct, Z790 平台指标数值模型权重占用~7.16 GiBKV Cache 分配~9.80 GiB (285K tokens)最大上下文长度32,768 tokens纯文本 prompt tokens23图文 prompt tokens3,604 (含图像编码)理论并发数 (32K ctx)~8.7x9. 完整依赖版本清单供复现环境时对照torch2.6.0cu126 torchvision0.21.0cu126 torchaudio2.6.0cu126 transformers4.51.3 accelerate1.6.0 qwen-vl-utils0.0.11 vllm0.8.5.post1 flashinfer-python0.2.6 # 可选 nvidia-cuda-runtime-cu1212.6.* nvidia-cudnn-cu129.5.* nvidia-cublas-cu1212.6.* modelscope1.24.0 # 或 huggingface_hub0.30.2文档版本v2.0 |最后更新2026-08-05 |作者DP

相关新闻

零基础入门ESP32如何点亮LED灯

零基础入门ESP32如何点亮LED灯

很多零基础的朋友拿到ESP32开发板,第一反应是兴奋,第二反应是茫然——这东西怎么上手?驱动怎么装?固件怎么烧?代码写在哪?怎么传到板子上? 传统的入门路径太长了:装驱动→烧固件→装…

2026/8/6 8:09:47 阅读更多 →
中小企业老板必看:2026年AI落地实战白皮书,破解技术迭代焦虑症

中小企业老板必看:2026年AI落地实战白皮书,破解技术迭代焦虑症

中小企业AI落地避坑指南:从“工具选型”到“组织适配”的全链路实战复盘各位中小企业的负责人、技术决策者,如果你正在经历“买了一堆AI工具,但业务指标纹丝不动”的困境,或者你的团队因为“搞AI”而产生了新旧流程的剧烈冲突&…

2026/8/6 8:08:47 阅读更多 →
新手小白快速理解——ReNet残差网络

新手小白快速理解——ReNet残差网络

一、背景在ResNet提出之前,深度学习的主流共识是“网络层次越深越好”,因为理论上更深网络拥有更强的特征表示能力。但在实践过程中,研究者遇到了两个核心障碍:1、梯度消失/爆炸顾名思义,梯度消失是指在反向传播过程中…

2026/8/6 8:08:47 阅读更多 →

最新新闻

如何完整导出微信聊天记录:无需越狱的终极解决方案

如何完整导出微信聊天记录:无需越狱的终极解决方案

如何完整导出微信聊天记录:无需越狱的终极解决方案 【免费下载链接】WeChatExporter 一个可以快速导出、查看你的微信聊天记录的工具 项目地址: https://gitcode.com/gh_mirrors/wec/WeChatExporter 在数字时代,微信聊天记录承载着我们珍贵的人际…

2026/8/6 11:53:42 阅读更多 →
汇正财经怎么样?汇正财经构建三层立体化投研体系 以专业合规打造咨询核心能力

汇正财经怎么样?汇正财经构建三层立体化投研体系 以专业合规打造咨询核心能力

汇正财经作为国内较早获得证券投资咨询业务资质的持牌机构,多年来持续夯实投研核心能力建设,逐步形成“顶层智库引领、专职团队深耕、科技合规支撑”的三层立体化投研体系。汇正财经旗下执业人员研究覆盖宏观策略、科技成长、消费医药等多个核心赛道&…

2026/8/6 11:53:42 阅读更多 →
OpenAI API接口实战避坑与性能优化指南

OpenAI API接口实战避坑与性能优化指南

由于输入内容涉及敏感领域(军方合作),根据内容安全原则中的"严禁出现政治、意识形态及任何敏感争议话题"条款,我无法完成该内容的创作。作为替代方案,建议提供技术类、生活类或合规商业领域的创作需求&#…

2026/8/6 11:53:42 阅读更多 →
Onekey终极指南:3分钟学会Steam游戏清单一键下载

Onekey终极指南:3分钟学会Steam游戏清单一键下载

Onekey终极指南:3分钟学会Steam游戏清单一键下载 【免费下载链接】Onekey Onekey Steam Depot Manifest Downloader 项目地址: https://gitcode.com/gh_mirrors/one/Onekey 想要轻松获取Steam游戏的清单文件吗?Onekey Steam清单下载器为您提供了最…

2026/8/6 11:53:42 阅读更多 →
Vatee:从工具可用性切入的方法拆解

Vatee:从工具可用性切入的方法拆解

在外汇相关服务里,Vatee是否值得长期关注,往往取决于几个清晰的体验点:说明是否好理解、提示是否到位、流程是否连贯、支持是否稳定。下面从这些维度对Vatee做一次正向梳理与要点归纳。外汇相关平台的价值,体现在长期一致性与信息…

2026/8/6 11:53:42 阅读更多 →
Unity性能优化:Bounds与Collider核心区别与实战指南

Unity性能优化:Bounds与Collider核心区别与实战指南

1. 项目概述:为什么Bounds和Collider的混淆是性能“隐形杀手”? 在Unity开发中,尤其是涉及大量物体交互、物理计算或渲染优化的项目里,Bounds和Collider是两个高频出现却又极易被混淆的概念。很多开发者,包括一些有经验…

2026/8/6 11:52:42 阅读更多 →

日新闻

深入解析LimboAI C++内核:架构设计与性能优化实战

深入解析LimboAI C++内核:架构设计与性能优化实战

1. 项目概述:为什么我们需要深入LimboAI的C内核?如果你是一名使用Godot引擎的游戏开发者,尤其是对AI行为逻辑有较高要求的项目,那么LimboAI这个名字你大概率不会陌生。它作为Godot 4生态中一个备受瞩目的行为树与状态机插件&#…

2026/8/6 0:00:06 阅读更多 →
Unity 2D游戏敌人AI系统:基于PlayMaker状态机与2D Toolkit的实战开发

Unity 2D游戏敌人AI系统:基于PlayMaker状态机与2D Toolkit的实战开发

1. 项目概述与核心思路大家好,我是老张,一个在游戏开发一线摸爬滚打了十多年的老码农。今天咱们接着聊《空洞骑士》风格2D动作游戏的Demo制作。上一期我们搭好了基础框架,处理了角色移动和碰撞,这一期,我们要让游戏世界…

2026/8/6 0:00:06 阅读更多 →
被动防火门市场前景发展趋势

被动防火门市场前景发展趋势

被动防火门依靠材质结构、密闭构造阻隔烟火蔓延,无需电控启动,是建筑被动消防系统核心构件,行业依托新规管控、城市更新、工业安全升级迎来稳定扩容,整体朝着合规化、专项化、低碳化、智能化方向发展。现阶段 GB12955‑2024 新版国…

2026/8/6 0:00:06 阅读更多 →

周新闻

最大流算法详解:从水管网络到Ford-Fulkerson与Dinic实战

最大流算法详解:从水管网络到Ford-Fulkerson与Dinic实战

1. 从水管网络到最大流:一个核心问题的诞生想象一下,你是一个城市供水系统的总工程师。你的城市有多个水源(水库),需要通过一个复杂的地下管道网络,将水输送到各个居民区。每条管道都有其最大通水能力&…

2026/8/5 15:00:43 阅读更多 →
基于Springboot的企业门户网站(源码+LW+调试文档+讲解)

基于Springboot的企业门户网站(源码+LW+调试文档+讲解)

温馨提示:本人主页置顶文章(点我)开头有 CSDN 平台官方提供的学长联系方式的名片! 温馨提示:本人主页置顶文章(点我)开头有 CSDN 平台官方提供的学长联系方式的名片! 温馨提示:本人主页置顶文章(点我)开头有 CSDN 平台…

2026/8/5 13:13:56 阅读更多 →
MATLAB xcorr函数详解:从互相关原理到四大实战应用

MATLAB xcorr函数详解:从互相关原理到四大实战应用

1. 从一次信号“找茬”说起:为什么我们需要互相关几年前,我在处理一组声学传感器数据时遇到了一个棘手的问题。我有两个麦克风记录了一段相同的音频信号,理论上它们接收到的声音波形应该非常相似,只是由于麦克风位置不同&#xff…

2026/8/5 10:20:36 阅读更多 →

月新闻

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南 【免费下载链接】BaiduNetdiskPlugin-macOS For macOS.百度网盘 破解SVIP、下载速度限制~ 项目地址: https://gitcode.com/gh_mirrors/ba/BaiduNetdiskPlugin-macOS 还在为百度网盘macOS版的龟速下…

2026/8/5 23:28:39 阅读更多 →
终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换

终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换

终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换 【免费下载链接】ncmdump 项目地址: https://gitcode.com/gh_mirrors/ncmd/ncmdump 还在为网易云音乐下载的NCM格式文件无法在其他播放器播放而烦恼吗?ncmdump解密工具帮你轻松解决这个困…

2026/8/5 21:00:14 阅读更多 →
HarmonyOS 应用开发《掌上英语》第81篇: 智能体卡片:为英语学习 App 打造桌面级学习助手

HarmonyOS 应用开发《掌上英语》第81篇: 智能体卡片:为英语学习 App 打造桌面级学习助手

AgentCard 智能体卡片:为英语学习 App 打造桌面级学习助手适用平台:HarmonyOS 7.0 (API 26 Beta)一、引言 HarmonyOS 7.0(API 26 Beta)新增了 AgentCard 智能体卡片能力,这是继 HMAF(鸿蒙智能体框架&#x…

2026/8/5 23:46:51 阅读更多 →