Я застрял здесь слишком долго.Я пытаюсь развернуть микросервис, который использует тензор потока.Существует один файл с именем handler.py
, который имеет простой код ниже:
import json
import tensorflow as tf
import numpy as np
def main(event, context):
# a = np.arange(15).reshape(3, 5)
body = {
"message": "Go Serverless v1.0! Your function executed successfully!",
"input": event
}
response = {
"statusCode": 200,
"body": json.dumps(body)
}
return response
# Use this code if you don't use the http event with the LAMBDA-PROXY
# integration
"""
return {
"message": "Go Serverless v1.0! Your function executed successfully!",
"event": event
}
"""
Чтобы упростить мою работу, я использую без сервера для развертывания микросервиса , но он не работаетговоря, размер молнии слишком велик.Вот как выглядит мой каталог:
-- handler.py
-- serverless.yml
-- requirements.txt
requirements.txt
выглядит так:
numpy
tensorflow
Я также пытался загрузить без установки вышеупомянутые модули, думая, что lambda будет сама инициализироваться из requirements.txt
но потом получаю ошибку, Unable to import module 'handler': No module named 'tensorflow'
.Что я должен делать?Я потратил на это много времени и все еще не уверен, что AWS Lambda не позволит мне сделать это.
Если вы хотите увидеть serverless.yml
, это выглядит следующим образом:
service: numpy-new-test
provider:
name: aws
runtime: python3.6
profile: nsp
role: arn:aws:iam::xxxxxxxxxxx7:role/AdminRole
functions:
numpy:
handler: handler.main
events:
- http:
path: test
method: get