Текущий:
У меня есть базовая модель 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 для обеспечения параллелизма.