Skip to content

混合雲 AI 模型自動化推論系統

類別:Hybrid Cloud · MLOps技術棧:Python · PyTorch · PostgreSQL · FastAPI · Vue.js · Cloud Scheduler


背景

模型訓練完成後,真正的挑戰才開始:如何讓它每天持續、穩定地產出有價值的推論結果,同時不讓雲端費用失控?

這個系統的核心目標有兩個:

  1. 大幅降低單純依賴雲端運算的成本
  2. 徹底消除手動操作的低效率

解法是混合雲架構:雲端負責資料儲存與調度,本地端伺服器負責高成本的模型推論。


系統架構

1. 雲端資料層

每天由排程工具(Cloud Scheduler)定時觸發,從雲端基礎建設(S3、資料庫)拉取最新的海量資料。這些資料可能是前一天由裝置端上傳、或是其他上游系統產生的原始資料。

2. 自動化資料處理

資料抵達後,Python 腳本全自動執行:

  • 清洗:過濾無效資料、補齊缺失欄位
  • 格式轉換:統一音檔格式(取樣率、位元深度、聲道)
  • 前處理:對齊模型輸入規格(特徵提取、正規化)

整個過程無需人工介入,資料直接進入下一階段。

3. 本地端模型推論

處理好的資料送到本地端伺服器,由 PyTorch 載入訓練好的模型進行批次推論。

本地端推論的關鍵在於穩定性與效能:

記憶體管理 大量批次推論很容易造成記憶體洩漏或 OOM(Out of Memory)。我針對伺服器規格做了嚴密的效能優化:

  • 控制 batch size,避免單次推論佔用過多記憶體
  • 推論完成後主動釋放 tensor,防止記憶體累積
  • 加入記憶體使用量監控,超過閾值自動告警

穩定性監控 推論過程設有詳細的 log,包含每批次的處理時間、成功率與異常紀錄,確保問題可被及時發現。

4. 結果儲存與 Dashboard

推論結果寫入 PostgreSQL 後,FastAPI 後端自動定時讀取並推送至前端。

Vue.js Dashboard 將資料渲染成即時圖表,讓使用者不需要查資料庫,直接在網頁上看到最新的推論結果。


全自動化流程

雲端資料 → Python 清洗/轉換 → 本地 PyTorch 推論

          Vue.js Dashboard ← FastAPI ← PostgreSQL

從資料拉取、清洗、推論到圖表更新,整個流程完全自動,每天定時執行,使用者打開 Dashboard 就能看到最新結果。


成果

  • 將大量推論工作從雲端移至本地端,顯著降低雲端運算費用
  • 全程自動化,消除每天手動操作的時間成本
  • 即時 Dashboard 讓非技術人員也能追蹤模型輸出
  • 本地端記憶體優化確保大量推論穩定運行,無需人工監視

反思

混合雲架構不是為了「用很多服務」,而是把每個層的工作分配給最適合它的地方做。雲端的彈性適合調度與儲存,本地伺服器的固定算力適合高頻推論。找到這個平衡點,才是控制成本與維持效能的關鍵。