日本熟妇hd丰满老熟妇,中文字幕一区二区三区在线不卡 ,亚洲成片在线观看,免费女同在线一区二区

配置MLflow模型倉庫

MLflow是一個開源的機器學習生命周期管理平臺,可以用來追蹤模型訓練信息、管理和部署機器學習模型。本文介紹如何為模型管理功能配置MLflow模型倉庫。

MLflow模型倉庫介紹

關于MLflow模型倉庫功能的詳細介紹,請參見MLflow Model Registry — MLflow documentation

前提條件

  • 已創建ACK Pro集群且Kubernetes版本不低于1.20。具體操作,請參見創建ACK Pro版集群

  • 已創建RDS PostgreSQL實例。具體操作,請參見創建RDS PostgreSQL實例

    建議創建RDS PostgreSQL實例時優先選擇ACK集群所在的VPC并將VPC所在的網段加入白名單,這樣可以使用內網地址訪問數據庫。如果RDS實例和ACK集群位于不同的VPC內,請確保RDS開啟了公網訪問,并將ACK集群的VPC網段加入白名單中。具體操作,請參見設置白名單

  • 在RDS PostgreSQL實例中創建一個名為mlflow的普通賬號。具體操作,請參見創建賬號

  • 在RDS PostgreSQL實例創建一個名為mlflow_store的數據庫用于存儲模型元數據,并將其授權賬號設置為mlflow賬號。具體操作,請參見創建數據庫

  • (可選)在RDS PostgreSQL實例創建一個名為mlflow_basic_auth的數據庫用于存儲MLflow用戶認證信息,并將其授權賬號設置為mlflow賬號。具體操作,請參見創建數據庫

  • 已配置Arena客戶端用于進行模型管理,Arena版本需為0.9.14及以上版本。具體操作,請參見配置Arena客戶端

步驟一:在ACK集群中部署MLflow

  1. 登錄容器服務管理控制臺,在左側導航欄選擇集群

  2. 集群列表頁面,單擊目標集群名稱,然后在左側導航欄,選擇應用 > Helm

  3. 單擊創建,然后在創建頁面,將應用名設置為mlflow命名空間設置為kube-ai,在Chart區域的搜索欄搜索并選中mlflow,完成后單擊下一步,在彈出的對話框中,確認是否采用mlflow為Chart的默認的命名空間。

    • 如果需要通過AI套件開發控制臺進行模型管理,需要將mlflow部署在kube-ai命名空間中,發布名稱需保持為默認值mlflow

    • 如果需要通過Arena進行模型管理,可以將Mlflow部署在任意命名空間中,但是發布名稱需保持為默認值mlflow

  4. 創建頁面,配置Chart的參數。

    1. 配置defaultArtifactRootbackendStore參數,配置示例如下所示。

      trackingServer:
        # -- Specifies which mode mlflow tracking server run with, available options are `serve-artifacts`, `no-serve-artifacts` and `artifacts-only`
        mode: no-serve-artifacts
        # -- Specifies a default artifact location for logging, data will be logged to `mlflow-artifacts/:` if artifact serving is enabled, otherwise `./mlruns`
        defaultArtifactRoot: "./mlruns"
        
      # For more information about how to configure backend store, please visit https://mlflow.org/docs/latest/tracking/backend-stores.html
      backendStore:
        # -- Backend store uri e.g. `<dialect>+<driver>://<username>:<password>@<host>:<port>/<database>`
        backendStoreUri: postgresql+psycopg2://mlflow:<password>@pgm-xxxxxxxxxxxxxx.pg.rds.aliyuncs.com/mlflow_store

      其中,backendStore.backendStoreUri請替換成前提條件中創建的mlflow_store數據庫訪問地址,例如postgresql+psycopg2://mlflow:<password>@pgm-xxxxxxxxxxxxxx.pg.rds.aliyuncs.com/mlflow_store

      重要

      如果RDS實例和ACK集群位于同一VPC中,請使用RDS內網連接地址,否則請使用RDS外網地址,并確保ACK集群能夠訪問。

      登錄RDS PostgreSQL控制臺,依次單擊實例ID > 數據庫連接 > 內/外網地址,獲取pgm-xxxxxxxxxxxxxx.pg.rds.aliyuncs.com數據庫地址。

      更多信息,請參見連接數據庫

    2. (可選)如需開啟BasicAuth,請配置如下參數。

      trackingServer:
        # -- Specifies which mode mlflow tracking server run with, available options are `serve-artifacts`, `no-serve-artifacts` and `artifacts-only`
        mode: no-serve-artifacts
        # -- Specifies a default artifact location for logging, data will be logged to `mlflow-artifacts/:` if artifact serving is enabled, otherwise `./mlruns`
        defaultArtifactRoot: "./mlruns"
        
        # Basic authentication configuration,
        # for more information, please visit https://mlflow.org/docs/latest/auth/index.html#configuration
        basicAuth:
          # -- Specifies whether to enable basic authentication
          enabled: true
          # -- Default permission on all resources, available options are `READ`, `EDIT`, `MANAGE` and `NO_PERMISSIONS`
          defaultPermission: NO_PERMISSIONS
          # -- Database location to store permissions and user data e.g. `<dialect>+<driver>://<username>:<password>@<host>:<port>/<database>`
          databaseUri: postgresql+psycopg2://<username>:<password>@pgm-xxxxxxxxxxxxxx.pg.rds.aliyuncs.com/mlflow_basic_auth
          # -- Default admin username if the admin is not already created
          adminUsername: admin
          # -- Default admin password if the admin is not already created
          adminPassword: password
          # -- Function to authenticate requests
          authorizationFunction: mlflow.server.auth:authenticate_request_basic_auth
          
      # For more information about how to configure backend store, please visit https://mlflow.org/docs/latest/tracking/backend-stores.html
      backendStore:
        # -- Backend store uri e.g. `<dialect>+<driver>://<username>:<password>@<host>:<port>/<database>`
        backendStoreUri: postgresql+psycopg2://mlflow:<password>@pgm-xxxxxxxxxxxxxx.pg.rds.aliyuncs.com/mlflow_store
      • 替換trackingServer.basicAuth.databaseUri為前提條件中創建的mlflow_basic_auth數據庫的訪問地址,例如postgresql+psycopg2://<username>:<password>@pgm-xxxxxxxxxxxxxx.pg.rds.aliyuncs.com/mlflow_basic_auth

      • 修改trackingServer.basicAuth.adminUsernametrackingServer.basicAuth.adminPassword參數來配置MLflow管理員的用戶名和初始密碼(僅在管理員用戶還未創建時才會新建管理員用戶)。

    關于MLflow完整的參數配置,請參見MLflow

步驟二:訪問部署在Kubernetes上的MLflow Web UI

  1. 執行以下命令,將MLflow Web UI服務轉發到本地的5000端口。

    kubectl port-forward -n kube-ai services/mlflow 5000

    預期輸出:

    Forwarding from 127.0.0.1:5000 -> 5000
    Forwarding from [::1]:5000 -> 5000
    Handling connection for 5000
    Handling connection for 5000
    ...
  2. 從瀏覽器訪問http://127.0.0.1:5000查看MLflow Web UI。

    image

后續操作:模型管理

云原生AI套件支持對MLflow模型倉庫中的模型進行管理,關于如何使用云原生AI套件開發控制臺和Arena命令行工具進行模型管理,請參見對MLflow模型倉庫中的模型進行管理