我对Azure机器学习SDK有问题:“模块'azureml‘没有属性’core‘”.
由于不属于我自己的原因,我不得不使用azureml将机器学习(我自己的东西,用R编写)应用于存储在blob存储中的数据仓库中的数据。建模的输出应该返回到blob存储中,这样就可以从数据仓库访问它。我在本地机器(存储在git中)上用R编写了代码。最好是找到一些方法,将我的代码从git中提取到azureml环境中的管道中,以便在blob存储中有新数据时直接运行它。
我已经开始了一个教程狂潮,并发现了这个看似相关的演练:使用Azure ML培训和部署您的第一个模型 (和这一个)。
但是..。在尝试了我所能想到的一切之后,我被困在了第一步。在安装完所有(或至少..。包、模块、应用程序等,并在RStudio中运行以下代码:
library(azuremlsdk)
existing_ws <- get_workspace(name = name,
subscription_id = subscription_id,
resource_group)我遇到了一个无法修复的错误:
AttributeError:模块'azureml‘没有属性'core’
看起来,azuerml应该有一个属性"core",但是当更仔细地观察它时,确实没有这样的属性。函数"get_workspace()“试图访问:"azureml$core$Workspace$get”。我发现"azuerML$Workspace“确实存在,但是我想不出如何让它工作。
有人能解释我为什么会遇到这个错误吗?有谁知道如何连接我的R代码(azureml的云服务)的更好的教程吗?
任何正确方向的指针都是非常感谢的!
编辑--仍然没有解决:经过别人的建议,我双倍、三倍和四倍地检查了安装。
我更新了R,现在我正在运行:
R.version x86_64-w64-mingw32 32平台 arch x86_64 os mingw32 系统x86_64,mingw32 状态 专业3 未成年人6.2 2019年 第12个月 第12天 svn rev 77560 语言R version.string R版本3.6.2 (2019-12-12)绰号“黑暗与风暴之夜”
我用Python3.6.10安装了康达。我安装了azuremlsdk R包 (我尝试了两个提供的选项)。然后,我意识到与azure-模块的版本有一些不一致之处,所以我还尝试用关键字‘multi’安装它:
remotes::install_cran('azuremlsdk', repos = 'http://cran.us.r-project.org', INSTALL_opts=c("--no-multiarch"))然后,我安装了。我再次查看了所有版本(使用python冻结):
azure-公共=1.1.24 azure-graphrbac==0.61.1 azure-mgmt-授权=0.60.0 azure-mgmt-容器注册表=2.8.0 azure-mgmt-密钥库=2.0.0 azure-mgmt-resource=7.0.0 azure-mgmt-存储=7.1.0 azureml==0.2.7 =1.0.83.1 azureml-core=1.0.69 azureml-dataprep=1.1.36 原生=13.2.0 azureml-管道=1.0.69 azureml-管道-核心=1.0.69 azureml-管道-步骤=1.0.69 azureml=1.0.69 azureml-遥测=1.0.69 azureml-列=1.0.69 azureml-列车-自动-客户=1.0.83 azureml-列车-核心=1.0.69 azureml-列车-train客户端-超级驱动器=1.0.69
当我惊讶地看到所有的1.0.69版本,而不是1.0.83版本时,我使用以下方法重新安装azureml python:
azuremlsdk::install_azureml(version = "1.0.83")这是可行的,因为实际上所有版本现在都是1.0.83:
azure-公共=1.1.24 azure-graphrbac==0.61.1 azure-mgmt-授权=0.60.0 azure-mgmt-容器注册表=2.8.0 azure-mgmt-密钥库=2.0.0 azure-mgmt-resource=7.0.0 azure-mgmt-存储=7.1.0 azureml==0.2.7 =1.0.83.1 azureml-core=1.0.83 azureml-dataprep=1.1.36 原生=13.2.0 azureml-管道=1.0.83 azureml-管道-核心=1.0.83 azureml-管道-步骤=1.0.83 azureml=1.0.83 azureml-遥测=1.0.83 azureml-列=1.0.83 azureml-列车-自动-客户=1.0.83 azureml-列车-核心=1.0.83 azureml-列车-train客户端-超级驱动器=1.0.83
但还是..。我得到了丢失的核心的错误。我跑步的时候都明白了:
library(azuremlsdk)
get_current_run()在跑步时:
library(azuremlsdk)
existing_ws <- get_workspace(name = name,
subscription_id = subscription_id,
resource_group)请注意,在启动RStudio后第一次运行此代码时,我会得到以下错误:
Py_get_attr_impl中的错误(x,name,静默):AttributeError:模块'azureml‘没有属性'_base_sdk_common’
每次之后我都会犯这样的错误:
Py_get_attr_impl中的错误(x,name,静默):AttributeError:模块'azureml‘没有属性'core’
任何帮助都将不胜感激!
发布于 2020-01-27 19:06:46
这个问题是由最新的网络1.14版本引入的,在这个版本中,网络将创建默认的r-reticulate conda环境。因为Azure是在一个名为r-azureml的环境中安装python,所以由r-reticulate使用的网络环境缺少了python。针对此问题的修复已在按下中解决,并已合并到主服务器中。现在请从GitHub安装,如果您有网络版本1.14并且正在遇到这个问题。我们将在短期内向CRAN发布更新。
发布于 2020-01-17 11:16:54
通过专门安装和azureml.core,我似乎解决了这个问题:
python -m pip install azureml
然后..。
python -m pip install azureml.core
我这样做是因为Conda版本被R(r-网状)所调用。不使用Conda环境“r-azureml”而没有R切换回“r-网状”有点奇怪,但是啊.至少我没有得到我的'azureml‘没有属性’核心‘了。
https://stackoverflow.com/questions/59683283
复制相似问题