Google TPU 文件

TGI 設定參考指南

Hugging Face's logo
加入 Hugging Face 社群

並獲得增強的文件體驗

開始使用

TGI 設定參考指南

必要設定

必要環境變數

  • HF_TOKEN:HuggingFace 身分驗證權杖

必要命令列引數

Docker 特定參數

  • --shm-size 16GB:共用記憶體配置
  • --privileged:啟用特權容器模式
  • --net host:使用主機網路模式

這些是執行 TPU 容器所必需的,以便 Docker 容器能夠正確存取 TPU 硬體

TGI 特定參數

  • --model-id:要從 HuggingFace Hub 載入的模型識別碼

這些是 TGI 和 optimum-TPU 用於設定伺服器行為的參數。

選用設定

選用環境變數

  • JETSTREAM_PT_DISABLE:停用 Jetstream PyTorch 後端
  • QUANTIZATION:啟用 int8 量化
  • MAX_BATCH_SIZE:設定批次處理大小(在 TPU 上為靜態
  • LOG_LEVEL:設定記錄詳細程度(對除錯很有用)。可以設為 info、debug 或以逗號分隔的屬性列表,例如 text_generation_launcher,text_generation_router=debug
  • SKIP_WARMUP:跳過模型預熱階段

關於預熱的注意事項

  • TGI 會執行預熱以編譯 TPU 操作,從而達到最佳效能
  • 在生產環境中,請勿使用 SKIP_WARMUP=1;不過,您可以將此參數用於除錯目的,以加快模型載入速度,但代價是模型推論變慢

您可以在 TGI 文件中查看更多選項。並非所有參數都與 TPU 相容(例如,所有 CUDA 特定的參數)

TGI 提示:您可以將大多數參數以 Docker 環境變數或 Docker 引數的形式傳遞給 TGI。因此,您可以將 `--model-id google/gemma-2b-it` 或 `-e MODEL_ID=google/gemma-2b-it` 傳遞給 `docker run` 命令

選用命令列引數

  • --max-input-length:最大輸入序列長度
  • --max-total-tokens:輸入/輸出權杖總數上限
  • --max-batch-prefill-tokens:批次處理的權杖數上限
  • --max-batch-total-tokens:批次中權杖總數上限

您可以在 TGI 文件中查看更多選項。並非所有參數都與 TPU 相容(例如,所有 CUDA 特定的參數)

Docker 需求

當在容器內執行 TGI 時(建議方式),容器應使用下列設定啟動:

  • 用於 TPU 存取的特權模式
  • 共用記憶體配置(建議 16GB)
  • 主機 IPC 設定

範例指令

這是一個完整的範例,展示了所有主要的設定選項

docker run -p 8080:80 \
    --shm-size 16GB \
    --privileged \
    --net host \
    -e QUANTIZATION=1 \
    -e MAX_BATCH_SIZE=2 \
    -e LOG_LEVEL=text_generation_router=debug \
    -v ~/hf_data:/data \
    -e HF_TOKEN=<your_hf_token_here> \
    ghcr.io/huggingface/optimum-tpu:v0.2.3-tgi \
    --model-id google/gemma-2b-it \
    --max-input-length 512 \
    --max-total-tokens 1024 \
    --max-batch-prefill-tokens 512 \
    --max-batch-total-tokens 1024
您需要將替換為 HuggingFace 存取權杖,您可以[此處](https://huggingface.co/settings/tokens)取得
如果您已經透過 `huggingface-cli login` 登入,為了更方便,您可以設定 HF_TOKEN=$(cat ~/.cache/huggingface/token)

其他資源

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