@Drottarutarnum
Любопытный любитель

Чем обрабатывать естественую речь?

Пишу бота для конференций (общий текстовой чат).
Хочу чтобы бот мог делать некоторые функции:

1) Не ломаться, если команда была произнесена не буква в букву
Например:
Бот, скажи погоду
скажи погоду, бот
кстати, бот, что там с погодой?


2) Различать упоминание о нем в разговоре, и прямое обращение.
Например:
Не реагировать, когда:
бот все ещё не умеет загружать картинки, я скоро это исправлю

Реагировать, когда:
Бот, скажи погоду


На самом деле первый пункт для меня куда важнее, а без второго можно обойтись т.к. хочу чтобы бот мог понимать обращение не только когда сообщение начинается с его имени, люди могут написать: "Эй бот", "ботботбот", "Боооот" и т.п.

Так же из речи надо выкинуть все лишнее и нормализовать её, понять, что "картиночка котика" и "изображение кота" и "фото котэ" - одна и та же команда

И вот вопрос, с помощью чего это сделать? (т.к. такой алгоритм я точно не смогу написать).
Есть ли что-то готовое? Изначально моя цель в функциях бота, но я бы очень хотел дать ему способность понимать естественную речь людей, если это окажется слишком сложно, значит не судьба.

Прошу статей с исходниками, ссылок на репозитории или библиотеки.
Спасибо.
  • Вопрос задан
  • 59 просмотров
Пригласить эксперта
Ответы на вопрос 3
xmoonlight
@xmoonlight
https://sitecoder.blogspot.com
Прошу статей с исходниками, ссылок на репозитории или библиотеки.
Следующий! ;)
Ответ написан
Комментировать
dimonchik2013
@dimonchik2013
non progredi est regredi
Ответ написан
Комментировать
mayton2019
@mayton2019
Bigdata Engineer
Если речь идёт о русском языке - то читать про стемминг и лемматизацию.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы