首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >gcloud ml-引擎本地预测RuntimeError:.pyc文件中的坏幻数

gcloud ml-引擎本地预测RuntimeError:.pyc文件中的坏幻数
EN

Stack Overflow用户
提问于 2018-02-16 10:09:45
回答 6查看 2.5K关注 0票数 12

我的目标是在google引擎上做出预测。

我在谷歌指令之后的Linuxubuntu16.04LT上安装了gcloud。我已经有了一个机器学习训练的模型。我使用python版本anacondapython3.5。

我跑:

代码语言:javascript
运行
复制
gcloud ml-engine local predict --model-dir={MY_MODEL_DIR} --json-instances={MY_INPUT_JSON_INSTANCE}

我收到消息:错误:

(gCloud.ml-Engin.local.预测性) RuntimeError:.pyc文件中的坏幻数

下面是所有的堆栈跟踪:

代码语言:javascript
运行
复制
DEBUG: (gcloud.ml-engine.local.predict) RuntimeError: Bad magic number in .pyc file
Traceback (most recent call last):
  File "/usr/lib/google-cloud-sdk/lib/googlecloudsdk/calliope/cli.py", line 797, in Execute
    resources = calliope_command.Run(cli=self, args=args)
  File "/usr/lib/google-cloud-sdk/lib/googlecloudsdk/calliope/backend.py", line 757, in Run
    resources = command_instance.Run(args)
  File "/usr/lib/google-cloud-sdk/lib/surface/ml_engine/local/predict.py", line 65, in Run
    args.text_instances)
  File "/usr/lib/google-cloud-sdk/lib/googlecloudsdk/command_lib/ml_engine/local_utils.py", line 89, in RunPredict
    raise LocalPredictRuntimeError(err)
LocalPredictRuntimeError: RuntimeError: Bad magic number in .pyc file
ERROR: (gcloud.ml-engine.local.predict) RuntimeError: Bad magic number in .pyc file
Evaluation ended**
EN

回答 6

Stack Overflow用户

回答已采纳

发布于 2018-02-16 10:24:56

事实上,我自己发这个问题是为了帮助那些有同样问题的人,因为我找不到一个简单明了的答案。

还有其他的解决办法,在我看来甚至比我的更好,但这才是我的解决办法。

我的解决方案是google不适用于python 3,至少在我的配置中是这样。解决:

  1. 用python2安装anaconda虚拟环境(在我的例子中是2.7.14)
  2. 激活环境
  3. 再次执行gcloud命令,

如果您的导出ml模型和输入没有问题,那就可以了。

简单的问题,但给我带来了很大的痛苦,仅仅是因为我很难找到这个预先要求,或者我只是错过了它。

我希望能帮上忙。

票数 7
EN

Stack Overflow用户

发布于 2018-05-04 16:24:56

实际上,它适用于python3,您只需要删除google文件夹中的pyc文件,这样预测调用就可以用python3编译它们。

为了知道pyc文件的位置,我在预测调用中启用了标志--详细调试

代码语言:javascript
运行
复制
gcloud ml-engine local predict --model-dir=${MODEL_LOCATION} --json-instances=data/new-data2.json --verbosity debug

trackback将为您提供关于gcloud ml引擎文件的路径的信息,在我的机器中是:

代码语言:javascript
运行
复制
/usr/local/Caskroom/google-cloud-sdk/latest/google-cloud-sdk/lib/googlecloudsdk/command_lib/ml_engine/

转到该目录并删除pyc文件。

票数 21
EN

Stack Overflow用户

发布于 2019-07-18 04:08:21

查找并删除google中的所有pyc文件。它们是用错误的python环境编译的。它们将在下一个需要时自动重新编译。

代码语言:javascript
运行
复制
%%bash
find "/tools/google-cloud-sdk/lib/" -name '*.pyc' -delete
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/48824381

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档