LLMOps企业私有化大模型运维完整流程:从部署到监控
企业私有化大模型运维(LLMOps)涉及环境搭建、模型部署、服务监控与问题排错四个环节。
本文面向零基础运维人员,按完整流程拆解每一步操作,让你能独立完成私有化大模型的上线运维。
确认服务器硬件与操作系统
私有化大模型对硬件有明确要求。
建议至少配备一块24GB显存的GPU(如NVIDIA A10/4090)、32GB以上内存以及200GB以上空闲磁盘。
操作系统推荐Ubuntu 22.04 LTS,并提前安装好NVIDIA驱动和Docker。
检查GPU是否正常:
nvidia-smi
如果找不到命令,先安装NVIDIA驱动。
Ubuntu 22.04上可使用:
sudo apt update
sudo apt install nvidia-driver-535
sudo reboot
安装Docker:
curl -fsSL https://get.docker.com | sudo sh
sudo usermod -aG docker $USER
退出并重新登录使权限生效。
拉取并启动模型容器
选择企业常用的开源大模型,例如ChatGLM3-6B或Llama-3-8B。
官方Docker镜像已包含推理环境和模型权重,只需拉取并运行:
docker pull registry.cn-hangzhou.aliyuncs.com/thudm/chatglm3:latest
启动容器并映射端口(以8080为例):
docker run -d --gpus all \
-p 8080:8000 \
-v /mnt/models:/models \
-e MODEL_PATH=/models/chatglm3-6b \
--name my_llm chatglm3:latest
参数说明:--gpus all 允许容器使用所有GPU;-v 挂载模型权重目录;-e MODEL_PATH 指定模型加载路径。
如果模型已存在本地权重,直接挂载即可;
否则Docker会自动从镜像内置路径加载。
验证模型API服务
启动后等待日志输出Uvicorn running on http://0.0.0.0:8000。
使用curl发送请求:
curl http://localhost:8080/v1/chat/completions \
-H "Content-Type: application/json" \
-d '{"model":"default","messages":[{"role":"user","content":"你好"}]}'
若返回JSON包含choices,则服务正常运行。
检查日志:
docker logs -f my_llm
出现CUDA out of memory时,说明显存不足,可改用量化版本(例如int4)或减小max_tokens。
配置基础监控与告警
推荐使用Docker自带的资源统计功能:
docker stats my_llm
查看CPU、内存和GPU内存占用。
如需持久化监控,可搭建Prometheus + Grafana。
注意采集GPU指标需安装nvidia-docker和DCGM exporter。
简单告警可在宿主机写cron脚本:
#!/bin/bash
threshold=85
usage=$(nvidia-smi --query-gpu=memory.used,memory.total --format=csv,noheader,nounits | awk -F', ' '{print ($1/$2)*100}')
if (( $(echo "$usage > $threshold" | bc -l) )); then
echo "GPU内存超过85%" | mail -s "告警" admin@example.com
fi
高频问题与避坑指南
模型加载失败:常见原因是显存不足或路径错误。
先用nvidia-smi确认显存剩余,若不够可改用量化模型或增加--shm-size参数。
容器启动后端口冲突:先检查端口占用:sudo lsof -i :8080,更换映射端口或停止冲突进程。
API响应超时:长文本生成耗时较长。
可在客户端设置timeout参数,或在容器内调整推理引擎的max_tokens。
权限错误:挂载目录的属主不是root时,容器内用户可能无法读取。
挂载前执行chmod -R 755 /mnt/models。
效果验证与日常巡检
完成部署后,执行一次完整的推理测试,记录响应时间。
日常巡检时运行以下命令检查状态:
docker ps -a | grep my_llm # 查看容器运行状态
nvidia-smi # GPU利用率
curl -s -o /dev/null -w "%{http_code}" http://localhost:8080/health # 返回200即健康
如果一切正常,私有化大模型运维流程已跑通。
后续可根据业务需求添加认证、负载均衡或日志收集组件。
如果你正在处理LLMOps企业私有化大模型运维完整流程,建议先按本文步骤完整执行,再根据自己的环境做微调;
遇到异常时优先回看避坑和高频问题部分。