機器學習維運與生產

金絲雀部署(canary deployment,機器學習)

金絲雀部署得名於昔日被帶入礦坑偵測毒氣的金絲雀:它讓新模型暴露於一小段有界的真實流量,比方說百分之一的使用者,其餘人則留在受信任的既有模型上。若金絲雀的線上指標站得住腳,你就分階段擴大它的占比;若指標惡化,你就把它切斷,而幾乎沒有人受影響。與影子不同,金絲雀真的會提供它的預測,因此衡量的是真實結果,而不只是模型本來會說什麼。

其機制是一個流量分流路由器,加上自動化的晉升邏輯。一部分請求會被決定性地導向金絲雀,通常以使用者或工作階段識別碼做雜湊,讓特定使用者有穩定的體驗,系統並持續地在系統指標(延遲、錯誤率、飽和度)與品質指標(預測分布、商業關鍵績效指標,以及陸續到來的標籤)兩方面,比較金絲雀與基準。晉升閘門只在金絲雀於統計上不劣於基準時才推進發布,否則便觸發自動回退。

機器學習特有的棘手之處在於:模型品質指標往往延遲、稀疏或嘈雜——真實標籤可能數小時或數天後才到,因此一小片金絲雀流量可能要很久才達到顯著性。實務上會倚賴快速的領先指標(預測分布偏移、校準度、護欄指標)做即時決策,把較慢的結果指標留給確認完整發布之用。

又稱
canary releaseprogressive rollout金絲雀發布漸進式發布