QGate-Sln-MLRun
解 MLRun(和 Iguazio)的質量門。該專案的主要目標是:
- 獨立品質測試(功能、整合、效能、漏洞、驗收…測試)
- 在公司環境中全面部署/使用之前進行更深入的品質檢查
- 識別可能的相容性問題(如果有)
- 外部和獨立測試覆蓋範圍
- 社區支持
- ETC。
測試使用這些關鍵元件,MLRun 解決方案請參閱GIT mlrun ,範例元資料模型請參閱GIT qgate-model和此專案。
測試場景
質量門涵蓋了這些測試場景(✅ 已完成、✔ 正在進行、已計劃):
- 01 - 項目
- 02 - 功能集
- ✅ TS201:建立功能集
- ✅ TS202:建立功能集並從 DataFrame 來源攝取(一步)
- ✅ TS203:建立功能集並從 CSV 來源擷取(一步)
- ✅ TS204:建立功能集並從 Parquet 來源攝取(一步)
- ✅ TS205:建立功能集並從 SQL 來源擷取(一步)
- ✔ TS206:建立功能集並從 Kafka 來源攝取(一步)
- ✔ TS207:建立功能集並從 HTTP 來源攝取(一步)
- 03 - 攝取數據
- ✅ TS301:攝取資料(預覽模式)
- ✅ TS302:從 DataFrame 來源將資料攝取到功能集
- ✅ TS303:從 CSV 來源將資料提取到功能集
- ✅ TS304:從 Parquet 來源將資料攝取到功能集
- ✅ TS305:從 SQL 來源將資料提取到功能集
- ✔ TS306:從 Kafka 來源將資料提取到功能集
- ✔ TS307:從 HTTP 來源將資料提取到功能集
- 04 - 攝取資料和管道
- ✅ TS401:攝取資料和管道(預覽模式)
- ✅ TS402:從 DataFrame 來源將資料和管道攝取到功能集
- ✅ TS403:從 CSV 來源擷取資料和管道到功能集
- ✅ TS404:從 Parquet 來源擷取資料和管道到功能集
- ✅ TS405:從 SQL 來源擷取資料和管道到功能集
- ✔ TS406:從 Kafka 來源將資料和管道攝取到功能集
- TS407:從 HTTP 來源提取資料和管道到功能集
- 05 - 特徵向量
- 06 - 從向量取得數據
- ✅ TS601:從離線特徵向量取得數據
- ✅ TS602:從線上特徵向量取得數據
- 07 - 管道
- ✅ TS701:簡單管道
- ✅ TS702:複雜的管道
- ✅ TS703:管道複雜,大量操作
- 08 - 建構模型
- ✅ TS801:建構 CART 模型
- TS802:建構 XGBoost 模型
- TS803:建構 DNN 模型
- 09 - 服務模型
- ✅ TS901:CART 發球得分
- TS902:XGBoost 的發球得分
- TS903:DNN 的發球得分
- 10 - 模型監控/漂移
- 11 - 效能測試
- TS1101:簡單管道
- TS1102:複雜管道
- TS11xx:待定。
注意:每個測試場景都包含附加的特定測試案例(例如,具有不同的功能集目標等)。
測試輸入/輸出
質量門測試這些輸入/輸出(✅ 已完成、✔ 正在進行、已規劃):
- 產出(目標)
- ✅ RedisTarget,✅ SQLTarget/MySQL,✔ SQLTarget/Postgres,✅ KafkaTarget
- ✅ ParquetTarget,✅ CSVTarget
- ✅ 檔案系統、S3、BlobStorage
- 輸入(來源)
- ✅ Pandas/DataFrame、✅ SQLSource/MySQL、SQLSource/Postgres、KafkaSource
- ✅ ParquetSource,✅ CSVSource
- ✅ 檔案系統、S3、BlobStorage
MLRun 目前支援的來源/目標。
輸出樣本
PART 報告的原始形式,請參閱:
- 全部完成 - HTML、TXT
- 有錯誤 - HTML、TXT
用法
您可以透過四個步驟輕鬆使用此解決方案:
- 將這兩個GIT儲存庫的內容下載到本機環境
- 從 qgate-model 更新檔案
qgate-sln-mlrun.env
- 更新 MLRun/Iguazio 的變量,請參閱
MLRUN_DBPATH
、 V3IO_USERNAME
、 V3IO_ACCESS_KEY
、 V3IO_API
- 僅在安裝 Iguazio 時才需要設定
V3IO_*
(不適用於純免費 MLRun)
- 更新QGate的變量,請參閱
QGATE_*
(基本描述直接在*.env中)
- 從
qgate-sln-mlrun
運行 - 查看輸出(位置基於配置中的
QGATE_OUTPUT
)- './output/qgt-mlrun-.html'
- './output/qgt-mlrun-.txt'
前提:您有可用的 MLRun 或 Iguazio 解決方案(MLRun 是其中的一部分),請參閱官方安裝步驟,或直接安裝 Desktop Docker。
測試用
此專案使用以下 MLRun 版本進行了測試(請參閱更改日誌):
- MLRun (在 Kubernetes 或桌面 Docker 中)
- MLRun 1.8.0(計畫 2025 年第一季)
- ✔ MLRun 1.7.0(?1.7.1?)
- ✅ MLRun 1.6.4、1.6.3、1.6.2、1.6.1、1.6.0
- ✅ MLRun 1.5.2、1.5.1、1.5.0
- ✅ MLRun 1.4.1
- ✅ MLRun 1.3.0
- Iguazio (k8s、本地、VMware 上的虛擬機器)
- ✅ 伊瓜齊奧 3.5.3(含 MLRun 1.4.1)
- ✅ 伊瓜齊奧 3.5.1(含 MLRun 1.3.0)
注意:目前狀態,僅測試最新的 MLRun/Iguazio 版本(向後相容性基於 MLRun/Iguazio,請參閱)。
其他的
- To-Do ,預期/未來改進的列表,請參閱
- Applied Limits ,應用限制/問題列表,請參閱
- 如何測試該解決方案? ,你必須注意Linux環境。或使用 WSL2 的 Windows(請參閱逐步教學)
- MLRun/Iguazio ,簡而言之,關鍵變化(客戶視圖),請參閱
- MLRun 本地安裝,請參閱 hack