冷啟動

Cold Start

服務初次載入時的延遲問題

詳細解釋

冷啟動(Cold Start)是模型或服務首次啟動或閒置後重新啟動時的初始化階段,由於資源加載和預熱導致響應延遲增加。

類型:

  • 模型冷啟動:
  • 權重加載:從磁盤/存儲加載模型到記憶體
  • 編譯優化:TensorRTPyTorch (Torch Compile)的圖優化
  • 緩存填充:KV快取、特徵緩存初始化
  • 批次累積:攢批導致首請求等待
  • 服務冷啟動:
  • 容器啟動:Docker容器啟動時間
  • 環境初始化:依賴加載、連接建立
  • 無伺服器:無伺服器函數的冷啟動
  • 推薦系統冷啟動:
  • 新用戶:無歷史數據,無法個性化推薦
  • 新物品:無交互數據,無法評估受歡迎度
  • 解決:基於內容的推薦、探索策略

優化策略:

  • 預熱(Warmup):
  • 定期發送假請求保持熱狀態
  • 啟動後立即執行預熱推理
  • 預置並發(Provisioned Concurrency)
  • 漸進加載:
  • 按需加載:首次請求時加載對應模型
  • 層級加載:優先加載常用層
  • 優化啟動:
  • 輕量鏡像:減少容器啟動時間
  • 並行加載:多線程/多進程加載
  • 編譯緩存:保存優化後的計算圖

成本權衡:

  • 熱常駐:成本持續,但無冷啟動
  • 冷啟動:節省成本,但首請求慢
  • 預置並發:平衡兩者(如AWS Lambda Provisioned Concurrency)

監測指標:

  • 冷啟動時間:從請求到首次響應
  • P99延遲:冷啟動場景的延遲分布
  • 資源利用率:啟動後的資源效率

冷啟動是生產AI服務必須優化的關鍵指標。

探索更多AI詞彙

查看所有分類,繼續學習AI知識