python - 无法导入模块 'lambda_function' : No module named '_speech_py_impl'

标签 python linux azure aws-lambda import

使用 AWS Lambda 函数来使用某些 Microsoft Azure TTS API。只是尝试导入“import azure.cognitiveservices.speech aspeechsdk”时遇到麻烦并出现错误。使用 pip3 install azure-cognitiveservices-speech -t 正确上传所需的依赖项。

似乎是 AWS 运行时 Linux 的问题,在 mac 机器上本地工作正常。有人可以帮忙吗?可能与上传自定义 docker 镜像 like this solution 有关或 this 出现某种问题,但不确定如何将此依赖项添加到 aws lambda。

非常感谢。

最佳答案

要解决此无法导入模块“lambda_function”:没有名为“_speech_py_impl”的模块错误,请尝试以下方法:

您可能已将 azure-cognitiveservices-speech 安装在错误的目录中。

根据documentation :

1.开放AWS EC2环境:

$ sudo amazon-linux-extras install python3.8
$ curl -O https://bootstrap.pypa.io/get-pip.py
$ python3.8 get-pip.py --user

2.创建Python文件夹:

$ mkdir python

3.安装azure.cognitiveservices.speech:

$ python3.8 -m pip install azure.cognitiveservices.speech -t python/

4.压缩内容:

$ zip -r layer.zip python

5.将 Lambda 层发布到您的 Lambda 函数所在的 AWS 区域:

aws lambda publish-layer-version --layer-name azure.cognitiveservices.speech-layer --zip-file fileb://layer.zip --compatible-runtimes python3.8 --region <your AWS region>

引用文献:Unable to import module 'lambda_function' , AWS Lambda Python error - Runtime.ImportModuleErrorModuleNotFoundError: No module named '_speech_py_impl'

关于python - 无法导入模块 'lambda_function' : No module named '_speech_py_impl' ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/72650373/

相关文章:

powershell - 如何查找Azure SQL数据库的复制角色

list - Azure ADF - HTTP : Table from list

python - 如何在python中使用数字签名算法RSASSA-PSS-2048-SHA256

python - 为结构化数据调整 Numpy Dtype 大小的最佳方法

python - 使用Django和Elasticsearch索引新对象

java - Linux环境下使用Java中的Runtime.getRuntime().exec执行命令时出现内存泄漏问题

python - 用 NumPy 中的列表元素替换数组元素

c - 使用 stat (st_uid) 的段错误(核心转储)

mysql - 由于时区,apt-get 升级在 mariadb-server 上总是失败

azure - Kusto 中两个连续值之间的差异