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.com/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 上更新