更快地建立和運送解決方案已成為當今創新的基準。然而,對於人工智慧 (AI) 和機器學習 (ML) 團隊來說,擴展工作流程和快速交付價值面臨著獨特的挑戰,包括複雜的基礎設施、手動流程和效率低下。平台工程可以透過內部開發平台 (IDP) 簡化這些工作流程並自動執行重複任務,使團隊能夠專注於最重要的事情:提供有影響力的 AI/ML 解決方案。
2024 年 Dora 報告強調了平台工程的重大影響,將部署頻率提高了 60%,開發人員的生產力提高了 8%,團隊整體績效提高了 10%。這10個開源平台工程工具可以幫助您在AI/ML專案中實現類似的結果。
TL;DR。適用於 AI/ML 的頂級開源平台工程工具
以下是我推薦的平台工程工具的快速列表,用於簡化 AI / ML 工作流程並降低基礎設施複雜性:
KitOps:所有 AI/ML 專案資產的集中版本控制。
Kubeflow: Kubernetes 上簡化的 ML 工作流程管理。
DVC(資料版本控制):透過追蹤資料集、程式碼和實驗確保可重複性。
Seldon Core:用於部署和監控 ML 模型的 Kubernetes 原生工具。
BentoML:簡化模型打包和部署到生產。
Apache Airflow:自動化、監控和安排 ML 管道。
Prometheus:即時基礎架構和 ML 部署監控。
Comet:追蹤 ML 實驗並提供有關模型性能的見解。
MLflow:管理生命週期,包括追蹤、部署和模型版本控制。
Feast:用於即時管理 ML 特徵資料的集中式特徵儲存。
KitOps透過可重複使用的元件、集中版本控制和安全的 ModelKit 打包簡化了 ML 工作流程。它與 Docker、Terraform 和 Kubernetes 等工具無縫集成,以實現自動化部署並加速開發週期。 KitOps 也簡化了 Jupyter Notebooks 從開發到生產的過渡,如下圖所示。
此外,KitOps 還為工程師提供集中的、防篡改的記錄,以提高透明度。它還提供了一個安全、可立即使用的包,稱為ModelKit,用於打包、版本控制和追蹤專案的元件——程式碼、資料集、模型和元資料(如下圖所示)。
Kubeflow是一個 Kubernetes 原生的開源平台,可簡化 Kubernetes 上的 ML 工作流程管理。它可以處理容器化的複雜性,並支援端到端管道自動化和大資料集的分散式訓練,使其成為生產級 ML 系統的理想選擇。
Kubeflow 具有實驗追蹤和模型版本管理功能,可確保本地、雲端和混合基礎架構中的 ML 團隊之間的可重複性、一致性和協作。
資料版本控制是針對 ML 工作流量身定制的強大版本控制工具。它透過追蹤和共享資料、管道、實驗和模型來確保可重複性。憑藉其類似 Git 的介面,它可以與現有的 Git 儲存庫無縫整合。它支援各種雲端存儲,如 AWS S3 和 Azure Blob,從而無需膨脹 Git 儲存庫即可對大型資料集進行版本控制。
DVC 還與 CI/CD 管道集成,從而可以輕鬆在整個 ML 生命週期中實現自動化測試和模型部署。
Seldon Core解決了 Kubernetes 的複雜性,超過40% 的工程師在最近的雲端原生運算基金會 (CNCF) 調查中報告了這個問題,它使 ML 工程師無需 Kubernetes 專業知識即可大規模部署模型。它支援從 A/B 測試、金絲雀發布和請求日誌記錄到異常值檢測和多臂老虎機的高級部署策略,使其成為優化工作流程和確保部署靈活性的理想選擇。
除了部署功能外,Seldon Core 還提供強大的監控工具來追蹤生產中的模型效能。
BentoML是一個平台工程工具,旨在大規模部署機器學習模型,並使用任何開源或自訂微調模型建構生產級 AI 系統。它透過利用標準化框架建立名為 Bento 的便攜式捆綁包來實現這一點,該捆綁包將模型、依賴項和配置封裝在一個地方。這種方法簡化了模型管理,實現跨環境的無縫部署和集成,同時確保建置時的一致性。
在使用 Python 排程、編寫和監控 ML 工作流程時, Apache Airflow提供了簡單的功能。該工具的最大優點是它與您正在執行的任何系統或進程相容。這也消除了人工幹預並提高了團隊的工作效率,符合平台工程工具的原則。
除了排程和管理工作流程之外,Apache Airflow 還支援多種工具和服務,從而擴展了平台的客製化功能。此功能進一步允許團隊有效管理 ML 基礎設施。
Prometheus處理與警報和監控指標相關的所有事務。作為一個開源監控平台工具,它允許人工智慧開發人員和機器學習工程師深入了解他們的基礎設施,建立自訂儀表板,並即時監控他們的機器學習工作流程。
它還支援高級圖形功能,並與 Grafana 等視覺化工具整合來解釋和視覺化資料。 Prometheus 強大的查詢語言支援對時間序列資料進行切片、切塊和操作,並可整合來自 Docker 和 JMX 等來源的第三方指標。
Comet是一個端到端的 ML 平台,旨在評估大型語言模型 (LLM)、追蹤實驗和監控生產中的模型。它支援自託管和基於雲端的設置,允許開發人員即時記錄指標、輸出和超參數。 Comet 憑藉強大的儀表板和視覺化工具,讓團隊以視覺化的方式呈現見解,從而更容易分析和理解模型效能。
由於 Comet 與生態系統中的各種工具集成,因此它具有適應性。這種多功能性可協助開發人員簡化工作流程、最佳化 AI/ML 流程並在整個模型生命週期內保持效率。
MLflow為開發人員提供了管理整個 ML 生命週期的全面工具。它的四個主要元件——追蹤、模型、專案和模型註冊表——促進高效、可重複和可擴展的 ML 管道建置。
每個元件都具有各種特性(如下所列),以減輕 ML 生命週期的複雜性。
追蹤使開發人員能夠記錄和比較參數、結果和指標。
模型處理、管理和部署模型。
專案包程式碼用於 ML 專案以實現可重複性。
此註冊表允許開發人員集中模型儲存以進行生命週期追蹤和版本控制。
與其他工具不同,Feast 解決了一個不同的問題:ML 特徵資料的管理。 Feast透過儲存和管理用於產生機器學習特徵的程式碼來簡化特徵管理,並促進這些特徵部署到生產中。通常,它與您的資料來源整合以簡化管理。
當您的 ML 模型需要頻繁重新訓練以部署應用程式時,此工具尤其重要。
開始使用平台工程工具的最佳時間是昨天;第二最佳時機就是現在。忽略使用平台工程工具可能會阻礙您快速建置並降低您的團隊和開發人員的工作效率。值得慶幸的是,此列表顯示有許多開源平台工程工具可供您使用。
無論您是建立可擴展的管道、追蹤實驗還是將模型部署到生產中, KitOps都可以解決 ML 專案和模型開發的複雜性,同時保持您的工作流程高效、用戶友好且強大。
如果您讀到這裡,就已經成功了一半。加入我們的Discord與其他 ML 和平台工程師聯繫,或立即探索我們的入門指南,開啟您的旅程。此列表是否有幫助?如果是的話,請與您的網路中的人們分享!
原文出處:https://dev.to/kitops/10-must-know-open-source-platform-engineering-tools-for-aiml-workflows-2i77