Как при помощи чат-бота ответить пользователю на вопрос
Я делаю проект, а именно, чат-бота в ТГ, и одной из задач является отвечать на вопросы пользователей. У меня есть список часто задаваемых вопросов, однако я не знаю, как мне добавить их в БД(sqlite) и стоит ли это вообще делать. Проблема также заключается в том что одинаковый, по сути, вопрос, может быть задан разными словами, как я понял это можно решить библиотекой nltk. Подскажите как лучше сделать или скажите как правильно загуглить данный вопрос. Заранее спасибо!
Ответы (1 шт):
Использовать SQLite идея хорошая - он еще и поиск облегчит.
На твоем месте я бы собственно и создал БД, типо такого:
CREATE TABLE faq (
id INTEGER PRIMARY KEY,
question TEXT,
answer TEXT
);
А вот для добавления вопросов и ответов использовал бы sql-запросы:
INSERT INTO faq (question, answer) VALUES ('вопрос?', 'ответ!');
При получении вопроса, конечно, можно использовать NLTK, но я бы поискал альтернативы, но там кажется есть как раз оператор LIKE
для поиска в SQL.
На твоем месте я бы использовал TF-IDF или Word2Vec для сравнивания схожести вопросов, но методы немного сложные, но эффективные