Azure ML v2中AutoML生成模型的score.py位置及自定义部署方案
Azure ML v2 AutoML模型自定义评分文件部署方案
一、AutoML生成的score.py获取方式
AutoML在v2中不会像v1那样直接展示score.py,但可以通过两种路径获取基础版本:
- 从部署容器中提取:
- 进入Azure ML studio的目标实时端点部署详情页
- 切换到日志标签,搜索
score.py,找到它在容器内的路径(通常是/var/azureml-app/score.py) - 通过Azure ML CLI或SDK连接到部署容器,执行
docker cp <容器ID>:/var/azureml-app/score.py ./将文件复制到本地
- 从训练作业资产提取:
找到AutoML训练作业的输出+日志页面,下载名为model的资产包,解压后内部包含自动生成的评分逻辑文件
二、自定义评分文件重新部署步骤
- 编写自定义score.py
参考AutoML生成的基础逻辑,修改run函数以返回predict_proba结果,示例代码:import json import joblib import numpy as np def init(): global model model_path = "model.pkl" model = joblib.load(model_path) def run(raw_data): try: data = json.loads(raw_data)["data"] np_data = np.array(data) # 替换为predict_proba获取分类概率 result = model.predict_proba(np_data) return json.dumps({"probabilities": result.tolist()}) except Exception as e: return json.dumps({"error": str(e)}) - 配置部署文件
创建deployment.yml配置文件,指定自定义代码路径、模型和环境:$schema: https://azuremlschemas.azureedge.net/latest/managedOnlineDeployment.schema.json name: custom-proba-deployment endpoint_name: your-endpoint-name model: azureml:<your-automl-model-name>:<version> code_configuration: code: ./custom-code/ # 存放自定义score.py的目录 scoring_script: score.py environment: azureml:<your-automl-environment-name>:<version> instance_type: Standard_DS3_v2 instance_count: 1 - 执行部署命令
运行CLI命令完成部署:az ml online-deployment create --file deployment.yml --resource-group <资源组名> --workspace-name <工作区名>
内容的提问来源于stack exchange,提问作者Mauro Minella
相关产品推荐
相关产品推荐

