Привет! Я Лёша, backend‑разработчик, который любит путешествовать. К 35 годам я посетил 67 стран мира, но с момента написания прошлой статьи пока никуда не ездил. Зато увлёкся нейронками. Эта статья будет как раз о них.
Из статьи вы узнаете:
где стоит применить нейронки, а где можно обойтись NLP;
как локально крутить LLM и почему стоит воспользоваться API;
как подбирать промпты, чтобы получать от ИИ не просто ответы, а реально полезную информацию;
зачем вообще в боте для поиска дешёвых авиабилетов (и не только) нейросети и почему в нём осталась лемматизация / NLP, а в некоторых местах регулярки для поиска сообщений.
Предыстория есть в моих прошлых статьях: про идею сделать бот для поиска туров и про доработку MVP‑версии с примерами, что другие юзеры искали через бот. Если коротко, я сделал бота, который мониторит сообщения в Telegram‑каналах и пересылает их, чтобы вы не пропустили действительно вкусные предложения: быстро среагировали на горящий тур, вакансию или распродажу любимого бренда.
Какие доработки Telegram-бота хотели юзеры и желательно вчера
С чего началась очередная доработка? В прошлой статье я упоминал, что хотел бы сделать поиск туров и билетов по датам. Сначала я не понимал, как доставать даты из текста постов в Telegram‑каналах. Опишу технологии, которые сейчас используются для работы с текстом, и финальное решение дальше в статье.
Также я задумал добавить категоризацию сообщений. Например, если добавить бот в канал‑барахолку, можно было бы искать сообщения по технике, по предложениям о работе и другим категориям. Но тогда придётся превратить самописный бот в громоздкий классифайд типа Авито.
Ещё точно стоило бы категоризировать сообщения по странам или регионам при поиске билетов и туров. Человек может искать перелёт не в конкретный город Таиланда, а в любой, но в посте из туристического паблика может быть только название города. Тогда нужно будет подписать бота на пересылку предложений из всех городов, куда летают самолеты.
А как быть, когда ты хочешь отправиться в Юго‑Восточную Азию не дороже 50 тысяч? Забивать в фильтры поиска все страны? Сейчас даже Aviasales не умеет искать по регионам... Второй Aviasales я точно не собирался делать.
Я видел решение так: нужно доработать функционал, чтобы искать информацию по большим объёмам текстов и сообщений, но без чётких критериев. Так началось моё знакомство с нейросетями с точки зрения разработчика, а не пользователя.
Сколько стоит добавить нейросети в Telegram-бот
Я начал с такого запроса к нейронке:
Ты — полезный ИИ‑ассистент, который помогает определить, соответствует ли моему запросу сообщение. Сегодня 10 марта 2025 года. В ответе должно быть только слово «да» или слово «нет». Запрос: «Я хочу найти билеты в Санкт‑Петербург в марте». Сообщение: «Из Москвы в Новосибирск
