跳转到主要内容

Azure机器学习模型监控SDK V2

项目描述

Azure机器学习模型监控SDK

azure-ai-mlmonitoring软件包提供SDK以启用模型数据收集器(MDC)的自定义日志记录,允许客户在其数据预处理管道中的任意点收集数据。客户可以利用SDK在score.py中记录数据,在数据转换之前、期间和之后将其记录到所需的接收器。

score.py中首先导入azure-ai-mlmonitoring包。

import pandas as pd
import json
from azure.ai.mlmonitoring import Collector

def init():
  global inputs_collector, outputs_collector

  # instantiate collectors with appropriate names, make sure align with deployment spec
  inputs_collector = Collector(name='model_inputs')                    
  outputs_collector = Collector(name='model_outputs')

def run(data): 
  # convert json to python object and convert to pandas Dataframe
  input_df = pd.DataFrame(json.loads(data))

  # collect inputs data, store correlation_context
  context = inputs_collector.collect(input_df) 

  # perform scoring with pandas Dataframe, return value is also pandas Dataframe
  output_df = predict(input_df) 

  # collect outputs data, pass in correlation_context so inputs and outputs data can be correlated later
  outputs_collector.collect(output_df, context)
  
  return output_df.to_dict()
  
def predict(input_df):
  # process input and return with outputs
  ...
  
  return output_df

使用基本镜像mcr.microsoft.com/azureml/openmpi4.1.0-ubuntu20.04和conda依赖项创建环境,然后构建环境。

channels:
  - conda-forge
dependencies:
  - python=3.8
  - numpy=1.23.5
  - pandas=1.5.2
  - pip=22.3.1
  - pip:
      - azureml-defaults==1.38.0
      - requests==2.28.1
      - azure-ai-mlmonitoring
name: model-env

创建启用自定义日志记录的部署(已启用model_inputs和model_outputs)以及您刚刚构建的环境,请根据您的场景更新yaml。

#source ../configs/model-data-collector/data-storage-basic-OnlineDeployment.YAML
$schema: http://azureml/sdk-2-0/OnlineDeployment.json

endpoint_name: my_endpoint #unchanged
name: blue #unchanged
model: azureml:my-model-m1:1 #azureml:models/<name>:<version> #unchanged
environment: azureml:custom-logging-env:1 #unchanged
data_collector:
  collections:
    model_inputs:
      enabled: true
    model_outputs:
      enabled: true

变更日志

v0.1.0a3 (2023.2.13)

改进

  • 精炼README.md。
  • 重构代码。
  • 当收集到的数据不是Pandas Dataframe时记录错误消息。

v0.1.0a2 (2023.1.16)

改进

  • 精炼README.md。

版本 0.1.0a1 (2023.1.4)

新特性

  • 支持收集 pandas DataFrame 的模型数据。

项目详情


下载文件

下载您平台对应的文件。如果您不确定选择哪个,请了解更多关于 安装包 的信息。

源代码分发

本版本没有可用的源代码分发文件。请参阅 生成分发存档的教程

构建分发

azure_ai_mlmonitoring-0.1.0a3-py3-none-any.whl (17.1 kB 查看哈希值)

上传时间 Python 3