iPAS 備考專區 登入

iPAS AI 應用規劃師 中級 科目一 AI 技術應用與規劃・114 年第二次・L21・第 13 題

Kubernetes 在 AI 部署裡做什麼?

原題

下列何者為 Kubernetes 在 AI 模型部署與運行中的核心功能?

白話

Kubernetes(通常縮寫成 K8s)是一套用來管理「容器(container)」的工具。

這題問你:當公司把 AI 模型上線提供服務時,Kubernetes 主要負責什麼事?

一句話總結

Kubernetes 是 AI 模型上線後的「服務管家」,核心是管理與協調模型服務的部署、擴展與運行環境,讓模型在多台機器上穩定跑、流量大了自動加機器、壞了自動重啟。

情境

先感受問題:模型訓練好了,然後呢?

假設「智慧信貸」公司的工程師王俊訓練好了一個信用評分模型,準確率 92%。

但問題來了:訓練好的模型只是一個檔案,怎麼讓它變成一個能被 App 即時查詢的服務?

他把模型包進一個「容器(container)」,容器就像一個完整的迷你電腦環境,裡面有 Python、套件、模型本身,隨時可以啟動。

但下一個問題更難:

  • 每天查詢量不穩定,早上 1,000 次、晚上可能 50,000 次,一台機器不夠用,要自動開更多
  • 容器當機了要自動重啟,不能讓服務中斷
  • 更新模型版本時,要讓舊版繼續跑,新版慢慢接手(滾動更新)

這些「讓很多容器在很多機器上穩定協作」的工作,就是 Kubernetes 的工作。

舊方法

沒有 Kubernetes 的時代,怎麼管模型服務

在 Kubernetes 出現前,工程師要自己扛起五件痛苦的事:

  1. 手動登入每台機器部署:有 10 台伺服器就要 SSH 登進去 10 次,一台一台啟動容器,超慢、超容易出錯。
  2. 自己寫腳本監控服務存活:容器掛掉,沒有人知道,要等使用者報錯才察覺,再手動重啟。
  3. 流量暴增時手動加機器:凌晨流量突然暴增,工程師要半夜爬起來手動開機器、部署容器、設定負載均衡。
  4. 更新模型版本超危險:舊版服務要先下線,新版部署好才能上線,中間有一段時間完全沒有服務(停機)。
  5. 資源浪費嚴重:為了應付流量高峰,平常都要留足夠多的機器待命,閒置時在燒錢。

新方法

Kubernetes 怎麼把這些都自動化

王俊把信用評分模型的容器交給 Kubernetes 管,只需要寫一份設定檔說明「我需要 3 個副本、流量超過 80% CPU 時自動擴展」。

Kubernetes 接手後:

  • 自動部署:把容器分配到適合的機器上啟動,不用手動登入
  • 自動重啟:某個容器掛了,幾秒內自動重啟一個新的,使用者完全不知道
  • 自動擴縮(Autoscaling):晚上查詢量暴增,Kubernetes 自動多開 10 個容器;流量退潮後自動縮回 3 個,節省費用
  • 滾動更新(Rolling Update):新模型版本部署時,先開幾個新版容器,確認沒問題後再逐步替換舊版,服務不中斷
  • 負載均衡:把 App 進來的查詢請求,均勻分配給多個容器,不讓任何一個過載

這就是選項 B 講的:管理與協調模型服務的部署、擴展與運行環境。

錯選項

為什麼其他選項是錯的

A自動化管理模型的訓練流程與參數調校

字面在說什麼

說 Kubernetes 能幫你跑模型訓練、調整超參數(Hyperparameter),讓訓練流程自動化。

為什麼不對

Kubernetes 是容器編排(container orchestration)工具,它管的是「讓容器跑起來並保持穩定」,不理解 AI 模型訓練的流程。管理訓練流程和超參數調校是 Kubeflow、MLflow、Weights & Biases 等 MLOps 工具的專職工作。Kubernetes 可以作為它們的底層基礎設施,但功能本身不是 Kubernetes 的。

誰會選錯

聽過「Kubernetes 很萬能」但沒細究它具體做什麼的人。Kubernetes 不懂 AI,它只管容器的生死和分配,不管容器裡跑的是訓練還是推論。

C提供 AI 模型的資料儲存與版本控管功能

字面在說什麼

說 Kubernetes 能儲存訓練資料、管理模型的不同版本(v1.0、v2.0 等)。

為什麼不對

資料儲存是物件儲存(S3、MinIO、GCS)或資料庫的工作。模型版本控管是 MLflow Model Registry、DVC、Weights & Biases 的工作。Kubernetes 本身的「儲存」只是掛載磁碟(Persistent Volume)讓容器能讀寫本地資料,不負責 AI 相關的版本管理邏輯。

誰會選錯

把 Kubernetes 和整個 MLOps 平台混為一談的人。Kubernetes 是基礎設施層,在它上面才跑著各種 MLOps 工具,但功能要分清楚。

D負責深度學習推論的 GPU 加速運算

字面在說什麼

說 Kubernetes 本身負責用 GPU 做深度學習的計算加速。

為什麼不對

GPU 計算是由 CUDA 驅動程式和 AI 框架(PyTorch、TensorFlow)負責的。Kubernetes 只是協調哪個 Pod 可以使用 GPU 資源,把 GPU 分配給對應的容器,但計算本身完全不是 Kubernetes 做的。這就像說「停車場負責開車」,停車場負責分配車位,不負責開車。

誰會選錯

看到「AI 推論」就聯想到「GPU」,再聯想到「Kubernetes 管 GPU」的人。管理(分配資源)和執行(跑計算)是兩件事,Kubernetes 做前者。

變形題

同個考點下次怎麼變形

延伸

想再往下看,這 5 個

答案、題目或解析有問題?回報這題

出處:iPAS 經濟部產業人才能力鑑定 ・ 114 年第二次 iPAS AI 應用規劃師 中級 科目一 第 13 題

看官方原文 PDF

原題 © 經濟部產業發展署,AITerms.tw 僅作教學解析使用,本站解析以 CC BY-NC-SA 4.0 授權。