vLLM 环境安装

admin 2025年5月19日15:56:13评论3 views字数 3032阅读10分6秒阅读模式
vLLM 框架的并发性能确实要比 ollama 更高,但安装使用也更复杂。对于并发要求不高的场景使用 ollama 也够用了,并且 ollama 部署、升级都比较方便。虽然 ollama 很好,但 vLLM 也可以试一下。
vLLM github 项目地址:
https://github.com/vllm-project/vllm
vLLM 项目描述中 vllm 工具的安装就一条指令:
vLLM 环境安装
当然不会像看上去那么简单,我已经做好了充分的心理建设。还是老老实实地过安装文档:
https://docs.vllm.ai/en/latest/getting_started/installation/gpu.html
vLLM 环境安装
安装 vllm 前要看下显卡的 cuda 驱动,我的是 12.4 。默认 vllm 使用的是 cuda 12.6 ,暂时不想重新安装驱动了,先装上看报不报错。
vLLM 环境安装
按官方文档来,官方推荐使用 uv 安装虚拟环境,那就按推荐的来 。uv 可以理解成是和 conda 类似的 venv 工具。
uv 官网:
https://docs.astral.sh/uv/#learn-more
安装 uv(脚本可能需要访问 github) :
curl -LsSf https://astral.sh/uv/install.sh | sh
安装完 uv ,使用 uv 搞一个 python 3.12 的虚拟环境,并配置好 pip 国内镜像源。
$ uv venv myenv --python 3.12 --seed --link-mode=copy$ source myenv/bin/activate$ pip config set global.index-url https://mirrors.aliyun.com/pypi/simple$ pip config set global.trusted-host mirrors.aliyun.com
下面开始安装 vllm
pip install vllm
果然依赖特别多:
vLLM 环境安装
还好这个过程不需要代理,使用的是阿里的镜像。安装过程尽量使用 screen ,不然断网了要重来。
最终安装完后虚拟环境大小有7.8G
# du -sh myenv*6.5M    myenv   (不装任何包的大小)7.8G    myenv1  (装完 vllm 的大小)
vLLM 环境安装
里面有几个核心的库:
nvidia-cuda-cupti-cu12 12.4.127nvidia-cuda-nvrtc-cu12 12.4.127nvidia-cuda-runtime-cu12 12.4.127safetensors 0.5.3torch 2.6.0transformers 4.51.3vllm 0.8.5.post1
其中 cuda 相关的包的版本与驱动有关,看来 vllm 会自己处理依赖。跑新的模型时 vllm 也需要升级,目前 vllm 版本用的是 0.8.5.post1
vllm 安装完毕后可以运行 vllm 命令查看是否正常:
(myenv1) # vllm --helpINFO 05-14 14:55:02 [__init__.py:239] Automatically detected platform cuda.usage: vllm [-h] [-v] {chat,complete,serve,bench,collect-env} ...vLLM CLIpositional arguments:  {chat,complete,serve,bench,collect-env}    chat                Generate chat completions via the running API server.    complete            Generate text completions based on the given prompt via the running API server.    serve               Start the vLLM OpenAI Compatible API server.    bench               vLLM bench subcommand.    collect-env         Start collecting environment information.options:  -h--help            show this help message and exit  -v--version         show program's version number and exit
下一步就是找个模型试试 vllm 是否能跑起来,以 Qwen/Qwen3-0.6B 为例跑一下 vllm serve。模型名称可以到 huggingface 上去找,开源的模型会在 huggingface 上首发。
在运行 vllm 前需要安装 modelscop,modelscop 是和 huggingface 类似的模型社区。vllm 默认会从 huggingface 下载模型,但国内访问不方便。所以需要从 modelscop 中下载模型。
默认模型会下载到 ~/.cache/ 目录下,我们可以在 ~/.cache 目录下创建两个软连接将模型目录指向其它目录,不然下载模型时会把 home 目录撑爆。
ln -s /data/modelscope ~/.cache/modelscopeln -s /data/huggingface ~/.cache/huggingface
下一步安装 modelscope
pip install modelscope
最后运行 vllm 下载模型,在运行前需要设置环境变量指定使用 modelscope 下载模型。
export VLLM_USE_MODELSCOPE=Truevllm serve Qwen/Qwen3-0.6B --enable-reasoning --reasoning-parser deepseek_r1 --port 12345
我尝试了很多遍,因为不知道正常的输出是什么样的,以为哪里出问题了就不停杀掉重启任务,再尝试...  后来才知道它就是很慢,特别是第一次运行会下载模型,有可能会卡住。
我截几张图演示一下,中间我不停敲回车把日志距离拉的很大,因为监听的端口一直没起来,所以比较纠结。
刚运行时如下:
vLLM 环境安装
因为之前一直运行不成功,netstat 查看端口也没起来。怀疑是 IPv6 的问题,禁掉IPv6,应该与IPv6无关,可能就是单纯地慢。
等了两分钟左右,还没启动。
vLLM 环境安装
后面又过来几分钟:
vLLM 环境安装
一直到开始下载模型,发现应该没问题了。最后完全启动后的界面是这样的,在 netstat 也能看到端口起来了。
vLLM 环境安装
总的来说 vllm 的确要比 ollama 要复杂,特别是后期优化需要加特别多的参数。这次运行 Qwen3 完全是按它的模型文档来的,先选一个小模型把流程跑通,如果要换其它模型最好参考一下别人的实例。
使用 vllm 下载模型可能会卡住,建议使用 git 下载模型。我比较了一下使用 git 下载的模型与 vllm 下载的模型,它们基本上差不多。
vLLM 环境安装
使用 git 下载模型的方法如下:
Hugging Face 镜像
以 Qwen/Qwen3-0.6B 为例,下载命令为:
git clone https://aifasthub.com/Qwen/Qwen3-0.6B
下载下来后,使用软链接将模型目录指向 vllm 目录即可:
vLLM 环境安装
要点
  • uv 工具、pip 国内源
  • vllm 与 cuda 版本
  • modelscop 与 huggingface
全文完。

原文始发于微信公众号(生有可恋):vLLM 环境安装

免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉。
  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2025年5月19日15:56:13
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   vLLM 环境安装https://cn-sec.com/archives/4070698.html
                  免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉.

发表评论

匿名网友 填写信息