при импорте тензорного потока или кераса с ошибкой 500 серверов в облаке Google - PullRequest
0 голосов
/ 18 апреля 2020

У меня есть простое приложение Flask, которое использует тензор потока и керас. Единственное, что делает это приложение, это

  1. Получение запроса API
  2. Выполнение некоторых операций с использованием кераса
  3. Возврат ответа

Модель keras предварительно обучена. Это прекрасно работает на локальном сервере. Когда я развертываю приложение в Google Cloud, импорт tenorflow и keras занимает много времени, и сервер возвращает "Ошибка: ошибка сервера. Сервер обнаружил ошибку и не смог выполнить ваш запрос. Повторите попытку через 30 секунд."

main.py:

from flask import Flask, jsonify, request
from flask_cors import CORS
import base64
import io
import numpy as np
from skimage.transform import resize
from matplotlib import image
import matplotlib.pyplot as plt
import matplotlib
matplotlib.use('Agg')

# import tensorflow as tf
# from keras.models import load_model
# import keras.backend as k
# from keras.preprocessing.image import img_to_array

app = Flask(__name__)
cors = CORS(app)

# sess = tf.Session()
# graph = tf.get_default_graph()

# K.tensorflow_backend.set_session(sess)
# model = load_model('./model.h5')

@app.route("/", methods=['GET'])
def hello():
    return 'Hello World!'
    # global sess
    # global graph
    # with graph.as_default():
    #     K.tensorflow_backend.set_session(sess)
    #     data = request.get_json()
    #     ### DO SOME WORK HERE ###
    #     return 'Hello World!'

if __name__ == '__main__':
    app.run()

Всякий раз, когда я пытаюсь раскомментировать один из импортированных тензорных потоков / керасов, он показывает ошибку сервера.

needs.txt

Flask==1.1.2
Flask-Cors==3.0.8
Keras==2.3.1
Keras-Applications==1.0.8
Keras-Preprocessing==1.1.0
matplotlib==3.2.1
numpy==1.18.2
scikit-image==0.16.2
tensorflow==1.13.1

app.yaml

runtime: python37
instance_class: F4

Что-то мне не хватает? Я новичок в облачном развертывании Google.

...