gpt4 book ai didi

python - 无法在 ML Engine 中导入 Google Cloud Storage 库

转载 作者:行者123 更新时间:2023-12-01 02:26:37 24 4
gpt4 key购买 nike

作为在 ML Engine 中批量处理一些图像的快速解决方案,我使用 Cloud Storage Python 库下载图像。

不幸的是,当作业发送到 ML Engine 时,库导入失败并显示以下堆栈跟踪:

Traceback (most recent call last): File "/usr/lib/python2.7/runpy.py", line 162, in _run_module_as_main "__main__", fname, loader, pkg_name) File "/usr/lib/python2.7/runpy.py", line 72, in _run_code exec code in run_globals File "/root/.local/lib/python2.7/site-packages/trainer/task.py", line 1, in <module> from google.cloud import storage ImportError: cannot import name storage

我非常确定该库包含在 ML 引擎镜像中(如果不是,那就很奇怪了),所以我在这里不知所措,程序在本地运行良好。

最佳答案

容器不包含此包,因为通常您使用 TensorFlow 的 file_io 模块,该模块与 GCS 配合使用。

两个选项。假设您已经知道如何使用和/或拥有 google.cloud.storage 的代码,您只需将其作为要求添加到您的 setup.py 文件 ( instructions ) ,例如:

from setuptools import find_packages
from setuptools import setup

REQUIRED_PACKAGES = ['google-cloud-storage']

setup(
name='trainer',
version='0.1',
install_requires=REQUIRED_PACKAGES,
packages=find_packages(),
include_package_data=True,
description='My trainer application package.'
)

或者,您可以使用 file_io ,如果您实际上不需要数据副本但想直接读取它们,这特别有用:

import tensorflow as tf
from tensorflow.python.lib.io import file_io

# Copy
file_io.copy("gs://my-bucket/myfiles/*", "/tmp")

# Glob and read
for file in file_io.get_matching_files("gs://my-bucket/myfiles/*"):
with file_io.FileIO(file) as f:
# Do something

最后,请注意,如果您使用 TensorFlow 操作,TensorFlow 的读者已经知道如何从 GCS 读取数据,因此无需手动操作文件。

关于python - 无法在 ML Engine 中导入 Google Cloud Storage 库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47324823/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com