[英]How to use gitlab cache to store model weights for an ML pipeline?
我正在使用 gitlab 來托管 python 機器學習管道。 該管道包括一些 model 的訓練權重,我不想將其存儲在 git 中。 權重存儲在一些遠程數據存儲中,管道在運行其作業時會自動提取這些數據。
這可行,但是在嘗試使用此設置運行一些端到端自動 CI 測試時我遇到了問題。 每次觸發我的 CI 時,我不想從遙控器下載 model 權重(因為這可能會變得昂貴)。 事實上,出於安全原因,我想在所有 CI 測試中完全阻止我的互聯網連接(例如,通過在我的conftest.py
中配置套接字)。
如果我這樣做,顯然我無法訪問存儲我的 model 權重的位置。 我知道我可以模擬 model 的結果進行測試,但我實際上想測試 model 的權重是否合理。 所以 mocking 是不可能的。
我之前發布了一個類似的問題,我得到的解決方案之一是利用 gitlab 的緩存機制來存儲 model 權重。
但是,我無法弄清楚如何准確地做到這一點。 根據我對緩存的了解,如果我啟用它,gitlab 將從 Internet 下載必要的文件一次,並在以后的管道中重復使用它們。 但是,我正在尋找的解決方案看起來像這樣 -
這個問題有好的解決方案嗎?
一種可能的解決方案,但可能不夠靈活,是將 model 文件保留在 GitLab CI 變量中,並在步驟中放入正確的路徑。 GitLab CI 也支持二進制文件作為變量。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.