Как стать автором
Обновить

Я не разработчик ботов, но с помощью AI создал Telegram-бота для изучения английского (Duolingo уже может нервничать)

Уровень сложностиПростой
Время на прочтение5 мин
Количество просмотров5.3K

Привет! Меня зовут Евгений. Я — AQA-инженер на Python в Devscribed. Недавно решил проверить, насколько далеко можно зайти в разработке, не обладая глубокими знаниями в программировании, но используя современные AI-инструменты. Что из этого вышло?

Спойлер

За ~ 30 часов родился полноценный Telegram-бот для изучения английских слов.
И да — я кайфанул!

UI LexiGo бота
UI LexiGo бота

🚀 От идеи к реализации

Все началось с ролика на YouTube-канале АйТиБорода, где Лекс Картынник за 5 минут создал поисковик "почти как у Google" с помощью AI. Это вдохновило меня попробовать создать свой IT-продукт с помощью AI, заодно проверить, на что сейчас способны нейросетки.

Скиллов в библиотеках, вроде aiogram, у меня не было. В работе я использую AI для рефакторинга кода и написания вспомогательных скриптов, но до этого момента не думал, что можно с нуля сгенерировать полноценное приложение (пусть это пока и бот).

Пора “нанимать” команду.

Я назначил ChatGPT бизнес-аналитиком и попросил его составить список фич для бота. Через пару минут у меня был план.

Первой сложностью стало предложение ChatGPT реализовать фичу отслеживания прогресса изучения слов.

Стало понятно, что без базы данных не обойтись. Это был вызов, но и это был самый точный способ протестировать возможности сегодняшнего AI.
Идем по проторенной дорожке. Как и Лекс Картынник, будем юзать тулу из его видоса — Cursor IDE.

🛠️ Используемые AI-инструменты

  • Cursor IDE: AI-ориентированная среда разработки с встроенным ассистентом.

  • Claude 3.5 Sonnet: LLM от Anthropic, используемая в Cursor для работы ассистента.

  • GitHub Copilot: помощник от Microsoft с моделькой GPT-4.0 под копотом, который помогал в отладке и исправлении багов, особенно когда Cursor был перегружен, так как я использовал бесплатный тариф.

  • ChatGPT — главная движущая сила, мой бизнес-аналитик, архитектор, программист.

То, как я создал бота, называется вайбкодингом. Ты не знаешь фреймворк, но знаешь, что должно происходить. Это "просто скажи, что ты хочешь".

🤖 Вайбкодинг: новый подход к программированию?

Термин «вайбкодинг» ввел Андрей Карпати в 2025 году — это когда AI пишет код на основе твоих текстовых описаний.

Примеры запросов, которые я использовал:

  • "Добавь кнопку с прогрессом для отображения процента выученных слов для каждого уровня"

  • "Добавь переключатель языка на русский и переводи все сообщения и навигацию в зависимости от выбранного языка".

  • "Добавь кнопку Back со страницы с карточкой слова для возврата к уровням слов" и т.п.
    Он писал. Я тестировал. Где ломалось — объяснял, что не так.

🐢 А где боль?

Боль, конечно, была.
У котика боли, у собачки боли, а у того, кто юзает AI — не боли.

AI не думает о производительности.
Загрузка нового слова при переходе между словами могла длиться 3-4 секунды.
Решение нашлось исходя из опыта. Попросил ИИ добавить логи по времени запросов и времени их выполнения. Прокликал все фичи, снял в терминале логи → скормил их AI → проблема была и после расшифровки логов ассистент понял ее и оптимизировал код.

AI не всегда держит контекст.
Приходилось уточнять, указывать: “эта кнопка работает, но теперь не отображается вот та, проверь функцию-обработчик выученных слов”.
Зато если чётко объяснить — исправляет без споров.

Выбрал неоптимальную базу данных.
Начали с SQLite, потому что мне так посоветовал мой архитектор-chatGPT. Всю БД создал ИИ, я только объяснил, какие таблицы и зависимости должны быть под капотом. Потом оказалось SQLite далеко не лучшее решение и не поддерживается cloud платформами для деплоя чат-бота. Но тут я сам виноват, не объяснил ИИ, где буду в будущем деплоить свой бот еще на стадии проектирования. Cамый распространенный вариант СУБД — это MySQL или PostgreSQL. Так как я активно работаю с PostgreSQL, выбор пал в сторону этой СУБД. Пришлось с помощью ИИ конвертировать SQLite в PostgreSQL.

📚 Генерация контента: 3000 слов — вручную? Не, ну вы чего!

Писать вручную 3000 слов с транскрипцией, переводом и примерами? Слишком муторно. Задача — выжать максимум из AI. Я решил сгенерировать базу с помощью API Deep Seek. Сначала нужно было найти слова. 3000 слов в PDF найти несложно. Так я с помощью скрипта, написанного ассистентом, извлек слова из PDF в Excel.

Затем я попросил написать скрипт, который подключится к API AI и сгенерирует весь контент. Выбор пал на Deep Seek, так как он очень дешевый. С первого раза скрипт не заработал, пока я не скормил часть доки с Deep Seek Platform, как подключиться к апишке. И магия — с первого раза рабочий скрипт.

Нам предстояло на основании столбца с английскими словами в Excel сгенерировать в другие столбцы транскрипцию, перевод, пример использования и перевод примера.
Закинув 2 бакса, я не ожидал, что на все тесты и полную генерацию потрачу всего 10 центов и 500000 токенов. Правда генерация всего контента заняла 3-4 часа.

Заполнил базу данными из Excel также с помощью скрипта, написанного AI.

Бэкграунд важен, но не критичен

Если быть честным, то айтишный опыт безусловно облегчил и ускорил разработку: работа с БД, API и автотестами, все это помогает понимать друг друга и путем делалога находить более простой и быстрый способ решения. К примеру, при фиксе багов я мог делать определённое ревью, и если было очевидно, что ИИ удаляет целые блоки кода, которые никак не связаны с текущей задачей, то такую работу не принимал и просил проверить или переделать. Думаю такой подход сэкономил мне не мало времени. Смог бы я сделать то же самое, не общаясь с AI на понятном друг другу языке? Думаю, в сегодняшних реалиях да, просто потребовалось бы чуть больше времени, тот же ChatGPT провел ликбез в технологиях и посоветовал, какие ресурсы поресерчить с целью получить минимальную базу, а может и найти решение методом тыка, если ты вообще не хочешь вникать в процесс.

🧱 Окружения и cloud solution

Время подходит к продакшену, нужен удобный и недорогой солюшн для деплоя бота. Просим ChatGPT рассказать про топ платформы для размещения бота. На основании краткой сравнительной характеристики представленных вариантов и после некоторого минимального ресерча остановился на Railway как простой платформе с адекватным ценником.

За $5 в месяц я развернул бота и две базы данных (тестовую и продовскую).

Очень дружелюбный UI Railway
Очень дружелюбный UI Railway

Основной принцип при вайбкодинге: не ломать то, что уже работает.

Очень сильно выручает разделение сред на тестовую для отладки новых фич и продовскую для пользователей. ИИ помог разнести окружение в коде. Так как AI не мало багует уже рабочий код, то золотое правило, которое я для себя вывел: новая фича или багфикс — полный регресс на тестовом энве. Если всё гуд — коммитим и пушим в прод. Если игнорировать это правило, то баги потом незаметно оккупируют всё приложение, несмотря на то, что ИИ держит контекст. Всё равно иногда творится дичь, но не исключаю, что я мог писать не совсем подробные промпты. Разработчики AI, вот вам новая фича: под каждым промптом показываете качество его составления в процентах, что бы приучать нас писать их грамотно и меньше нагружать ваши сервера)

Railway позволяет настроить автодеплой через GitHub после пул-реквеста. Собственно, что я и делал, когда убеждался в рабочем состоянии тестового окружения, то заливал новые ченжи через ПР в продовскую ветку.

> 1700 строчек кода, 85 коммитов, 14 PR-ов.

🎯 Что умеет telegramm-бот

  1. Изучение слов:

    • Деление на уровни сложности: Beginner, Intermediate и т. п.

    • Показ слова, транскрипции, примеры.

    • Перевод по запросу.

    • Кнопки «Следующее слово» и «Отметить как выученное».

    • Показ прогресса в процентах.

  2. Словарь и выученные слова:

    • Просмотр всех слов уровня.

    • Отдельный список выученных слов.

  3. Мультиязычность:

    • Интерфейс и кнопки на английском и русском языках.

  4. Навигация и UX:

    • Кнопка возврата в главное меню.

    • Переход между разделами.

🧩 Вопрос, который скоро будет мучать всех

Я — кодер? Программист? Или просто оператор AI?

Я не знаю всех нюансов asyncio. Я не умею руками настраивать PostgreSQL.
Но у меня есть продукт. С рабочим функционалом, базой и пользователями.

AI не заменил программиста. Он убрал ранее непреодолимую стену между идеей и реализацией.

Есть ощущение, что программирование понемногу превращается из профессии в навык мышления. И это открывает двери для всех сделать свою жизнь лучше, а может даже внести вклад в общество. Мы находимся внутри интереснейшей трансформации, которую уже не остановить, но можно меняться вместе и использовать новые возможности как трамплин для личного роста.

🔗 Lexigo — Telegram-бот для изучения английских слов.

Теги:
Хабы:
+7
Комментарии10

Публикации

Ближайшие события