Создание нескольких изображений модели чатбота в AWS EC2 в Python: Flask - PullRequest
0 голосов
/ 22 ноября 2018

Текущий:

У меня есть базовая модель AIML, созданная как API во Flask и размещенная в AWS EC2 с использованием Gunicorn и Nginx.Модель AIML работает как универсальная модель ML.

У меня есть ядро ​​(k), которое обучается, и затем начинается разговор с пользователем.Это ядро ​​хранит информацию о пользователях и т. Д. И ведет разговор в соответствии с тем, что ранее сказал пользователь.

Я использую Gunicorn и Nginx для запуска моего сервера.API создается во Flask и размещается в AWS EC2.

Важный фрагмент кода.

app = Flask(__name__)     
k = aiml.Kernel()

def setup_app(app):                                                                                             
    k.bootstrap(learnFiles="std-startup.aiml",commands="load aiml b")                                                                                                                                                   
setup_app(app) 

Проблема:

Когда 2 или болеепользователь делает вызов API работающего сервера, я получаю тот же образ ядра (k), и, таким образом, чат смешивается и действует так, как будто только один пользователь обращается к нему.

Но то, что мне нужно, - это когда все запросы, сделанные из другой системы, должны получить новый образ ядра, тогда как для той же системы поток диалога должен идти с образом ядра, который был создан при первом запросе API.

РАБОТА

Я прошел это и это .Но никто не решает мою проблему.В основном решение дано для обработки одного и того же запроса.Я попытался увидеть метод run(), и он имеет определенные параметры, такие как многопоточность и т. Д., Но здесь моя проблема заключается в назначении одного нового образа ядра для каждого нового запроса и его обслуживании.

Я знаю, что проблема очень тривиальна ииспользуется многими.Но я не могу найти то, что нужно сделать.Является ли что-то на стороне AWS иметь несколько изображений или на стороне Python для обеспечения параллелизма.

...