🗺️ ISO 42001 地圖
ISO/IEC 42001:2023・附錄 A・AI 系統生命週期

AI 系統生命週期:從需求到下線的控制

AI 系統上線之後還會變,只在上線前審一次不夠;這頁說明從需求到下線,每一段該做什麼、該留下什麼紀錄。

生命週期關卡:每關該留哪些證據 模型漂移監控模擬 A.6.1 與 A.6.2 九項控制

💡 先搞懂問題

一般軟體寫好、測過、上線之後,只要程式碼沒改,同樣的輸入就會得到同樣的結果。AI 系統不一樣:它的行為是從資料學來的,上線後面對的資料卻一直在變。客戶換了付款習慣、詐騙手法進化、外部模型供應商悄悄更新版本,模型的表現就會一點一點走樣,而且不會像伺服器當機那樣跳出明顯的錯誤訊息。

很多組織的 AI 管理停在「上線前開一次審查會」。審查會之後,沒有人看模型品質、沒有記錄每次決策用的是哪個版本、重新訓練被當成小改直接換上去。等到客訴上門,團隊才發現連「那一次到底發生了什麼」都答不出來。

生命週期(life cycle)的想法,就是把 AI 系統當成有一生的東西來管:從決定要做什麼、設計開發、驗證、上線、運作,到最後下線,每一段都有該做的檢查與該留的紀錄。ISO/IEC 42001 附錄 A 的 A.6 這一組控制正是沿著這條線排列。

需求與規格A.6.2.2 設計開發A.6.2.3 驗證確認A.6.2.4 部署A.6.2.5 運作監控A.6.2.6 下線依組織流程 重新訓練=回到驗證 技術文件 A.6.2.7:依對象整理、隨版本更新 事件日誌 A.6.2.8:至少涵蓋使用期間 上方:A.6.1.2 目標 + A.6.1.3 流程 決定整條線怎麼走
六個階段依序推進,兩條橫帶是貫穿全程的紀錄。

生活比喻:一台車從研發到報廢

車廠開發新車,會先訂規格:油耗多少、安全等級多高、給誰開。工程部畫設計圖、留零件清單,記下為什麼選這款引擎。出廠前做碰撞測試與道路測試,交車前做出廠檢查。車子上路後有定期保養,發現瑕疵要召回,車上還裝著行車紀錄器。等車子老舊到不符合新的排放標準,就要辦報廢,而不是丟在路邊。

少了任何一段都會出事。規格沒寫清楚,測試就不知道要測什麼;沒有行車紀錄器,事故發生後只能各說各話;只顧出廠、不管保養,車子遲早在路上拋錨。

回到 AIMS:剛才的「訂規格」對應 A.6.2.2 需求與規格;「設計圖與選料理由」對應 A.6.2.3 設計開發文件;「碰撞與道路測試」對應 A.6.2.4 驗證與確認;「出廠檢查與交車」對應 A.6.2.5 部署;「定期保養與召回」對應 A.6.2.6 運作與監控;「給車主、技師、監理單位的不同手冊」對應 A.6.2.7 技術文件;「行車紀錄器」就是 A.6.2.8 事件日誌。車廠事先訂下的安全原則與開發流程,則是 A.6.1.2 負責任開發目標與 A.6.1.3 設計開發流程。

這個比喻有兩處要小心。第一,車子的磨損看得見、有儀表板提醒,AI 模型變差卻沒有聲音:準確率慢慢下滑時,系統照樣回應、照樣打分數,所以監控要主動去量模型品質,不能只看系統有沒有在跑。第二,車子出廠後設計就固定了,AI 系統卻常在上線後重新訓練或更換外部模型版本,等於每隔一段時間就換了一台新車,每次都要回到驗證與部署的關卡重走一遍。

🎮 互動實驗室一:生命週期關卡

一家約 200 人的虛構電商要開發「訂單風險評分模型」,替每張訂單打分數,分數高的先暫停出貨、由客服確認。請帶著這個專案走過六個關卡,在每一關點選這個階段應該留下的證據(可複選),再按「交出這一關」。每關會立即說明哪些選對、哪些多做、哪些漏掉;漏掉的證據會記進稽核清單,走完六關後由稽核員一次開出示意不符合。

關鍵證據 0 / 11
已漏掉 0
示意工時 0 人日
畫面說明:上方六格是生命週期階段,紫框是目前關卡;交出後會變成綠色(證據齊全)或黃色(有漏掉)。

🎮 互動實驗室二:模型漂移監控模擬

同一個訂單風險評分模型上線了。示意每週約 20,000 張訂單,其中約 80 張是詐欺。請先選一個情境,再調整監控設定:輸入資料分布的警戒值、召回率(抓到詐欺的比例)的警戒值、多久檢查一次,以及觸發後要做的處置。圖表會即時顯示什麼時候發現問題、什麼時候恢復,以及期間多漏抓了多少示意詐欺交易。注意:詐欺要等客戶申訴退款才確定,召回率要大約 4 週後才算得出來(示意)。

情境
檢查頻率
多久有人或排程去比對一次指標與警戒值。
PSI(Population Stability Index)衡量輸入資料和訓練時差多少,越大差越多;不必等詐欺標註。
正常水準約 0.90。低於警戒值就觸發,但數字要晚約 4 週才看得到。
觸發後的處置(可複選)
沒勾「告警」代表指標超標只會顯示在儀表板上,要等季度報告才有人看見。
—發現問題(週)
—從異常開始的延遲
—多漏抓的示意詐欺交易
—誤報次數

📘 原理補完

A.6 的兩層結構:先定方向,再走生命週期

附錄 A 的 A.6 分成兩個部分。A.6.1 只有兩項控制,是整條生命週期的方向盤:A.6.1.2 要組織找出並寫下引導 AI 開發的負責任目標,例如公平性、透明度、穩健性、隱私;A.6.1.3 要把這些目標落實成有階段、有放行條件、有人核准的設計與開發流程。A.6.2 的七項控制則沿著生命週期逐段展開,前五項依序對應需求、設計開發、驗證確認、部署、運作監控,最後兩項技術文件與事件日誌貫穿全程。

生命週期該切成哪些階段,42001 本文沒有指定。ISO/IEC 22989 描述了發想、設計與開發、驗證與確認、部署、運作與監控、持續確認、重新評估、退役等階段;ISO/IEC 5338:2023 則以系統與軟體工程的 ISO/IEC/IEEE 15288、12207 為基礎,補上 AI 特有的流程。組織可以用瀑布式、敏捷或 MLOps(機器學習維運)的方式對應這些階段,重點是每一段有人負責、有檢查點、有紀錄。

控制生命週期位置要回答的問題稽核常抽的證據ISO 27001:2022 相近主題
A.6.1.2全程的方向我們做 AI 要守住什麼?怎麼變成可檢查的門檻?負責任開發目標、目標對需求與測試的對照無直接對應,接近政策與目標
A.6.1.3全程的流程骨架每個階段交什麼、誰放行、例外誰核准?開發流程文件、階段審查紀錄、例外核准8.25 安全開發生命週期
A.6.2.2需求與規格要做什麼、不做什麼、做到多好才算數?需求文件與核准、需求到測試的追溯8.26 應用系統安全要求
A.6.2.3設計開發為什麼這樣設計、用了哪一版資料?設計紀錄、實驗追蹤、模型登錄8.27 安全系統架構與工程原則
A.6.2.4驗證確認有沒有照規格做對?是不是適合真實用途?測試計畫與報告、分群結果、核准人8.29 開發與驗收中的安全測試
A.6.2.5部署怎麼安全上線、出事怎麼退回去?部署計畫、上線核准、回復演練紀錄8.32 變更管理
A.6.2.6運作監控上線後誰在顧、看哪些指標、超標怎麼辦?監控儀表板、告警處理、重訓與更新紀錄8.16 監視活動
A.6.2.7全程,依對象提供使用者、客戶、主管機關各需要看什麼?文件對象清單、模型卡、文件與正式版本是否一致5.37 文件化運作程序(部分相近)
A.6.2.8至少涵蓋使用期間能不能重建某一次決策?日誌規格、實際調出一筆歷史紀錄、存取與保存期限8.15 日誌記錄

ISO 沒有發布 42001 與 27001 附錄 A 的官方對照表,最右欄是依主題整理的參考,方便已有 ISMS 的組織找到可以擴充的既有程序。

標準要求與組織自行決定的部分

附錄 A 是一份參考控制清單。組織要依 AI 風險評鑑與處理的結果,在適用性聲明(SoA,Statement of Applicability)中說明哪些控制納入、哪些排除及理由,這一點和 ISO 27001 的做法相同。納入的控制就要落實並能拿出證據。只採購外部 AI 服務、完全不做開發的組織,A.6 的部分控制可能較少適用,但只要有微調模型、撰寫提示詞樣板或串接 RAG(Retrieval-Augmented Generation,檢索增強生成)知識庫,通常仍算在開發活動裡,上線後的監控與使用紀錄也還是要自己做。

標準沒有規定的事情很多,都由組織依風險決定:要用哪一種生命週期模型、用什麼工具、監控哪些指標與多久看一次、警戒值訂多少、部署要不要先跑影子模式(shadow mode,新模型在背景打分數但不影響實際決策)、日誌要記哪些欄位與保存多久。A.6.2.8 只明確要求至少在系統使用期間記錄事件日誌,其他階段要不要記由組織判斷。下線(退役)也沒有獨立的一項控制,但組織依 A.6.1.3 定義的流程若涵蓋退場,就要照著做並留下紀錄;22989 與 5338 都把退役列為生命週期的一段,實務上建議納入。

把生命週期控制落地的步驟

  1. 盤點範圍內的 AI 系統,在 SoA 中確認 A.6 各項的適用性與理由。
  2. 畫出現行的開發與維運流程,對照 22989 或 5338 的階段,標出缺口;最常見的缺口是上線後監控、重新訓練的核准與退場。
  3. 為每個關卡訂出產出物與放行條件,盡量內建在既有工具裡,例如工單的核准欄位、CI/CD 管線裡的模型評測、模型登錄(model registry)的版本紀錄。
  4. 為每個上線系統訂監控計畫與日誌規格:指標、警戒值、負責人、檢視頻率、觸發後的處置、保存期限與遮罩方式。
  5. 寫清楚哪些變更要回到驗證與部署關卡,例如重新訓練、更換外部模型版本、修改系統提示詞、擴大使用族群或用途。
  6. 用內部稽核抽一個系統,從需求一路追到監控與日誌,確認這條鏈沒有斷。

常見誤解

「重新訓練只是小改。」架構沒變不代表行為沒變。換了資料,模型對某些族群的表現可能變好也可能變差,所以重訓後的模型要當成新版本,重跑驗證、走部署核准,技術文件也要跟著更新。

「監控就是看系統有沒有掛。」CPU、記憶體、回應時間只能告訴你服務還在,不能告訴你模型還準不準。A.6.2.6 期待的是連模型層面一起看:輸入資料分布是否改變(資料漂移,data drift)、輸入和正確答案的關係是否改變(概念漂移,concept drift)、誤判率趨勢、不同族群的表現差距、人工覆核推翻 AI 決定的比例。

「驗證和確認是同一件事。」驗證(verification)問的是有沒有照規格把東西做對,確認(validation)問的是做出來的東西在真實用途下是否適用。實驗室一的模型在測試集上達到規格,但如果客服實際使用後發現被擋的多是老客戶大量採購,那就是確認沒過。兩者都在 A.6.2.4,缺一不可。

「日誌記越多越好。」AI 的事件日誌常包含輸入內容、客戶資料甚至完整對話,本身就是需要保護的資訊。記錄前要決定哪些欄位要遮罩、誰可以查、保存多久,並和個資保護的要求一起檢視。

稽核常見的不符合

稽核員最常用的手法是抽一個最近上線或改版的 AI 系統走完一遍。常見的斷點包括:需求只寫「準確率 90% 以上」,沒有界定在哪些資料、哪些族群上量;設計文件停在第一版,之後幾次重訓都沒更新;只測整體準確率,沒有分群比較;模型由個人手動複製到正式環境,沒有核准紀錄,回復方案從沒演練;監控只有基礎設施指標;日誌沒記模型版本,事故時無法判斷是哪一版造成;對外文件寫的效能數字還是兩年前的版本。這些斷點有一個共同點:控制在文件上存在,但沒有長進團隊每天使用的工具與流程裡。

✅ 自我檢測

以下 6 題都是原創情境題,選完會立即顯示對錯與解析。目前得分:0 / 6