text-generation-inference 文档
使用Prometheus和Grafana仪表盘监控TGI服务器
并获得增强的文档体验
开始使用
使用 Prometheus 和 Grafana 仪表盘监控 TGI 服务器
TGI 服务器的部署可以通过 Grafana 仪表盘轻松监控,它使用 Prometheus 进行数据收集。可检查的指标示例包括 TGI 使用的有效批处理大小统计信息、预填充/解码延迟、生成的令牌数量等。
在本教程中,我们将介绍如何设置本地 Grafana 仪表盘以监控 TGI 的使用情况。
服务器机器上的设置
首先,在您的服务器机器上,TGI 需要像往常一样启动。TGI 暴露了 多个 指标,这些指标可以由 Prometheus 监控服务器收集。
在本教程的其余部分,我们假设 TGI 是通过 Docker 以 `—network host` 模式启动的。
在托管 TGI 的服务器上,需要安装并启动 Prometheus 服务器。为此,请遵循 Prometheus 安装说明。例如,在编写本文时,在 Linux 机器上
wget https://github.com/prometheus/prometheus/releases/download/v2.52.0/prometheus-2.52.0.linux-amd64.tar.gz
tar -xvzf prometheus-2.52.0.linux-amd64.tar.gz
cd prometheus
Prometheus 需要配置为侦听 TGI 的端口。为此,在 Prometheus 配置文件 `prometheus.yml` 中,需要编辑以下行
static_configs:
- targets: ["0.0.0.0:80"]
以使用正确的 IP 地址和端口。
我们建议在服务器端尝试 `curl 0.0.0.0:80/generate -X POST -d '{"inputs":"hey chatbot, how are","parameters":{"max_new_tokens":15}}' -H 'Content-Type: application/json'`,以确保配置正确的 IP 和端口。
Prometheus 配置完成后,Prometheus 服务器可以在与 TGI 相同的机器上启动
./prometheus --config.file="prometheus.yml"
在本指南中,Prometheus 监控数据将在本地计算机上使用。因此,我们需要将 Prometheus 端口(默认为 9090)转发到本地计算机。为此,我们可以例如
- 使用 ssh 本地端口转发
- 使用 ngrok 端口隧道
为了简单起见,我们将在本指南中使用 Ngrok 将 Prometheus 端口从 TGI 服务器隧道到外部世界。
为此,您应该按照 https://dashboard.ngrok.com/get-started/setup/linux 上的步骤操作,一旦 Ngrok 安装完成,请使用
ngrok http http://0.0.0.0:9090
作为健全性检查,您可以确保从本地机器可以通过 Ngrok 提供的 URL(例如 https://d661-4-223-164-145.ngrok-free.app)访问 Prometheus 服务器。
监控机器上的设置
监控通常在与服务器不同的机器上完成。我们使用 Grafana 仪表盘来监控 TGI 服务器的使用情况。
有两种选择:
- 使用 Grafana Cloud 获得托管仪表盘解决方案 (https://grafana.org.cn/products/cloud/)。
- 自托管 Grafana 仪表盘。
在本教程中,为简单起见,我们将自托管仪表盘。我们建议按照 官方安装说明 安装 Grafana 开源版,使用可用的 Linux 二进制文件。例如
wget https://dl.grafana.com/oss/release/grafana-11.0.0.linux-amd64.tar.gz
tar -zxvf grafana-11.0.0.linux-amd64.tar.gz
cd grafana-11.0.0
./bin/grafana-server
Grafana 服务器启动后,Grafana 界面可在 https://:3000 访问。需要使用 `admin` 用户名和 `admin` 密码登录。
登录后,需要在“添加第一个数据源”选项中配置 Grafana 的 Prometheus 数据源。在那里,需要添加一个 Prometheus 数据源,并使用我们之前获得的 Ngrok 地址,该地址暴露了 Prometheus 端口(例如:https://d661-4-223-164-145.ngrok-free.app)。
一旦 Prometheus 数据源配置完成,我们就可以最终创建我们的仪表盘了!从主页,进入“创建第一个仪表盘”,然后“导入仪表盘”。在那里,我们将使用推荐的仪表盘模板 tgi_grafana.json,它是一个开箱即用的仪表盘,但您可以根据自己的喜好配置自己的仪表盘。
加载您的仪表盘配置,您的 TGI 仪表盘就应该可以投入使用了!
< > 在 GitHub 上更新