ClearML Agent - MLOps/LLMOps 變簡單
支援 Linux、macOS 和 Windows 的 MLOps/LLMOps 調度程式和編排解決方案
? ClearML is open-source - Leave a star to support the project! ?
它是一個零配置的即發即忘執行代理,提供完整的 ML/DL 叢集解決方案。
只需 5 步驟即可實現完全自動化
pip install clearml-agent
(在任何 GPU 電腦上安裝 ClearML Agent:本機/雲端/...)“你的研究需要所有深度/機器學習 DevOps,然後還有一些......因為沒有人有時間這樣做”
立即嘗試 ClearML自架或免費方案託管
ClearML Agent 旨在滿足 DL/ML 研發 DevOps 需求:
使用 ClearML Agent,現在可以使用 *epsilon DevOps 設定動態集群
*epsilon - 因為我們是?沒有什麼是真正的零工作
我們認為 Kubernetes 很棒,但是遠端執行代理程式和叢集管理並不是必須入門的。我們設計了clearml-agent
以便您可以以任何適合您環境的組合在裸機和 Kubernetes 上運行。
您可以在 docker 資料夾中找到 Dockerfile,並在 https://github.com/allegroai/clearml-helm-charts 中找到 helm Chart
在 Kubernetes Glue 模式下執行代理,將 ClearML 作業直接對應到 K8s 作業:
是的! Slurm 整合可用,請查看文件以獲取更多詳細信息
只需單擊按鈕即可實現全面 HPC
ClearML Agent 是一個作業排程程序,用於偵聽作業佇列、拉取作業、設定作業環境、執行作業並監控其進度。
任何「草稿」實驗都可以安排由 ClearML 代理執行。
可以透過以下兩種方法之一將先前執行的實驗置於「草稿」狀態:
使用 ClearML UI 中實驗右鍵點擊上下文選單中的「入隊」操作並選擇執行佇列來規劃執行實驗。
請參閱建立實驗並將其排隊以供執行。
一旦實驗入隊,監控該隊列的 ClearML 代理就會拾取並執行實驗。
ClearML UI Workers & Queues 頁面提供持續執行資訊:
ClearML Agent 使用下列程序執行實驗:
pip install clearml-agent
完整的介面和功能可用
clearml-agent --help
clearml-agent daemon --help
clearml-agent init
注意:ClearML Agent 使用快取資料夾來快取 pip 套件、apt 套件和複製儲存庫。預設的 ClearML Agent 快取資料夾是~/.clearml
。
請參閱設定檔~/clearml.conf
中的完整詳細資訊。
注意: ClearML Agent擴充了ClearML設定檔~/clearml.conf
。它們被設計為共享相同的配置文件,請參閱此處的範例
為了進行調試和實驗,請在foreground
模式下啟動 ClearML 代理,所有輸出都會列印到螢幕上:
clearml-agent daemon --queue default --foreground
對於實際服務模式,所有標準輸出將自動儲存到臨時檔案(無需管道)。注意:使用--detached
標誌, clearml-agent將在背景運行
clearml-agent daemon --detached --queue default
GPU 分配透過標準作業系統環境NVIDIA_VISIBLE_DEVICES
或--gpus
標誌控制(或使用--cpu-only
停用)。
如果未設定標誌,且NVIDIA_VISIBLE_DEVICES
變數不存在,則所有 GPU 都會指派給clearml-agent
。
如果設定了--cpu-only
標誌,或NVIDIA_VISIBLE_DEVICES="none"
,則不會為clearml-agent
分配 GPU。
範例:在同一台機器上執行兩個代理,每個 GPU 一個:
注意:使用--detached
標誌, clearml-agent將在背景運行
clearml-agent daemon --detached --gpus 0 --queue default
clearml-agent daemon --detached --gpus 1 --queue default
範例:旋轉兩個代理,從專用的dual_gpu
佇列中拉取,每個代理兩個 GPU
clearml-agent daemon --detached --gpus 0,1 --queue dual_gpu
clearml-agent daemon --detached --gpus 2,3 --queue dual_gpu
為了進行調試和實驗,請在foreground
模式下啟動 ClearML 代理,所有輸出都會列印到螢幕上
clearml-agent daemon --queue default --docker --foreground
對於實際服務模式,所有標準輸出將自動儲存到文件中(不需要管道)。注意:使用--detached
標誌, clearml-agent將在背景運行
clearml-agent daemon --detached --queue default --docker
範例:在同一台電腦上執行兩個代理,每個 GPU 一個,預設為nvidia/cuda:11.0.3-cudnn8-runtime-ubuntu20.04
docker:
clearml-agent daemon --detached --gpus 0 --queue default --docker nvidia/cuda:11.0.3-cudnn8-runtime-ubuntu20.04
clearml-agent daemon --detached --gpus 1 --queue default --docker nvidia/cuda:11.0.3-cudnn8-runtime-ubuntu20.04
範例:旋轉兩個代理,從專用的dual_gpu
佇列中拉取,每個代理兩個 GPU,預設為nvidia/cuda:11.0.3-cudnn8-runtime-ubuntu20.04
docker:
clearml-agent daemon --detached --gpus 0,1 --queue dual_gpu --docker nvidia/cuda:11.0.3-cudnn8-runtime-ubuntu20.04
clearml-agent daemon --detached --gpus 2,3 --queue dual_gpu --docker nvidia/cuda:11.0.3-cudnn8-runtime-ubuntu20.04
也支援優先權隊列,範例用例:
高優先權佇列: important_jobs
,低優先權佇列: default
clearml-agent daemon --queue important_jobs default
ClearML Agent會先嘗試從important_jobs
佇列中拉取作業,並且只有當該佇列為空時,代理程式才會嘗試從default
佇列中拉取作業。
使用 Web UI 可以新增佇列、管理佇列內的作業順序以及在佇列之間移動作業,請參閱我們的免費伺服器上的範例
若要停止在背景執行的ClearML 代理,請執行用於啟動代理程式的相同命令列,並附加--stop
。例如,要停止上面顯示的第一台同一台機器、單 GPU 代理程式:
clearml-agent daemon --detached --gpus 0 --queue default --docker nvidia/cuda:11.0.3-cudnn8-runtime-ubuntu20.04 --stop
將 ClearML 與您的程式碼集成
在您的機器上執行程式碼(手動/PyCharm/Jupyter Notebook)
當您的程式碼運行時, ClearML建立一個實驗,記錄所有必要的執行資訊:
您現在擁有了實驗的“模板”,其中包含自動執行所需的一切
在 ClearML UI 中,右鍵單擊實驗並選擇“克隆”。將建立您的實驗的副本。
您現在已經從原始實驗中克隆了一個新的實驗草稿,可以隨意編輯它
安排執行新建立的實驗:右鍵單擊實驗並選擇“入隊”
ClearML-Agent 服務是 ClearML-Agent 的特殊模式,它能夠啟動先前必須在本機/專用電腦上執行的持久性作業。它允許單一代理程式針對不同的用例啟動多個泊塢視窗(任務):
ClearML-Agent 服務模式將旋轉任何排隊到指定佇列中的任務。 ClearML-Agent Services 啟動的每個任務都將註冊為系統中的新節點,提供追蹤和透明功能。目前,services-mode 下的clearml-agent 支援僅CPU 設定。 ClearML-Agent 服務模式可以與 GPU 代理程式一起啟動。
clearml-agent daemon --services-mode --detached --queue services --create-queue --docker ubuntu:18.04 --cpu-only
注意:使用者有責任確保將正確的任務推送到指定的佇列。
ClearML Agent 還可以與 ClearML 套件結合使用來實現 AutoML 編排和實驗管道。
範例 AutoML 和 Orchestration 範例可以在 ClearML 範例/自動化資料夾中找到。
AutoML 範例:
實驗管道範例:
Apache 許可證,版本 2.0(有關詳細信息,請參閱許可證)