Day 18:RAG(一)索引端 — 八成的失敗在提問之前就決定了
今天進入生成式 AI 職缺中出現頻率最高的主題:RAG(48.1%)。
因為它太重要,我用三天處理:今天講索引端(文件怎麼進去)、明天講檢索端(怎麼找出來)、後天講生成與評測(怎麼用、怎麼知道好不好)。
如果你只能讀一天,讀今天——因為多數 RAG 系統的品質上限,在文件進資料庫的那一刻就決定了。
今天進入生成式 AI 職缺中出現頻率最高的主題:RAG(48.1%)。
因為它太重要,我用三天處理:今天講索引端(文件怎麼進去)、明天講檢索端(怎麼找出來)、後天講生成與評測(怎麼用、怎麼知道好不好)。
如果你只能讀一天,讀今天——因為多數 RAG 系統的品質上限,在文件進資料庫的那一刻就決定了。
2020 年我初次參加鐵人賽寫的是《用 LINE 串起多媒體系統》(GitHub),那 30 天在做的事,本質上是:接收使用者訊息 → 判斷意圖 → 呼叫對應的服務 → 組裝回應。
六年後的今天,我們做的事情架構上驚人地相似,但有一件根本性的不同:
2020 年,「判斷意圖」是我用
if "天氣" in text寫死的。 2026 年,這件事由模型決定,而且它還會自己決定要呼叫哪個 API、帶什麼參數。這一行差別,就是今天的主題。
今天進入主軸二:生成式 AI。前八天我們在解決關於 MLOps 的「模型會不會掛」,接下來八天解決「模型會不會智商下線」。
主軸一的讀者會發現,這邊的問題同樣需要工程紀律,只是換了一種形式。
前七天,我們一路處理模型如何可靠地上線、持續部署、監控,以及出問題時怎麼發現。今天換一個主管通常更有感的問題:
這套 AI 系統,到底花多少錢?
模型能活著還不夠,還要活得起。如果工程師只能回答「這樣架構比較漂亮」,很難推動決策;但如果能回答:「這個方案每月多花多少?」、「GPU 利用率提升後,可以少買幾張卡?」、「租雲端和買地端的成本交叉點在哪?」對話就完全不同了。
先看兩個很常見的情境。
場景一
主管:「我們要不要買 GPU?一直租雲端好貴。」 工程師:「呃……我算一下?」
然後這個問題被擱置了三個月。
場景二 主管:「上季買的四 張 A100,用得如何?」
工程師:「都有在用啊。」
主管:「利用率多少?」
工程師:「……」
這兩題沒有放諸四海皆準的答案,但有一套可以量化的決策方式。
今天就處理兩個數字:
📊 職缺訊號
「AI/ML 平臺與基礎設施」是這次 MLOps 職缺中最高頻的任務訊號之一,占 58.5%。
不過 JD 的層次差異很大:初階可能寫「維護 GPU 環境」,資深職缺則會出現「規劃 AI 運算資源」、「容量管理」、「平臺工程」與「成本最佳化」。
分水嶺不只是會不會架環境,而是能不能把技術選擇轉成容量、成本與風險的決策。
昨天服務跑起來了。今天回答:它跑得好不好?
面試時很容易被問到的題目,包含「你的服務延遲多少」、「怎麼提升吞吐」及「P99 為什麼重要」?這三題答得好,入職的機率大大提升。
今天進入 MLOps 職缺中出現頻率最高的領域:AI/ML 平臺與基礎設施(58.5%)。
本日不包含 Kubernetes 的全部——那是一本書的量,而且新入職的你優先事項不包含建立叢集(Day 04 的止損點清單裡有說明)。今天只講跑 ML 工作負載時,與跑一般 Web 服務不一樣的那些地方。
昨天資料有了版本。今天處理另外兩根柱子:這次訓練用了什麼設定、跑出什麼結果、產出的模型在哪裡。
這是 Day 08 診斷表第 3、5 題的內容,也是導入成本最低、痛感解除最快,投資報酬率最高的一天。
昨天的成熟度診斷中,其中「訓練前自動檢查資料」與「重現三個月前的訓練」應是最多團隊答「否」的兩題。今天就處理這兩題。
Day 06 說過可重現需要五根柱子,今天說明資料版本與隨機種子這根支柱,也順便處理一個棘手的問題。
2021 年那套成熟度模型,在 2026 年還適用嗎? 我的答案是:框架適用,內容要改寫。
本系列為 MLOps × GenAI Engineering 雙主軸,走主軸二的讀者可以略讀,但建議至少看完第二節——那是你未來合作對象的世界觀。
今天也是這個系列與 2021 年《從 AI 落地談 MLOps》 正面對話的一天。