Знакомые просят меня скинуть «того бота», который умеет писать код и переводить тексты. Я кидаю ссылку на ChatGPT или Claude. Они говорят: «нет, в Telegram, чтобы было в одном месте».
Понял. Запустил.
Потратил на это два вечера. Собрал рабочую связку Telegram-бот плюс Claude API. Теперь у меня в чате с самим собой живёт ассистент, который помнит контекст беседы, умеет в код, переводит нормально и не орёт рекламой. Расскажу, как это сделать — пошагово, честно и без маркетинговой шелухи.
Зачем это вообще нужно
Можно просто открыть веб-версию ChatGPT. Работает. Но у Telegram-бота есть пара киллер-фич, которые меня убедили.
Привычный интерфейс. Я и так сижу в Telegram полдня. Не надо переключаться на отдельную вкладку, логиниться, смотреть рекламу в бесплатной версии. Написал — получил ответ.
Системные промпты. Можно запихнуть в системный промпт свою роль, стиль общения, базу знаний — и бот будет отвечать именно тебе, а не генерировать усреднённый ответ для всех.
Кастомизация. Хочешь — прикрути память. Хочешь — подключи веб-поиск. Хочешь — сделай бота, который раз в день кидает дайджест новостей. Всё в одном чате.
Из чего это состоит
Технически нужны три вещи.
Telegram-бот. Создаётся через BotFather за минуту. Получаешь токен — длинную строку символов, которая открывает доступ к API.
Провайдер ИИ. OpenAI API, Anthropic Claude API, Google Gemini API — любой. Платишь за токены, получаешь доступ к модели. Claude 3.5 Sonnet обходится мне примерно в 2–3 доллара в месяц при умеренном использовании. GPT-4o чуть дороже. Можно и бесплатно — через Groq или Google AI Studio, там лимиты щедрее.
Раннер бота. Программа, которая принимает сообщения из Telegram и отправляет их в API. Вариантов масса: от простого Python-скрипта на aiogram до готовых оболочек вроде ChatGPT-Telegram-Users.
Как я делал (и где наступил на грабли)
Сначала я пошёл сложным путём — решил написать всё сам на Python. Ставлю aiogram, подключаю OpenAI SDK, делаю эхо-бота, потом допиливаю.
Написал. Запустил. Получил работающего бота. Добавил историю сообщений — чтобы контекст сохранялся. И тут началось: хранить историю, обрезать при достижении лимита токенов, формировать промпт заново.
Написал костыль на SQLite. Он работал, но через день бот начал «забывать» начало разговора и отвечать странно. Оказалось, я неправильно считал токены — русский текст жмётся хуже английского, и мой приблизительный подсчёт по символам давал ошибку процентов на тридцать.
Забил. Взял готовый опенсорс-проект.
Готовые решения — быстро и без боли
Если не хочешь писать код, есть готовые штуки.
ChatGPT-Telegram-Users — один из самых популярных проектов на GitHub. Ставится на любой сервер, настраивается через переменные окружения, поддерживает множество моделей (GPT-4, Claude, Gemini, локальные через Ollama). Есть режим group chat, есть команда /retry, есть memory.
Ставится буквально так: клонируешь репозиторий, копируешь .env.example в .env, вписываешь токен бота и API-ключ, запускаешь через docker compose up. Десять минут — и работает.
Я в итоге остановился на нём. Добавил свою систему промптов: прописал в переменной ASSISTANT_SYSTEM_PROMPT, что бот — это мой личный ассистент, который отвечает коротко, по делу и на «ты».
Что реально умеет делать такой бот
Сначала я думал, что буду использовать его для код-ревью и переводов. Потом обнаружил, что самое ценное — совсем другое.
Быстрые справки. Написал боту: «что такое RAG и чем отличается от fine-tuning» — получил краткий ответ за 10 секунд. Не надо открывать браузер, не надо читать статью на Хабре.
Структурирование мыслей. Скидываю боту сырой текст — просьбу, письмо, заметку. Он возвращает чистую структуру. Иногда это реально экономит время.
Код и отладка. Скидываю ошибку — он предлагает причину и вариант решения. Не идеально, но часто попадает.
Память. Завёл файл system_prompt.txt, где описал свой стиль работы, ключевые проекты, предпочтения. Теперь бот помнит, над чем я работаю, и не задаёт лишних вопросов.
Грабли, на которые наступил
Без проблем не обошлось.
Первая — цены. API стоит денег, и если поставить бота в группу, им начнут пользоваться все. Бюджет улетает за неделю. Решение: лимиты на пользователя, мониторинг через OpenRouter или логирование трат.
Вторая — токсичность. Бот в публичной группе быстро превращается в генератор случайного бреда, если кто-то начинает его дёргать на каждом сообщении. Поставил ограничение: команда /reset для очистки истории, и всё.
Третья — цензура. Модели крупных провайдеров отказываются отвечать на часть запросов. Claude в этом плане мягче, чем GPT-4o, но всё равно бывают отказы на, казалось бы, безобидные вещи. Если нужна полная свобода — ставь локальную модель через Ollama. Она медленнее и глупее, но честнее.
Сколько это стоит и стоит ли оно того
Прямые расходы: если не поднимать сервер, а запускать на своём компьютере — 0 рублей за инфраструктуру, только плата за API. При моём использовании — 2–3 доллара в месяц. Это меньше, чем подписка на ChatGPT Plus.
Время на настройку: готовое решение и не допиливать — час. Писать самому — вечер, два.
Лично мне ассистент в Telegram заменил сразу несколько привычек: отдельное окно браузера с ChatGPT, заметки для черновиков, и даже часть рабочих мессенджеров, где я раньше спрашивал коллег «а как лучше сформулировать».
Не сказать что это изменило жизнь. Но каждый день доставать телефон и просто писать вопрос в чат — это заметно удобнее, чем любой другой вариант. Попробуй, если ещё не.
