Qwen3-14B部署教程:使用systemd守护vLLM服务实现开机自启与崩溃恢复
1. 模型简介
Qwen3-14b_int4_awq是基于Qwen3-14b模型的int4量化版本,采用AWQ(Activation-aware Weight Quantization)技术进行压缩。这个量化版本通过AngelSlim工具优化,在保持较高文本生成质量的同时,显著降低了模型对计算资源的需求。
主要特点:
- 4-bit量化精度
- 专为文本生成任务优化
- 内存占用大幅降低
- 推理速度提升明显
2. 环境准备与部署
2.1 系统要求
建议部署环境满足以下条件:
- Ubuntu 20.04/22.04 LTS
- NVIDIA GPU(至少16GB显存)
- CUDA 11.8或更高版本
- Python 3.8+
2.2 安装依赖
# 创建Python虚拟环境 python -m venv qwen_env source qwen_env/bin/activate # 安装vLLM及相关依赖 pip install vllm chainlit2.3 模型下载与部署
# 下载模型(假设模型已存放在指定位置) cd /root/workspace3. 使用vLLM部署模型服务
3.1 启动vLLM服务
创建启动脚本start_vllm.sh:
#!/bin/bash source /root/qwen_env/bin/activate python -m vllm.entrypoints.api_server \ --model /root/workspace/Qwen3-14b_int4_awq \ --trust-remote-code \ --port 8000 \ --gpu-memory-utilization 0.9 \ --max-num-seqs 32 \ --tensor-parallel-size 1 \ --quantization awq \ > /root/workspace/llm.log 2>&1 &给脚本添加执行权限并运行:
chmod +x start_vllm.sh ./start_vllm.sh3.2 验证服务状态
检查服务日志确认部署是否成功:
cat /root/workspace/llm.log成功部署后,日志中应显示类似以下内容:
INFO: Started server process [1234] INFO: Waiting for application startup. INFO: Application startup complete. INFO: Uvicorn running on http://0.0.0.0:80004. 配置systemd守护进程
4.1 创建systemd服务文件
创建/etc/systemd/system/qwen-vllm.service文件:
[Unit] Description=Qwen3-14B vLLM Service After=network.target [Service] User=root WorkingDirectory=/root/workspace ExecStart=/root/workspace/start_vllm.sh Restart=always RestartSec=10s StandardOutput=syslog StandardError=syslog SyslogIdentifier=qwen-vllm [Install] WantedBy=multi-user.target4.2 启用并启动服务
# 重载systemd配置 systemctl daemon-reload # 启用开机自启 systemctl enable qwen-vllm # 启动服务 systemctl start qwen-vllm # 检查服务状态 systemctl status qwen-vllm5. 使用Chainlit创建前端界面
5.1 创建Chainlit应用
创建chainlit_app.py文件:
import chainlit as cl from openai import OpenAI client = OpenAI(base_url="http://localhost:8000/v1", api_key="none") @cl.on_message async def main(message: cl.Message): response = client.chat.completions.create( model="Qwen3-14b_int4_awq", messages=[{"role": "user", "content": message.content}], temperature=0.7, ) await cl.Message(content=response.choices[0].message.content).send()5.2 启动Chainlit前端
chainlit run chainlit_app.py -w访问http://localhost:8000即可与模型交互。
6. 常见问题解决
6.1 服务启动失败
如果服务启动失败,可以检查:
- 日志文件
/root/workspace/llm.log - systemd日志:
journalctl -u qwen-vllm -f
6.2 显存不足
如果遇到显存不足问题,可以尝试:
- 降低
--gpu-memory-utilization参数值 - 减少
--max-num-seqs参数值 - 使用更小的量化版本(如果有)
6.3 模型加载慢
首次加载模型可能需要较长时间,请耐心等待。可以通过日志查看加载进度。
7. 总结
通过本教程,我们完成了:
- Qwen3-14b_int4_awq模型的vLLM部署
- 使用systemd配置守护进程,实现开机自启和崩溃恢复
- 创建Chainlit前端界面方便交互
这种部署方式具有以下优势:
- 服务稳定性高,自动恢复崩溃
- 系统重启后自动恢复服务
- 前端界面友好,易于使用
获取更多AI镜像
想探索更多AI镜像和应用场景?访问 CSDN星图镜像广场,提供丰富的预置镜像,覆盖大模型推理、图像生成、视频生成、模型微调等多个领域,支持一键部署。