Graphormer部署教程:Prometheus+Grafana监控GPU利用率与QPS
·
Graphormer部署教程:Prometheus+Grafana监控GPU利用率与QPS
1. 项目概述
Graphormer是一种基于纯Transformer架构的图神经网络,专门为分子图(原子-键结构)的全局结构建模与属性预测而设计。该模型在OGB、PCQM4M等分子基准测试中表现优异,大幅超越了传统GNN方法。
核心特点:
- 模型名称:microsoft/Graphormer (Distributional-Graphormer)
- 版本:property-guided checkpoint
- 模型大小:3.7GB
- 部署日期:2026-03-27
2. 环境准备与快速部署
2.1 系统要求
确保您的系统满足以下最低要求:
- GPU:NVIDIA RTX 4090(24GB显存)或更高
- 操作系统:Ubuntu 20.04 LTS或更高版本
- 内存:32GB或更高
- 存储:至少10GB可用空间
2.2 安装依赖
# 创建conda环境
conda create -n graphormer python=3.11 -y
conda activate graphormer
# 安装PyTorch
pip install torch==2.8.0 torchvision torchaudio
# 安装其他依赖
pip install rdkit-pypi torch-geometric ogb gradio==6.10.0
2.3 部署Graphormer服务
# 克隆代码仓库
git clone https://github.com/microsoft/Graphormer.git
cd Graphormer
# 下载预训练模型
wget https://graphormer-model.azureedge.net/property-guided-checkpoint.pt -P /root/ai-models/microsoft/Graphormer/
# 配置Supervisor
sudo cp config/supervisor/graphormer.conf /etc/supervisor/conf.d/
sudo supervisorctl update
3. 服务管理与监控配置
3.1 服务管理命令
# 查看服务状态
supervisorctl status graphormer
# 启动服务
supervisorctl start graphormer
# 停止服务
supervisorctl stop graphormer
# 重启服务
supervisorctl restart graphormer
# 查看日志
tail -f /root/logs/graphormer.log
3.2 Prometheus监控配置
3.2.1 安装Prometheus
wget https://github.com/prometheus/prometheus/releases/download/v2.47.0/prometheus-2.47.0.linux-amd64.tar.gz
tar xvfz prometheus-*.tar.gz
cd prometheus-*
3.2.2 配置Prometheus
编辑prometheus.yml文件,添加以下内容:
scrape_configs:
- job_name: 'graphormer'
static_configs:
- targets: ['localhost:9100'] # node-exporter
- targets: ['localhost:8080'] # cAdvisor
- targets: ['localhost:7860'] # Graphormer服务
3.2.3 启动Prometheus
./prometheus --config.file=prometheus.yml
3.3 Grafana可视化配置
3.3.1 安装Grafana
sudo apt-get install -y adduser libfontconfig1
wget https://dl.grafana.com/enterprise/release/grafana-enterprise_10.2.0_amd64.deb
sudo dpkg -i grafana-enterprise_10.2.0_amd64.deb
3.3.2 配置数据源
- 访问
http://localhost:3000登录Grafana - 添加Prometheus数据源
- URL设置为
http://localhost:9090
3.3.3 导入监控面板
- 下载GPU监控模板(ID:10795)
- 下载QPS监控模板(ID:13639)
- 在Grafana中导入这些模板
4. 关键监控指标详解
4.1 GPU利用率监控
核心指标:
nvidia_gpu_utilization:GPU使用率百分比nvidia_gpu_memory_utilization:显存使用率nvidia_gpu_temperature:GPU温度
配置示例:
- name: GPU Utilization
interval: 10s
targets:
- expr: 100 - (avg by (instance) (irate(node_cpu_seconds_total{mode="idle"}[1m])) * 100)
legendFormat: "CPU Usage"
- expr: nvidia_gpu_utilization{gpu="0"}
legendFormat: "GPU Usage"
4.2 QPS监控配置
核心指标:
http_requests_total:总请求数http_request_duration_seconds:请求延迟predictions_total:预测请求数
PromQL查询示例:
# 计算QPS
rate(http_requests_total{job="graphormer"}[1m])
# 计算平均响应时间
avg(rate(http_request_duration_seconds_sum[1m])) / avg(rate(http_request_duration_seconds_count[1m]))
5. 使用指南与示例
5.1 分子属性预测
- 访问服务:
http://<服务器地址>:7860 - 在输入框中输入分子SMILES格式
- 选择预测任务类型:
property-guided:属性预测catalyst-adsorption:催化剂吸附预测
- 点击"预测"按钮获取结果
5.2 SMILES示例
| 分子名称 | SMILES格式 |
|---|---|
| 乙醇 | CCO |
| 苯 | c1ccccc1 |
| 乙酸 | CC(=O)O |
| 甲烷 | C |
| 水 | O |
| 甲醛 | C=O |
6. 常见问题解决
6.1 服务状态显示STARTING但未运行
这是正常现象,模型首次加载可能需要几分钟时间。等待状态变为RUNNING即可。
6.2 显存不足问题
虽然Graphormer模型较小(3.7GB),但如果遇到显存问题:
# 检查GPU使用情况
nvidia-smi
# 减少batch size
export GRAPHORMER_BATCH_SIZE=8
6.3 监控数据不显示
- 检查Prometheus是否正常运行:
systemctl status prometheus - 确认targets是否up:
curl http://localhost:9090/api/v1/targets - 检查Grafana数据源配置是否正确
7. 总结与最佳实践
通过本教程,您已经完成了:
- Graphormer模型的部署与配置
- Prometheus监控系统的搭建
- Grafana可视化面板的配置
- GPU利用率和QPS指标的监控
最佳实践建议:
- 定期检查监控数据,设置告警阈值
- 根据QPS指标调整服务资源配置
- 使用Grafana的Annotations功能标记重要事件
- 长期保存关键指标数据用于性能分析
获取更多AI镜像
想探索更多AI镜像和应用场景?访问 CSDN星图镜像广场,提供丰富的预置镜像,覆盖大模型推理、图像生成、视频生成、模型微调等多个领域,支持一键部署。
更多推荐




所有评论(0)