我注意到requirements.txt不起作用。
例如,创建一项新技能(选择 Alexa 托管 (Python))。 接下来,作为示例,编辑requirements.txt并添加
openai
,如下所示。
默认列出 boto3
和 ask-sdk-core
。
boto3==1.28.78
ask-sdk-core==1.19.0
openai
接下来,修改 lambda_function.py 并将
import openai
添加到开头。
当我部署并测试该技能时,它失败了。
我检查 CloudWatch Logs,看到以下错误:
[ERROR] Runtime.ImportModuleError: Unable to import module 'lambda_function': No module named 'openai' Traceback (most recent call last):
查看日志,似乎没有安装openai。 然而,当我阅读文档时,它说我可以将其写入requirements.txt。
您能告诉我如何使用requirements.txt 安装附加库吗?
同样的问题不仅出现在
openai
,也出现在其他库,例如firebase_admin
。
像
openai==1.7.1
那样指定版本并没有解决问题。
重试部署或重新创建技能未能解决问题。
我最终使用 ASK CLI 部署包括
openai
包的代码并解决了它。
请注意,虽然您可以从控制台部署 ZIP 文件,但最多只能上传 100 个文件,因此部署包含数百或数千个文件的包是不切实际的。
如果您使用 Alexa 托管环境并想要使用外部库,ASK CLI 可能是最简单的方法。
最简单的方法就是像官方文档一样写在requirements.txt中并部署它,但我希望看到这个功能得到修复。