【问题标题】:Google Cloud Function / Python 3.7 / requirements.txt makes deploy failGoogle Cloud Function / Python 3.7 / requirements.txt 使部署失败
【发布时间】:2019-08-22 06:38:24
【问题描述】:

我尝试通过 requirements.txt 部署具有依赖项的谷歌云功能。部署需要很长时间并且失败并显示此消息:

(gcloud.functions.deploy) OperationError: code=3, message=Build failed: {"cacheStats": [{"status": "MISS", "hash": "ebbabef833cbc5bf98d2562c9f28bd5ab91e1a867134bb0c08f84397510ff774", "type": "docker_layer_cache", "level": "global"}, {"status": "MISS", "hash": "ebbabef833cbc5bf98d2562c9f28bd5ab91e1a867134bb0c08f84397510ff774", "type": "docker_layer_cache", "level": "project"}]}

我发现,requirements.txt 似乎是问题所在,当我通过 Web 控制台(使用 HelloWorld 示例)创建 python3.7 云函数并将要求粘贴到那里时,我得到了相同的行为。 requirements.txt 看起来像:

Flask==1.0.2
dill>=0.2.8
numpy>=1.15.0
requests>=2.20.0
six==1.12.0
spacy>=2.1.0
torch>=1.0.0
torchtext>=0.3.1

我还有其他几个使用 requirements.txt 的示例,但我不明白这里的重点。而且我不知道是否有办法进一步调试。

有什么想法吗?

更新

似乎是pytorch引起了问题,它通过直接指向whl文件的URL来工作

...
spacy>=2.1.0
https://download.pytorch.org/whl/cpu/torch-1.0.1.post2-cp37-cp37m-linux_x86_64.whl
torchtext>=0.3.1

问题似乎与cuda有关,上面的URL指向没有cuda的torch版本。

【问题讨论】:

    标签: python-3.x google-cloud-platform google-cloud-functions


    【解决方案1】:

    PyTorch 在 PyPI 上发布了一个默认支持 CUDA/Nvidia GPU 的发行版,但 Cloud Functions 运行时不支持 GPU,也没有必要的系统库。

    您应该在选择时使用https://pytorch.org/提供的URL:

    • 您的操作系统:Linux
    • 包:点子
    • 语言:Python 3.7
    • CUDA:无
    pip3 install https://download.pytorch.org/whl/cpu/torch-1.0.1.post2-cp37-cp37m-linux_x86_64.whl
    

    这会让你的requirements.txt:

    Flask==1.0.2
    dill>=0.2.8
    numpy>=1.15.0
    requests>=2.20.0
    six==1.12.0
    spacy>=2.1.0
    https://download.pytorch.org/whl/cpu/torch-1.0.1.post2-cp37-cp37m-linux_x86_64.whl
    torchtext>=0.3.1
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2023-02-12
      • 2020-11-10
      • 1970-01-01
      • 2019-06-03
      • 2019-10-25
      • 1970-01-01
      • 2021-09-25
      • 1970-01-01
      相关资源
      最近更新 更多