保姆级教程!Linux 搭建 vLLM + Jupyter Lab 环境全步骤指南(附安全配置)

摘要:
本文手把手教你如何在 Linux 服务器上搭建基于 vLLM 的 Python 虚拟环境,并配置支持远程访问的 Jupyter Lab 服务。从创建虚拟环境到内核注册,再到安全密码设置与后台启动,全程无坑,小白也能轻松掌握!


🧰 一、创建 vLLM 虚拟环境

为了隔离依赖并保持环境干净,我们首先使用 conda 创建一个独立的虚拟环境。

conda create --name vllm python=3.12

确认安装后即可完成虚拟环境的创建。


🔌 二、激活虚拟环境

conda activate vllm

进入 vllm 环境后,我们就可以开始安装相关工具包了。


📦 三、安装 vLLM 和 Jupyter 支持

接下来我们安装 vLLM 及其配套的 Jupyter 工具包:

pip install vllm
pip install ipykernel jupyter
  • vllm:用于大模型推理加速。
  • ipykernel:将虚拟环境注册为 Jupyter 内核。
  • jupyter:提供 Jupyter Lab 服务支持。

🔌 四、将虚拟环境注册为 Jupyter 内核

为了让 Jupyter Lab 能识别我们刚创建的 vllm 环境,需要注册内核:

python -m ipykernel install --user --name vllm --display-name "vllm"
  • --name:内核名称
  • --display-name:在 Jupyter UI 中显示的名称

🔒 五、配置 Jupyter 安全密码

出于安全性考虑,我们需要对 Jupyter 的登录密码进行加密处理。

在 Python 命令行中执行如下命令生成加密密码:

from jupyter_server.auth import passwd
passwd()

系统会提示你输入并确认密码,完成后会输出一段加密字符串,请复制保存好。


📄 六、生成并配置 Jupyter Lab 配置文件

生成默认配置文件:

jupyter lab --generate-config

打开配置文件进行编辑:

vim ~/.jupyter/jupyter_lab_config.py

找到或添加以下配置项:

c.ServerApp.allow_origin = '*'                  # 允许跨域访问
c.ServerApp.allow_remote_access = True          # 允许远程访问
c.ServerApp.ip = '0.0.0.0'                      # 绑定所有IP
c.ServerApp.open_browser = False                # 不自动打开浏览器
c.ServerApp.password = 'sha1:xxxxxx...'         # 替换为你刚刚生成的加密密码
c.ServerApp.port = 8002                         # 设置访问端口

▶️ 七、后台启动 Jupyter Lab 服务

为了避免终端关闭导致服务中断,我们使用 nohup 后台运行:

nohup jupyter lab --allow-root > jupyterlab.log 2>&1 &
  • --allow-root:允许 root 用户运行(视情况使用)
  • > jupyterlab.log 2>&1 &:将日志写入文件并在后台运行

你可以通过 tail -f jupyterlab.log 查看启动日志。


🌐 八、访问 Jupyter Lab 并使用 vLLM 内核

在浏览器中访问:

http://你的服务器IP:8002

输入你设置的密码,进入 Jupyter Lab 页面。新建 Notebook 时,选择 vllm 内核即可使用 vLLM 进行大模型开发和调试。


🎉 结语:开启你的 AI 开发之旅!

恭喜你完成了 vLLM + Jupyter Lab 的完整部署!现在你可以安全地远程访问并高效进行大模型推理开发了。

如果你觉得这篇文章对你有帮助,欢迎点赞收藏,也欢迎留言交流你在使用过程中的问题或心得。

祝你工作顺利,代码无 Bug,模型不掉链子!🚀


标签:
#vLLM部署教程 #Jupyter远程访问 #Python虚拟环境配置

<think>好的,我需要帮助用户了解如何使用Docker和vLLM搭建DeepSeek模型。首先,我得理清楚Docker和vLLM的基本概念以及它们在部署模型中的作用。Docker用于容器化应用,确保环境一致性;vLLM则是一个高效的大模型推理和服务库,支持多种模型。 接下来,我应该分步骤指导用户。首先是准备Docker环境,可能需要安装Docker并拉取合适的镜像。然后,安装vLLM,用户可能需要通过Git克隆仓库并构建Docker镜像。之后,需要下载DeepSeek的模型权重,这部分可能需要用户有权限访问相关资源,比如Hugging Face Hub。配置模型时,要确保路径正确,参数如tensor并行设置合理。 编写启动脚本时,要使用Docker命令挂载模型目录,设置端口映射和环境变量。测试服务是否正常运行,可以通过发送HTTP请求来验证。此外,用户可能会遇到模型路径错误、依赖冲突或资源不足的问题,需要提供常见问题解答。 同时,我需要参考用户提供的引用内容,特别是关于Docker容器化应用的部分,确保步骤符合最佳实践。比如引用[1]提到Docker的轻量和隔离环境,所以在步骤中要强调容器化的优势。引用[2]虽然主要讲NGINX,但可能涉及配置文件的处理,但当前问题中暂时不需要,但可以作为扩展点。 最后,生成相关问题需要考虑用户可能进一步想知道优化部署、性能监控或结合其他工具如Kubernetes的方法。确保问题覆盖常见的使用场景和进阶需求。</think>### 使用Docker和vLLM搭建DeepSeek模型的步骤 #### 1. **环境准备** - **安装Docker** 确保系统中已安装Docker Engine,并启动Docker服务。 ```bash sudo apt-get update && sudo apt-get install docker.io systemctl start docker ``` - **拉取基础镜像** 推荐使用PyTorch官方镜像作为基础环境: ```bash docker pull pytorch/pytorch:2.1.0-cuda11.8-cudnn8-runtime ``` #### 2. **安装vLLM** - **克隆vLLM仓库并构建镜像** ```bash git clone https://github.com/vllm-project/vllm.git cd vllm docker build -t vllm-deepseek . ``` - **验证vLLM功能** 运行测试容器确保基础环境正常: ```bash docker run --gpus all -it vllm-deepseek python3 -c "import vllm; print(vllm.__version__)" ``` #### 3. **配置DeepSeek模型** - **下载模型权重** 从Hugging Face Hub或官方渠道获取DeepSeek模型文件(需权限许可),例如: ```bash git lfs install git clone https://huggingface.co/deepseek-ai/DeepSeek-7B ``` - **模型目录结构** 确保模型文件按以下结构存放: ``` /path/to/models/ └── deepseek-7b ├── config.json ├── model-00001-of-00002.safetensors └── tokenizer.model ``` #### 4. **编写启动脚本** - **创建启动脚本 `run.sh`** ```bash #!/bin/bash docker run --gpus all -d \ -p 8000:8000 \ -v /path/to/models:/models \ vllm-deepseek \ python3 -m vllm.entrypoints.openai.api_server \ --model /models/deepseek-7b \ --tensor-parallel-size 2 \ --served-model-name deepseek-7b ``` - **参数说明** - `--tensor-parallel-size`: GPU并行数量(根据实际GPU数量调整) - `--dtype half`: 使用半精度减少显存占用 - `--max-model-len 4096`: 设置最大生成长度 #### 5. **服务测试** - **发送推理请求** ```bash curl http://localhost:8000/v1/completions \ -H "Content-Type: application/json" \ -d '{ "model": "deepseek-7b", "prompt": "中国的首都是", "max_tokens": 50 }' ``` #### 6. **性能优化建议** - 启用PagedAttention机制减少显存碎片: ```bash --enable-paged-attention ``` - 使用量化技术(如AWQ)提升推理速度: ```bash --quantization awq ``` #### 常见问题排查 | 问题现象 | 解决方案 | |---------|---------| | CUDA out of memory | 减少`--tensor-parallel-size`值或增加`--gpu-memory-utilization` | | 模型加载失败 | 检查模型路径权限,确保`-v`挂载参数正确 | | 请求超时 | 调整`--max-num-batched-tokens`和`--max-num-seqs`参数 |
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值