-
Notifications
You must be signed in to change notification settings - Fork 0
PBot
Mikhail edited this page Feb 25, 2017
·
2 revisions
модуль QAprocessing нужен для генерации корпуса из фраз и aiml файлов:
Как работает: из вопросов и списков ответов к ним формируются корпус (список вопросов) и aiml категории, при этом aiml файлы получаются разбиты по тем же темам, что и изначальные сырые данные
модуль PBot:
- из aiml файлов обучается бот
- из корпуса составляется вектор с помощью выбранной модели (CountVectorizer или TfidfVectorizer)
- считывается очередная фраза пользователя и переводится в вектор
- для вектора фразы ищутся ближайшие (по косинусному расстоянию) векторы
- для найденных векторов формируется список соответствующих им фраз из корпуса; т.о. , получается список фраз из корпуса, соответствующих фразе пользователя (их векторы находятся на одинаковом максимальном косинусном расстоянии от вектора фразы пользователя)
- если фраза из корпуса выбрана одна, то переслать ее боту и получить от него ответ
- иначе выдать сообщение о неоднозначности и записать фразу пользователя и список близких к ней фраз в лог-файл