Python 如何将第三方ML模型加载到无服务器函数中
我已经构建了一个ML模型(使用sklearn模块),我希望通过AWS API网关+Lambda函数为其提供预测服务 我的问题是:Python 如何将第三方ML模型加载到无服务器函数中,python,lambda,scikit-learn,serverless-framework,Python,Lambda,Scikit Learn,Serverless Framework,我已经构建了一个ML模型(使用sklearn模块),我希望通过AWS API网关+Lambda函数为其提供预测服务 我的问题是: 由于lambda容量限制,我无法安装sklearn+numpy等。(捆绑包大于140MB) 也许这是个愚蠢的问题,但是,你知道有没有更好的方法来完成这项任务吗 为了减小捆绑包的大小,我尝试了本教程。但是,由于--use wheel标志,它引发了一个异常 其中z_特征是我使用标量后的特征只要想清楚 该解决方案基本上位于AWS Lambda层之上 我创建了一个仅包含相关
sls包
,以便将包含这些文件的包与我自己的handler.py代码打包在一起
最后一步是跑步
sls部署——package.serverless
希望它能对其他人有所帮助。想想看
该解决方案基本上位于AWS Lambda层之上
我创建了一个仅包含相关编译库的sklearn层。
然后,我运行sls包
,以便将包含这些文件的包与我自己的handler.py代码打包在一起
最后一步是跑步
sls部署——package.serverless
希望对其他人有帮助
bucket = s3.Bucket(os.environ['BUCKET'])
model_stream = bucket.Object(os.environ['MODEL_NAME'])
model = pickle.loads(model_stream)
model.predict(z_features)[0]