Я не программист. Моя стихия: управление проектами, тексты и коммуникации. Раньше мне казалось, что создание Telegram-бота с подключенной нейросетью: это удел людей, которые годами изучали код.
Но недавно я успешно запустил бота, который генерирует изображения с помощью продвинутой модели Nano Banana 2. Оказалось, что сегодня вам не нужно заучивать синтаксис языка Python. Достаточно понимать логику, знать о подводных камнях, а сам код за вас напишут ChatGPT или Gemini. Главное: правильно ставить им задачи.
В этой статье я собрал весь свой опыт в единый пошаговый гайд. Мы пройдем путь от пустой папки на компьютере до запуска полноценного продукта на удаленном сервере.
Шаг 1: Фундамент и ключи доступа
Для начала нашему боту нужна база в Telegram и «мозги» на серверах нейросети.
- Регистрируем бота: Идем в Telegram к официальному @BotFather, отправляем команду
/newbot, придумываем имя и получаем API-токен (длинную строку символов). - Получаем доступ к ИИ: Для генерации картинок я использую платформу kie.ai (она стабильно работает и дает доступ к модели
nano-banana-2). Регистрируемся там и в личном кабинете создаем свой API-ключ.
Главная проблема новичков:
Утечка ключей. Никогда не вставляйте токены прямо в основной текст вашего кода (файл
main.py). Если вы случайно скинете этот код в публичный чат или на GitHub, боты-шпионы найдут ключи за секунды, и ваш баланс у провайдера нейросетей спишут в ноль.Решение: Создайте в папке с проектом файл с названием
.env. Это ваш невидимый сейф. Впишите туда:BOT_TOKEN=ваш_токениKIE_API_KEY=ваш_ключ. В основном коде просто просите библиотекуpython-dotenvдоставать ключи оттуда.
Шаг 2: Рабочая среда и правильные библиотеки
Забудьте про встроенный «Блокнот». Скачайте бесплатный редактор кода VS Code (Visual Studio Code). Откройте в нем пустую папку вашего будущего проекта.
Далее мы будем использовать ИИ как нашего персонального разработчика. Вы просто пишете промпт (запрос), а он выдает код. Но чтобы код работал, нужно задать правильные рамки.
Что нужно просить у ИИ-кодера:
- Писать код на Python с использованием библиотеки aiogram 3.x. Она работает асинхронно: бот не зависнет, если ему напишут 100 человек одновременно.
- Использовать библиотеку aiohttp для отправки запросов к kie.ai.
Главная проблема:
Конфликт версий. Если просто начать скачивать библиотеки на компьютер, они перемешаются. Бот перестанет работать через неделю из-за обновлений.
Решение: Попросите вашу нейросеть-помощника написать команду для создания «виртуального окружения» (venv). Это изолированная папка внутри проекта, где будут храниться библиотеки только для этого бота.
Шаг 3: Память бота (База данных)
Бот без базы данных: это рыбка с кратковременной памятью. Он не запомнит, кто к нему обращался, и вы не сможете ограничить количество бесплатных запросов (а за каждую генерацию на kie.ai вы платите из своего кармана).
Попросите ИИ добавить в код базу данных SQLite. В ней нужно создать таблицу пользователей: их ID, баланс, счетчик использований за сегодня и дату последнего захода.
Главная проблема:
Блокировка базы (Database is locked). Если использовать стандартную библиотеку
sqlite3, бот попытается записать двух пользователей одновременно и выдаст ошибку.Решение: Строго укажите ИИ использовать асинхронную библиотеку aiosqlite. Она умеет выстраивать запросы в аккуратную очередь, и бот будет работать стабильно.
Шаг 4: Логика диалога (Машина состояний)
Представьте, что бот спрашивает: «Что нарисовать?». Вы отвечаете: «Красную машину». Как бот поймет, что это ответ на его вопрос, а не просто сообщение?
Для этого используется FSM (Машина состояний). Вы просите нейросеть прописать статусы. Например, waiting_for_prompt. Когда пользователь нажимает кнопку «Создать фото», бот переводит его в этот статус. Теперь любой текст будет восприниматься как задание для генерации.
Главная проблема:
Пользователь застрял. Человек передумал генерировать картинку, но бот упорно ждет текст и не реагирует на другие команды.
Решение: Обязательно попросите ИИ добавить кнопку «Отмена» или команду
/cancel, которая сбрасывает состояние пользователя и возвращает его в главное меню.
Шаг 5: Общение с нейросетью (API запросы)
Теперь нашему боту нужно научиться отправлять ваши пожелания в сервис kie.ai и получать оттуда готовые картинки. Процесс генерации, особенно в сложных моделях вроде Nano Banana 2, занимает время.
Поэтому логика работы должна быть такой (прямо так и формулируйте задачу для своего ИИ-помощника при написании кода):
- Создание задачи: Бот отправляет текстовый промпт в kie.ai и получает в ответ
task_id(номер задачи), а не саму картинку. Пользователю в этот момент бот пишет: «Рисую шедевр, подождите 30 секунд…». - Проверка статуса (Polling): Бот начинает раз в 3–5 секунд стучаться в API kie.ai с вопросом: «Задача с таким-то
task_idуже готова?». - Получение результата: Как только статус меняется на
success, бот забирает ссылку на картинку и отправляет её в чат пользователю.
Главная проблема:
Зависание при ошибках API. Серверы нейросетей иногда падают или перегружаются. Если бот не дождется ответа и в коде не прописана обработка ошибок (try/except), он просто «умрет» (выключится).
Решение: Требуйте от ИИ-кодера прописывать обработку исключений. Если сервер kie.ai вернул ошибку или картинка не сгенерировалась за 60 секунд, бот должен прервать попытки, извиниться перед пользователем («Серверы перегружены, попробуйте позже») и продолжить работу, а не закрываться.
Шаг 6: Работа с фото и S3-хранилищем (Продвинутый уровень)
Если вы хотите, чтобы бот не только рисовал по тексту, но и обрабатывал фотографии пользователей (например, стилизовал портреты или менял лица), возникает новая сложность.
Вы не можете напрямую отправить фото из Telegram в kie.ai. Сначала фото нужно где-то сохранить в интернете и получить на него публичную ссылку, которую уже и «скормить» нейросети. Хранить картинки на самом сервере бота быстро станет дорого и неэффективно.
Решение — объектное хранилище S3. Это облачный диск (я использую S3 от российского хостинга Beget), который идеально подходит для картинок.
Логика (объясняем ИИ-кодеру):
- Пользователь присылает фото в Telegram.
- Бот скачивает его к себе во временную папку.
- Бот загружает фото в S3-облако (используя библиотеку
boto3) и получает прямую ссылку. - Временный файл на сервере бота удаляется, чтобы не забивать память.
- Ссылка из S3 отправляется в kie.ai вместе с текстовым заданием пользователя.
Шаг 7: Запуск на сервере (Деплой на FirstVDS)
Когда код полностью готов и протестирован на вашем компьютере, бота нужно переселить в интернет. Если закрыть ноутбук — бот отключится. Нам нужен сервер, который работает 24/7.
Я арендую недорогие виртуальные серверы (VPS) на платформе FirstVDS. Базового тарифа на операционной системе Ubuntu (Linux) для старта хватит с головой.
Алгоритм переезда (Деплой):
- С помощью программ (например, FileZilla или MobaXterm) вы переносите файлы вашего бота на арендованный сервер FirstVDS.
- В терминале сервера вы снова создаете виртуальное окружение и устанавливаете все библиотеки из файла
requirements.txt(ваш ИИ-помощник подскажет, как его сгенерировать).
Главная проблема:
Бот выключается при закрытии терминала. Если просто запустить бота на сервере командой
python main.py, он остановится, как только вы закроете программу на своем компьютере.Решение:
Использование systemd. Это системная служба Linux. Вы просите свой ИИ-помощник: «Напиши мне инструкцию, как создать файл службы .service для моего бота на Ubuntu». ИИ даст вам пару строчек конфигурации. Вы создаете этот файл на сервере FirstVDS, и теперь система Linux сама будет запускать вашего бота в фоновом режиме. Более того, если бот случайно упадет из-за критической ошибки,
systemdавтоматически его перезапустит.
Что в итоге?
Создание Telegram-ботов с нейросетями больше не является закрытым клубом для программистов. Сегодня ИИ — это ваш личный senior-разработчик. Ваш главный навык теперь заключается не в том, чтобы заучивать синтаксис кода, а в том, чтобы уметь разбивать большую задачу на мелкие шаги, грамотно ставить ТЗ нейросети и не бояться ошибок в консоли.
Если вам близок такой подход к технологиям и вы хотите первыми узнавать о новых неочевидных фишках в мире ИИ и автоматизации — заглядывайте в мой канал. Там я делюсь своими реальными проектами и обучалками по нейросетям.
Подписывайтесь, будем приручать технологии вместе: Медяный пишет | MAX








