Привет! Меня зовут Влад Силантьев. Два с половиной года назад мы с тремя друзьями – Никитой, Иваном и Александром – запустили сообщество «Соратники».
Сегодня нас уже 120 человек, и мы продолжаем расти. Участники — владельцы бизнеса с разным опытом, компетенциями и запросами. И на определённом этапе рост стал создавать проблемы.
Раньше, чтобы найти нужного эксперта, участники часами переписывались в чате. Чтобы записаться на мероприятие, нужно было писать комьюнити-менеджеру. А чтобы поощрить активных — вручную вести таблицу с баллами.
Мы решили не латать процессы, а пересобрать их целиком. Сделали Telegram-приложение, где:
В этой статье я покажу, как это устроено технически и почему такой же подход может здорово помочь любому бизнесу или сообществу.
«Соратники» — это закрытый клуб предпринимателей из Москвы. Здесь нет случайных людей: каждый из 120 участников прошёл строгий отбор.
Главная ценность сообщества — работа со «своими». Здесь запрещены холодные продажи, спам и навязчивая раздача визиток. Участники приходят за поддержкой, обмениваются опытом и растут вместе.
Жизнь в клубе кипит постоянно. Каждую неделю проходят бизнес-мастермайнды, тренировки по волейболу, походы в баню и встречи с топ-менеджерами крупных корпораций.
Предприниматели ищут здесь надёжных партнёров и друзей. Но когда клуб вырос до сотни человек, помнить компетенции каждого стало невозможно. А ценность сообщества как раз в том, чтобы быстро находить нужного человека. И вот тут начинаются проблемы.
Когда сообщество выросло до 120 человек, начали проявляться системные проблемы. Они не критичны по отдельности, но вместе сильно тормозят жизнь клуба.
Боль №1: невозможно удержать в голове, кто чем занимается. В клубе десятки предпринимателей, и у каждого — своя экспертиза. Кто-то разбирается в налогах, кто-то строит заводы, кто-то организует логистику из Китая.
Проблема в том, что невозможно держать в голове 100+ специализаций. Даже если вы лично общались с человеком, через месяц вы вряд ли вспомните, что он, оказывается, помогает с визами.
В итоге участники тратят часы на переписку в общем чате: «Ребята, кто может помочь с сайтом?», «А кто в логистике шарит?». А ответа иногда нет вообще — нужный человек просто не увидел сообщение или не понял, что речь о нём.
Боль №2: мероприятия — это рутина. Процесс выглядел просто, но съедал часы. Сначала публикуется анонс, потом участники пишут в личку, чтобы записаться. Дальше начинается рутина: собрать список, никого не забыть, напомнить, пересчитать. Если кто-то выпал — внести изменения.
На организацию одного события уходило от 5-7 часов чистого времени в неделю. Это не масштабируется: чем больше участников, тем сильнее растёт нагрузка.
Боль №3: нет прозрачной системы активности. В сообществе ценится участие: помощь другим, организация встреч, вовлечённость. Чтобы поощрять это, мы сделали систему баллов активности. Она давала привилегии: высокий рейтинг повышал шансы попасть на закрытое мероприятие и служил сигналом доверия — активный участник считался надёжным.
Но раньше активность почти не отслеживалась, а весь учёт вёлся вручную в таблицах. Баллы начисляли только за письменную благодарность в чате, когда кто-то писал «спасибо». Но если участник активно помогал другим, но не переписывался в группе, система не фиксировала его вклад.
В итоге не было понятного ответа на простой вопрос: кто реально двигает сообщество. А без этого сложно поощрять нужное поведение и усиливать ценность клуба.
В какой-то момент стало понятно: проблема не в Телеграме, чатах или людях. Проблема в том, что у сообщества нет быстрого доступа к собственной базе знаний.
По сути, внутри уже есть все: эксперты, опыт, связи. Но этим невозможно пользоваться в моменте — слишком долго искать. Значит, задача — не улучшить чат. Задача — сделать систему, которая по запросу находит нужного человека так же быстро, как поиск в Google.
Здесь сошлось несколько факторов. Во-первых, накопленный опыт: до этого уже делали систему семантического поиска для Telegram-каналов. Она работала не по ключевым словам, а по смыслу — анализировала контент и находила релевантные совпадения. Этот подход оказался гораздо точнее.
Во-вторых, экспертиза в разработке. Проект делал мой отец — Сергей Силантьев, разработчик с сильным бэкграундом в ИИ. Он собрал систему с нуля: от логики обработки текста до архитектуры поиска.
Мы с Владом постоянно общаемся, и в этом общении всегда рождается что-то интересное. До этой разработки мы уже делали похожий проект - парсер Телеграм-каналов. Там использовался тот же подход: семантический поиск через векторы, а не по ключевым словам.Когда пришла задача для "Соратников", решение пришло быстро. Единственное, что потребовало доработки - карточки участников. Люди пишут по-разному: кто-то кратко о деле, кто-то много про хобби и футбол. Как искать по таким текстам?Мы разделили каждую карточку на три уровня. И потом всё это собрали в один пазл. Теперь поиск работает точно: по короткому ядру - 55% веса, по описанию основных компетенций - 30%, по контексту - 15%. Так система находит нужно человека, даже если в его карточке нет точного ключевого слова.
Сама идея звучала просто: если у нас есть база людей, которым мы доверяем, почему бы не искать по ней так же, как мы ищем информацию в интернете. Так появилось решение, которое закрывает сразу три задачи:
Дальше — разберём, как именно работает ключевая часть всей системы: AI-поиск по людям.
Вся система держится на одной ключевой функции — поиске людей по смыслу. Не по словам, не по тегам, а именно по тому, что человек умеет и чем может помочь. Разберём, как это устроено внутри.
Шаг 1. Участник заполняет карточку. Каждый участник пишет интро о себе. В свободной форме: кто-то кратко, кто-то подробно. Там есть всё, что важно для поиска: опыт, компетенции, кейсы, иногда — личные интересы.
Шаг 2. Бот структурирует текст. Дальше подключается ИИ-модель на базе OpenAI GPT. Она анализирует текст и раскладывает его на несколько уровней:
Так система не теряет ни краткость, ни глубину.
Каждый слой получил свой вес при поиске. Ядро — 55%: если у человека в профиле прямо написано «строю заводы», он выйдет в топ по запросу про производство. Подробное описание — 30%: здесь система ищет смежные навыки, которые не вошли в короткое ядро. Контекст — 15%: помогает, когда запрос нечёткий или нужно учесть личные качества.
Система сравнивает не просто тексты целиком, а каждый слой отдельно. Берёт запрос, сопоставляет его с ядром одного участника, потом с ядром другого. Затем делает то же самое с подробным описанием и контекстом. Результаты складываются с весами — и получается общий балл релевантности.
Шаг 3. Текст превращается в вектор. Каждый кусок текста переводится в вектор — набор примерно из 3000 чисел. Звучит сложно, но по сути это координаты. Как точки на карте: чем ближе точки, тем ближе смыслы.
Если два человека пишут про «выход на зарубежные рынки» и «помощь с релокацией бизнеса», их векторы окажутся рядом — даже при разных формулировках. Все эти векторы хранятся в базе FAISS. Она умеет быстро находить «соседей» — то есть похожие по смыслу профили.
Шаг 4. Пользователь делает запрос. Теперь участник пишет в чат. Сначала нужно написать ключевое слово «Суть», а потом изложить свой запрос: «Нужен человек, который поможет с визами».
Этот текст проходит тот же путь — превращается в вектор и отправляется в базу. Есть важный нюанс. Если запрос слишком общий, например, «юрист», система сама добавляет контекст, чтобы поиск не был пустым.
Шаг 5. Поиск и ранжирование. Сначала система находит 10–15 ближайших по смыслу кандидатов. Затем подключается второй уровень — «аудитор». Это более точная модель, которая:
В итоге пользователь получает короткий список из 3 наиболее релевантных людей.
Главное отличие от обычного поиска — гибкость. Можно написать «хочу получить визу в Италию», и система найдёт специалиста по иммиграции. Даже если в его профиле нет этих слов. Это и есть ключевой сдвиг: поиск работает не по формулировке, а по смыслу задачи.
Мы внедрили рейтинг в «Соратниках» чтобы подсветить самых активных участников и мягко подтолкнуть остальных к общению. Теперь система начисляет баллы автоматически, превращая добрые дела в твёрдую репутацию.
Бот постоянно «слушает» основной чат сообщества через библиотеку Telethon. Когда кто-то пишет слово «спасибо» в ответ на помощь, система ловит это сообщение и добавляет балл в карму помощника. Больше веса дают крупные вклады: организация мастермайнда и приглашение нового участника приносит сразу 100 очков, а посещение мероприятия — 30.
Зачем это нужно? Во-первых, это знак доверия. Высокий рейтинг говорит: человек неоднократно проявлял себя, ему можно доверять. Во-вторых, рейтинг влияет на выдачу в AI-поиске. При прочих равных активный участник окажется выше пассивного.
В-третьих, рейтинг даёт приоритетный доступ на мероприятия с ограниченным числом мест. Например, на встречу с крупным бизнес-лидером сначала приглашают тех, у кого больше баллов.
Раньше всё это считали вручную — в таблицах, по записям. Сейчас — автоматически, на PostgreSQL. Система сама отслеживает действия и обновляет рейтинг в реальном времени.
До появления приложения анонсы мероприятий публиковали в канале. Чтобы записаться, нужно было писать комьюнити-менеджеру в личку. Он вручную вёл списки, следил, кто идёт, отправлял напоминания. На одно мероприятие уходили часы.
Сейчас всё происходит внутри приложения. Участник открывает календарь, видит все ближайшие события, нажимает кнопку «записаться» — и автоматически попадает в список. Никаких лишних шагов, никакой переписки.
Комьюнити-менеджер больше не тратит время на администрирование. Система сама собирает списки участников, отправляет им напоминания, считает посещаемость. Человек занимается тем, что действительно важно, — развитием сообщества.
Технически интерфейс написан на React и FastAPI, а с Telegram мы общаемся через библиотеку aiogram 3. Всё работает быстро и без сбоев.
Главный итог — сообщество стало «плотнее». Поиск нужного эксперта теперь занимает 2 секунды вместо пары часов бесцельного ожидания в чате. Участники перестали переспрашивать «кто у нас делает сайты?», потому что ответ всегда под рукой в боте.
Запись на мероприятия полностью ушла на автопилот. Комьюнити-менеджер сэкономил около 5–7 часов чистого рабочего времени в неделю. Эти часы теперь уходят на развитие клуба и личное общение с фаундерами, что гораздо важнее сухих списков.
Система рейтинга за год ощутимо подняла активность. Количество организованных «по фану» встреч выросло, а благодарности в чате стали ежедневной нормой. Сообщество превратилось в саморегулируемую систему, где каждый мотивирован приносить пользу другим.
Этот подход — не только для закрытых бизнес-клубов. Он подходит для любой компании или сообщества, где есть похожие боли.
Где это нужно? Там, где есть большая база людей с разными компетенциями. Где ручной поиск отнимает часы. Где нужно поощрять активность, но непонятно, как это автоматизировать. И где запись на события превращается в головную боль для администратора. Вот несколько примеров из реальной жизни:
Корпоративный портал. В крупной компании сотни сотрудников с разными навыками. Руководителю нужен специалист по конкретной задаче — бот находит такого за секунды по описанию, а не по ключевым словам в кадровой базе.
База знаний. Новый сотрудник задаёт вопрос в чате поддержки. Бот ищет ответ во всей внутренней документации по смыслу — даже если новичок не знает правильных терминов.
Программы лояльности. Бонусы начисляются автоматически за действия в чате: сказал «спасибо» коллеге — получил балл. Организовал встречу — получил больше. Всё без ручного учёта.
HR-процессы. Отслеживание активности стажёров, автоматическое начисление баллов за выполненные задачи. HR видит, кто действительно вовлечён, а кто просто отбывает часы.
Главный вывод: если в вашем бизнесе есть процесс, который повторяется, бесит и отнимает время — скорее всего, его можно автоматизировать. И не нужна большая команда разработчиков. Иногда достаточно одного человека, который понимает, как работает ИИ-поиск.
***
Если вы давно задумываетесь о разработке бота или приложения на заказ, потому что в компании есть процесс, который бесит, тормозит работу и отнимает время, — напишите нам в Telegram. Созвонимся с командой, погрузимся в ваши процессы и разработаем решение, которое уберёт рутину и освободит часы вашей команды.