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

Azure AutoML Notebook导入mltable触发ImportError问题求助

解决Azure AutoML Notebook中mltable导入的ImportError问题

问题背景

在Azure AutoML Notebook(Spark 3.2 + Python 3.8环境)中,已执行以下命令安装依赖:

%pip install -U mltable azureml-dataprep[pandas]

且已预装azure-ai-ml包,但执行import mltable时触发如下ImportError:

---------------------------------------------------------------------------
ImportError                               Traceback (most recent call last)
/tmp/ipykernel_23522/3630867241.py in <module>
     16 from azure.ai.ml.entities import AmlCompute
     17 
---> 18 import mltable
     19 import os

/nfs4/pyenv-da563906-c8c8-4c39-89f1-22def948bc6a/lib/python3.8/site-packages/mltable/__init__.py in <module>
      9 any Python environment, including Jupyter Notebooks or your favorite Python IDE.
     10 """
---> 11 from .mltable import MLTable, load, from_delimited_files, from_parquet_files, from_json_lines_files, from_paths, \
     12     from_delta_lake, DataType, MLTableFileEncoding, MLTableHeaders
     13 

/nfs4/pyenv-da563906-c8c8-4c39-89f1-22def948bc6a/lib/python3.8/site-packages/mltable/mltable.py in <module>
     20 from azureml.dataprep.api._constants import ACTIVITY_INFO_KEY, ERROR_CODE_KEY, \
     21     COMPLIANT_MESSAGE_KEY, OUTER_ERROR_CODE_KEY
---> 22 from azureml.dataprep.api._dataframereader import get_dataframe_reader, to_pyrecords_with_preppy, \
     23     _execute
     24 from azureml.dataprep.api.mltable._mltable_helper import _download_mltable_yaml, _parse_path_format, _PathType, 

ImportError: cannot import name 'to_pyrecords_with_preppy' from 'azureml.dataprep.api._dataframereader' (/home/trusted-service-user/cluster-env/env/lib/python3.8/site-packages/azureml/dataprep/api/_dataframereader.py)

问题原因

这是mltable与azureml-dataprep版本不兼容导致的:新版mltable依赖azureml.dataprep中的to_pyrecords_with_preppy方法,但集群预装的azureml-dataprep版本过低,没有这个方法。

修复步骤

  1. 卸载现有冲突包
%pip uninstall -y mltable azureml-dataprep
  1. 指定兼容版本重新安装(适配Python 3.8/Spark 3.2环境)
%pip install mltable==1.3.0 azureml-dataprep==4.12.0 azureml-dataprep[pandas]==4.12.0
  1. 重启Notebook内核,再执行import mltable验证。

额外注意事项

  • Azure AutoML Spark集群会预装部分依赖,手动升级时容易出现版本冲突,建议优先使用集群兼容的包版本。
  • 如果仍有问题,可通过pip show azureml-dataprep和pip show mltable命令确认版本匹配情况。

内容的提问来源于stack exchange,提问作者Syed Shaharyaar Hussain

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.09 09:55:25