如何使用更多python脚本提交作业以进行ml云训练

时间:2017-03-11 09:34:33

标签: python google-cloud-platform google-cloud-ml google-cloud-ml-engine

我有一个包含多个python代码文件的项目。 我有一个模型文件,一个用于数据实用程序,一个用于训练模型。 我知道如何提交一个包含所有代码的模型在一个文件中。 如何指示T在我的项目中有更多文件? 也许需要在setup.py文件或__init__.py中添加一些内容。

我的目录如下所示:

setup.py
trainer/
  __init__.py
  task.py
  model/
     seq2seq.py
     model.py
  data_utli.py

2 个答案:

答案 0 :(得分:1)

您无需手动创建自己的套餐,但如果您愿意,欢迎您加入。

使程序包自动运行有两个重要步骤:

  1. 创建合适的python package
  2. 确保setup.py正确无误。
  3. 在您的情况下,model子目录导致问题。快速解决方法是将trainer/model/*移至trainer/。否则,您可能希望通过在model子目录中添加(可能为空白)__init__.py文件,使model/成为正确的子包。

    接下来,确保正确指定了setup.py文件。 this documentation中提供了一个示例脚本,为方便起见,在此重复:

    from setuptools import find_packages
    from setuptools import setup
    
    setup(name='trainer',
          version='0.1',
          include_package_data=True,
          description='blah',
          packages=find_packages()
    )
    

    您可以通过运行来验证它是否有效:

    python setup.py sdist
    

    这将创建一个带有dist文件的trainer-0.1.tar.gz子目录。提取该文件的内容表明所有文件都已正确包含在内:

    $ cd dist
    $ tar -xvf trainer-0.1.tgz
    $ find trainer-0.1/
    trainer-0.1/
    trainer-0.1/setup.py
    trainer-0.1/setup.cfg
    trainer-0.1/trainer
    trainer-0.1/trainer/data_util.py
    trainer-0.1/trainer/task.py
    trainer-0.1/trainer/__init__.py
    trainer-0.1/trainer/model
    trainer-0.1/trainer/model/__init__.py
    trainer-0.1/trainer/model/model.py
    trainer-0.1/trainer/model/seq2seq.py
    trainer-0.1/PKG-INFO
    trainer-0.1/trainer.egg-info
    trainer-0.1/trainer.egg-info/dependency_links.txt
    trainer-0.1/trainer.egg-info/PKG-INFO
    trainer-0.1/trainer.egg-info/SOURCES.txt
    trainer-0.1/trainer.egg-info/top_level.txt
    

答案 1 :(得分:0)