text-generation-inference 文件

使用Prometheus和Grafana儀表盤監控TGI伺服器

Hugging Face's logo
加入 Hugging Face 社群

並獲得增強的文件體驗

開始使用

使用 Prometheus 和 Grafana 儀表盤監控 TGI 伺服器

TGI 伺服器的部署可以透過 Grafana 儀表盤輕鬆監控,它使用 Prometheus 進行資料收集。可檢查的指標示例包括 TGI 使用的有效批處理大小統計資訊、預填充/解碼延遲、生成的令牌數量等。

在本教程中,我們將介紹如何設定本地 Grafana 儀表盤以監控 TGI 的使用情況。

Grafana dashboard for 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)轉發到本地計算機。為此,我們可以例如

為了簡單起見,我們將在本指南中使用 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 開源版,使用可用的 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 上更新

© . This site is unofficial and not affiliated with Hugging Face, Inc.