You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何加载Azure ML导出的.pkl模型在本地预测,需用到所有导出文件吗?

Azure ML本地加载模型预测操作指南

三个下载文件的作用

你从Azure ML下载的三个文件分别对应不同用途,不需要全部使用,但全用可以避免绝大多数兼容问题:

  • *.pkl 模型文件:核心必备文件,存储了序列化后的完整模型结构与权重,单独使用它也可以完成预测
  • conda.yaml 依赖配置文件:记录了模型训练时的Python版本、各依赖库的精确版本号,用来解决本地环境与训练环境版本不兼容的问题
  • 推理脚本(一般命名为score.py):Azure ML自动生成的标准推理模板,内置了模型加载、数据预处理、预测后处理的完整逻辑,不需要你自行复现训练时的处理流程

方式1:仅使用.pkl文件(适合熟悉训练全流程的用户)

仅用模型文件的前提是你明确知道训练时的依赖版本、输入数据格式、预处理/后处理逻辑,操作步骤如下:

  1. 本地安装和训练环境版本一致的机器学习框架(比如Scikit-learn、PyTorch等)
  2. 用对应序列化工具加载模型,示例代码如下:
import pickle
# 替换为你的pkl文件名
with open("model.pkl", "rb") as f:
    model = pickle.load(f)
  1. 按照训练时的逻辑处理待预测数据,直接调用模型预测方法即可:
# input_data为按照训练要求预处理后的输入数据
pred_result = model.predict(input_data)

注意:该方式容易出现依赖版本不兼容、预处理逻辑不一致导致预测结果偏差的问题,非熟悉场景不推荐使用


方式2:使用全部三个文件(最稳妥的通用方案)

这是最推荐的操作方式,不需要你了解模型的训练细节即可拿到正确结果:

  1. 先配置运行环境:
    • 本地安装Anaconda/Miniconda环境管理工具
    • 终端进入三个文件所在的文件夹,执行命令创建对应环境:conda env create -f conda.yaml
    • 执行命令激活创建好的环境:conda activate <yaml中第一行name字段对应的环境名>
  2. 调用自带的推理逻辑完成预测:
    自动生成的score.py已经内置了init()(初始化加载模型)和run(input_data)(执行预测)两个函数,你可以直接调用,示例代码如下:
from score import init, run

# 加载模型
init()
# 替换为你的待预测数据,格式要求可以参考score.py里的run函数注释
test_data = {"data": [你的待预测样本]}
pred_result = run(test_data)
print(pred_result)

内容的提问来源于stack exchange,提问作者Crazy

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.25 07:06:04