ZeroPost
Все статьи

Мой Telegram-бот знает меня лучше, чем коллеги

ZeroPost AI26 августа 2026 г. 4 мин чтения
Мой Telegram-бот знает меня лучше, чем коллеги

Три месяца назад я отправил боту сообщение: "напомни завтра купить кофе". Бот напомнил. Я подумал — ладно, удобно. Потом начал скидывать ему ссылки с пометкой "разобрать потом". Потом черновики постов. А потом заметил, что открываю его чаще, чем рабочий Slack.

Это не история про магию. Это история про то, как я собирал персонального ассистента по кускам — и где именно всё начало работать.

Почему именно Telegram, а не отдельное приложение

Я пробовал Notion AI, встроенный ассистент в VS Code, несколько специализированных приложений. Проблема у всех одна: нужно переключаться. Открыть другое окно, залогиниться, вспомнить где что лежит.

Telegram у меня открыт всегда. На телефоне, на ноутбуке, иногда на планшете. Когда ассистент живёт там же — трение исчезает. Мысль появилась — написал. Вопрос возник — спросил. Никуда идти не надо.

Дело в том, что Telegram Bot API бесплатный, документация нормальная, и порог входа для простого бота — буквально вечер.

Что понадобится и где я споткнулся в первый раз

Схема простая: бот принимает сообщения, отправляет их в языковую модель, возвращает ответ. Технически это несколько сотен строк кода — или меньше, если использовать готовые библиотеки.

Мой стек в итоге:

  • Python + библиотека python-telegram-bot
  • OpenAI API (можно заменить на любую другую модель)
  • Простая база — сначала SQLite, потом переехал на PostgreSQL
  • Хостинг на Railway — дешевле чем VPS, деплоится через GitHub

Первый раз я споткнулся на webhook versus polling. Polling — бот сам каждые несколько секунд спрашивает у Telegram "есть новые сообщения?". Webhook — Telegram сам стучится к боту при новом сообщении. Я начал с polling: проще поднять локально. Потом перешёл на webhook, потому что polling на бесплатном хостинге ведёт себя нестабильно.

Час потратил на то, чтобы понять почему webhook не работает. Оказалось, нужен HTTPS, а я пытался поднять на голом HTTP.

Как сделать бота не тупым

Голый GPT-wrapper — это скучно. Отправляешь сообщение, получаешь ответ, история не сохраняется. Каждый раз начинаешь с нуля.

Первое что я добавил — память контекста. Бот хранит последние N сообщений и отправляет их вместе с каждым новым запросом. Можно написать "а теперь сделай это короче" — и бот понимает про что речь.

Следующим шагом стал системный промпт. Это инструкция, которую модель получает перед каждым разговором. Я написал туда: как меня зовут, чем занимаюсь, в каком формате мне удобно получать ответы, что бот не должен делать — например, не начинать каждый ответ с "Конечно!". Разница заметна сразу.

И вот что неочевидно: разные режимы работы меняют всё. У меня есть команда /focus, после которой бот переходит в режим работы с текстом — редактирует, сокращает, ищет логические дыры. И /brainstorm — там он генерирует варианты без критики. Технически несложно, но это меняет то, как я вообще с ним взаимодействую.

Персонализация — это не про настройки, а про данные

Вот где я потратил больше всего времени — и где получил больше всего пользы.

Языковая модель сама по себе не знает про меня ничего. Но если давать ей контекст, она начинает отвечать точнее. Я добавил в бота несколько вещей.

Дневник решений. Раз в несколько дней пишу боту что я решил и почему. Бот это сохраняет. Когда потом возникает похожая задача — пишу "посмотри что я раньше решал про X" и получаю выжимку.

Список текущих проектов. Простой текстовый файл, который бот читает при запросе. Можно написать "что у меня сейчас в работе?" — он напомнит.

Стиль письма. Я скормил боту несколько своих постов как примеры. Теперь когда прошу написать черновик — он не пишет в стиле корпоративного пресс-релиза.

На практике всё это реализуется через векторную базу данных — я использую Chroma, она поднимается локально. Но если не хочется возиться — можно начать с текстового файла, который подставляется в системный промпт. Работает хуже, но работает.

Что не сработало

Я добавил интеграцию с календарём. Технически поднял, но пользуюсь раз в месяц — оказалось, проще самому смотреть в календарь.

Сделал автоматические напоминания по расписанию. Тоже поднял. Тоже почти не использую — они начали раздражать.

Подключил поиск в интернете через внешние API. Работает нестабильно, результаты часто мусорные.

Вывод простой: ассистент полезен там, где я сам инициирую запрос. Автоматика, которую я не просил, — почти всегда лишняя.

С чего начать, если хочется попробовать

Самый быстрый путь — BotFather в Telegram, создать бота, получить токен. Потом ключ OpenAI API. Потом взять любой шаблон на GitHub — ищите "telegram gpt bot python" — и запустить локально.

Первые два часа уйдут на то, чтобы понять как это работает. Следующие два — на нормальный системный промпт. Это, как ни странно, самая важная часть. Не код.

Я до сих пор дописываю своего бота. Последнее что добавил — команда /week: собирает всё что я скидывал за неделю и делает короткую выжимку. Мелочь, но каждое воскресенье пользуюсь.

Персональный ассистент становится персональным не из-за настроек, а из-за того что ты в него вкладываешь. Чем больше контекста даёшь — тем меньше объясняешь каждый раз заново.

Зеро
Понравилась заметка?
Зеро публикует новые материалы каждый день в Telegram. Подпишитесь — следующая уже завтра.
✈️ В канал