Прикручиваем нейросеть к боту, чтобы найти 68 страну для посещения

Моя цель - предложение широкого ассортимента товаров и услуг на постоянно высоком качестве обслуживания по самым выгодным ценам.

Привет! Я Лёша, backend‑разработчик, который любит путешествовать. К 35 годам я посетил 67 стран мира, но с момента написания прошлой статьи пока никуда не ездил. Зато увлёкся нейронками. Эта статья будет как раз о них.

Из статьи вы узнаете:

  • где стоит применить нейронки, а где можно обойтись NLP;

  • как локально крутить LLM и почему стоит воспользоваться API;

  • как подбирать промпты, чтобы получать от ИИ не просто ответы, а реально полезную информацию;

  • зачем вообще в боте для поиска дешёвых авиабилетов (и не только) нейросети и почему в нём осталась лемматизация / NLP, а в некоторых местах регулярки для поиска сообщений.

Предыстория есть в моих прошлых статьях: про идею сделать бот для поиска туров и про доработку MVP‑версии с примерами, что другие юзеры искали через бот. Если коротко, я сделал бота, который мониторит сообщения в Telegram‑каналах и пересылает их, чтобы вы не пропустили действительно вкусные предложения: быстро среагировали на горящий тур, вакансию или распродажу любимого бренда.

Какие доработки Telegram-бота хотели юзеры и желательно вчера

С чего началась очередная доработка? В прошлой статье я упоминал, что хотел бы сделать поиск туров и билетов по датам. Сначала я не понимал, как доставать даты из текста постов в Telegram‑каналах. Опишу технологии, которые сейчас используются для работы с текстом, и финальное решение дальше в статье.

Также я задумал добавить категоризацию сообщений. Например, если добавить бот в канал‑барахолку, можно было бы искать сообщения по технике, по предложениям о работе и другим категориям. Но тогда придётся превратить самописный бот в громоздкий классифайд типа Авито.

Ещё точно стоило бы категоризировать сообщения по странам или регионам при поиске билетов и туров. Человек может искать перелёт не в конкретный город Таиланда, а в любой, но в посте из туристического паблика может быть только название города. Тогда нужно будет подписать бота на пересылку предложений из всех городов, куда летают самолеты.

А как быть, когда ты хочешь отправиться в Юго‑Восточную Азию не дороже 50 тысяч? Забивать в фильтры поиска все страны? Сейчас даже Aviasales не умеет искать по регионам... Второй Aviasales я точно не собирался делать.

Я видел решение так: нужно доработать функционал, чтобы искать информацию по большим объёмам текстов и сообщений, но без чётких критериев. Так началось моё знакомство с нейросетями с точки зрения разработчика, а не пользователя.

Сколько стоит добавить нейросети в Telegram-бот

Я начал с такого запроса к нейронке:

Ты — полезный ИИ‑ассистент, который помогает определить, соответствует ли моему запросу сообщение. Сегодня 10 марта 2025 года. В ответе должно быть только слово «да» или слово «нет». Запрос: «Я хочу найти билеты в Санкт‑Петербург в марте». Сообщение: «Из Москвы в Новосибирск

Источник: https://habr.com/ru/companies/alfa/articles/889684/


Интересные статьи

Интересные статьи

Правительство утвердило список российских программ, обязательных для предустановки в 2025 году на смартфоны, планшеты, ПК, моноблоки и Smart TV. Распоряжение об этом подп...
Сегодня мы поговорим о том, как highload-блоки в Битрикс24 могут помочь справиться с большими объемами данных и обеспечить стабильную работу систем при высоких нагрузках. Highload-блоки в Битрикс24 — ...
Основная "киллер-фича" фреймворка Laravel версии 11 - "плоский код". Под капот убрано всё, что большинством разработчиков не используется и, по сути, является "мусором". А также убраны некоторые дейст...
В данной статье будет показана нестандартная реализация компонентов Vue + Bitrix, которую вряд ли кто то видел и использовал.Без NPM, без сборщиков и без костылей. Все "нативными" средствами
SWAP (своп) — это механизм виртуальной памяти, при котором часть данных из оперативной памяти (ОЗУ) перемещается на хранение на HDD (жёсткий диск), SSD (твёрдотельный накоп...