2

我正在尝试将 SpaCy 作为依赖项添加到我的 Python Lambda。我通过将 SpaCy 作为独立依赖项安装在名为dependenciesusing的目录中来做到这一点,pip3 install spacy --no-deps -t .这是因为我无法在\tmp我的 Lambda 目录中加载整个 Spacy 依赖项。

我能够成功地将文件夹上传到 s3 并在 Lambda 调用期间下载它。当我尝试时import spacy,我收到此错误:[ERROR] Runtime.ImportModuleError: Unable to import module : No module named 'srsly.ujson.ujson'

我手动安装srsly在里面,我有所有按照这个链接dependencies\列出的文件。此链接引用了此内容。其中一个回复说,“似乎 Python 无法加载它,因为它没有编译?”。我将如何编译其中包含文件的依赖项?.c

我在 SO 上发现的另一个问题是这个问题,但我已经手动安装了srsly。如何导入模块?谢谢。


ujson在导入 spacy 之前,我手动检查我的代码是否存在,如下所示:

if os.path.exists('/tmp/dependencies/srsly/ujson/ujson.c'):
    print('ujson exists')

并且打印语句被打印。

4

2 回答 2

0

对我来说,pip 卸载和安装 srsly 再次正常工作。有时它只是与你的 python 版本的兼容性问题,所以请确保存在正确的 python/srsly 版本

于 2021-10-25T12:42:26.007 回答
0

嗯,这有点奇怪,但我对这个问题的解决方案是在 srsly 文件夹中创建一个附加的“ujson”文件夹,然后将所有 ujson 生成的代码移动到之前创建的文件夹“ujson”中

于 2021-06-23T16:48:55.343 回答