gpt4 book ai didi

python - 如何将 python 包安装到 Google Dataflow 并将其导入我的管道?

转载 作者:行者123 更新时间:2023-11-28 22:16:21 25 4
gpt4 key购买 nike

我的文件夹结构如下:

Project/
--Pipeline.py
--setup.py
--dist/
--ResumeParserDependencies-0.1.tar.gz
--Dependencies/
--Module1.py
--Module2.py
--Module3.py

我的 setup.py 文件如下所示:

from setuptools import setup, find_packages

setup(name='ResumeParserDependencies',
version='0.1',
description='Dependencies',
install_requires=[
'google-cloud-storage==1.11.0',
'requests==2.19.1',
'urllib3==1.23'
],
packages = ['Dependencies']
)

我使用 setup.py 文件通过“python setup.py sdist”创建了一个 tar.gz 文件。 tar 文件位于 dist 文件夹中,名称为 ResumeParserDependencies-0.1.tar.gz。然后我指定

setup_options.extra_packages = ['./dist/ResumeParserDependencies-0.1.tar.gz'] in my pipeline options.

但是,在 Dataflow 上运行我的管道后,我收到错误消息“没有名为 ResumeParserDependencies 的模块”。如果我在本地使用“pip install ResumeParserDependencies-0.1.tar.gz”,程序包会安装,我可以使用“pip freeze”查看它。


将包加载到 Dataflow 时我缺少什么?

最佳答案

我更改了我的文件夹结构并让它工作:

Project/
--Pipeline.py
--setup.py
--Module1/
--__init__.py
--Module2/
--__init__.py
--Module3/
--__init__.py

setup.py 文件现在看起来像这样: 从 setuptools 导入设置,find_packages

setup(name='ResumeParserDependencies',
version='0.1',
description='Dependencies',
install_requires=[
'google-cloud-storage==1.11.0',
'urllib3==1.23'
],
packages = find_packages()
)

在我的管道中,我指定:

setup_options.setup_file = './setup.py'

我不需要:

setup_options.extra_packages = ['./dist/ResumeParserDependencies-0.1.tar.gz']

引用: find_packages doesn't find my Python file

关于python - 如何将 python 包安装到 Google Dataflow 并将其导入我的管道?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52239615/

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