Устал от этих заголовков «XYZ‑нейросеть уничтожает ABC‑продукт». Когда мы уже перестанем уничтожать и начнем творить? Критическая масса нейронок достигнута. Переключите мозг, давайте перейдем к творению.

Как художник с «кривыми» руками, которому подключили «прямые» — я недавно провел схожую параллель с творением продуктов на базе кода при помощи нейронок. У меня постоянно в голове есть куча идей в зачатке. Что с ними делать?

Идея, как мы знаем по фильмам Нолана — это то, что нельзя просто вытравить, она будет жить в тебе, пока ее не воплотишь в той или иной мере. А что делать, если ты не программист? Есть конечно более, чем два решения, но напрашивались до недавних пор только эти два: закажи разработку или напиши как умеешь. Но все изменилось с приходом «вайб‑кодинга». И не спеши прикладывать руку к лицу. Я не собираюсь петь дифирамбы этому инструменту.

Эволюция подхода: от хаоса к системе

Для понимания масштаба изменений в моём подходе к разработке. Сначала я делал на коленке и кодил сразу в прод через чат с нейронкой и многоразовые Ctrl+C\Ctrl+V. Затем я приобщился к гиту и стал фиксировать изменения. А теперь я делаю по‑взрослому с версионностью, ветками и подключением нейронки напрямую в код. Скорость кодинга ускорялась с каждым этапом на порядок.

Оценивать применимость моих ботов и сложность архитектуры оставлю тебе. Первый мой бот умеет обрабатывать любые текстовые файлы в любом формате, нарезать их под техническое окно нейронки и производить любую обработку с файлом, заказанную ему естественным языком. Результаты склеивать и выдавать готовый результат.

Такие действия, как обычный перевод, художественный перевод, замена слов, адаптация на научный уровень, на детский стиль. Да что угодно. Любую задачу, которую нужно сделать с файлом, делает в три шага — описал, закинул файл, ждёшь. Никаких ограничений кроме фантазии и законодательства РФ. Бонусом — генерация картинок с разными популярными моделями.

Второй бот — моя мечта еще в донейронковские времена. Сделать имитацию собеседника в групповом чате. С нейронками эта мечта стала осуществимой. Бот имеет свой характер, сам себе его меняет в зависимости от ответов, настроения и рендома. Может отвечать на реплики, может не отвечать. Живой интеллект со своим характером и мнением. Бонусом — планировщик задач. Напоминальщик в группе или в личке о регулярных или единичных событиях. Постановка будильников обычным естественным языком, как просьба другану.

Третий — моя гордость. Скилл‑тренер и квест‑мастер в одном. Тщательно продуманные небанальные истории, которые разыгрывает этот ассистент с тобой в личке: от рендомно сгенерированных загадок до управленческих поединков с оценкой и результатами, что где тебе нужно подтянуть из софт‑скиллов. Под капотом многоэтапные и сложные промпты с инструкциями и рендомным характером событий, с отслеживанием рейтинга и прочее, прочее.

Что такое вайб-кодинг и кому он подходит

Вайб‑кодинг (от англ. vibe coding) — метод программирования, использующий большие языковые модели (LLM) и искусственный интеллект (AI) для генерации программного кода на основе описания задачи на естественном языке. (wiki)

Как и для любого инструмента, у вайб‑кодинга есть определенные требования к мастеру. Молоток, вот к примеру, хоть и могут все взять в руку, но гвозди ровно забивать тоже опыт нужен: как минимум в пару отбитых пальцев. А уж про работу со строительным пневмомолотком... даже продолжать не буду.

Так что, если ты не отдебажил ни разу в жизни ни одного приложения, не состоял в команде разработки и не довел продукт с нуля в продакшн в девелоперской компании, скорее всего, этот «молот» тебе будет даже не поднять.

Мой двухлетний опыт работы с нейросетями: три типа взаимодействия

Я уже 2 года на ежедневной основе общаюсь с различными нейронками из ТОП-3 по разным вопросам: разработка, аналитика, исследования, бизнес, здоровье, философия, психология, юридические вопросы и прочая бытовуха. Моё общение можно разделить на 3 типа: «орангутан просит банан», «деловой партнёр ищет поддержки» и «учёный ищет решение».

Тип 1: "Орангутан просит банан"

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

Если хочешь получить перевод на английский в деловом стиле с художественными отступлениями, достаточно написать: «пеервод строгй с водой — бла бла бла». Нет смысла исправлять опечатки, что‑то уточнять. Ну ты понял. Жутко, но работает. Не понимаю, то ли мы обучаем нейронку, то ли она нас разучивает. Всё же относительно.

Тип 2: "Деловой партнёр ищет поддержки"

Второй вариант где‑то четверть моего опыта. Здесь приходится применять опыт орангутана и реальный навык промптостроения. Глубокая аналитика, подтверждение гипотез, формулирование доводов, сложных текстов и т. д. На работе на любой должности это уже «база».

Гласно или нет, если ты кидаешь сложное письмо, не прогнав через нейронку — ну сорян, ты сам себе роешь яму. А если ты прогнал письмо через нейронку и сразу отправил, то ты яму уже вырыл и сам в неё прыгнул. Потому что нейронке что ПРИСЕЛ, что ПРИСЕЙЛ — одинаково. Ты же просил «причесать текст», вот тебе и «причесали».

Нет, ты нейронке не друг, это она для тебя другом может стать — «Пока я твой и ты крутой» (Джинни).

Аладдин: Нет. Это услуга. Другу.
Джинни: О, да, понимаешь, у джиннов на самом деле нет друзей.
Аладдин: Мне казалось, ты сказал, что у тебя никогда не было такого друга, как я.
Джинни: Нет, я же сказал, что у тебя никогда не было такого друга, как я!

Тип 3: "Учёный ищет решение"

Третий вариант самый сложный, он же самый прекрасный. Ты должен сочетать в себе и орангутана, вожделеющего банан, и партнёра наравне с нейронкой, и пытливого учёного, который хочет сотворить что‑то новое, а не просто переформатировать то, что уже есть.

Это твоя идея, которая не даёт тебе спать, которая заставляет тебя искать решение, используя всю информацию и любые инструменты, до чего ты дотягиваешься. Вайб‑кодинг лишь один из них.

Ключевые требования для воплощения идей: ТЗ, позиционирование, цель

И тут, не побоюсь сделать вывод, что для воплощения идей нужно: ТЗ, позиционирование и цель. А это уже, прости, SMART на управленческом. И вроде бы у нас нет ограничений в 3 желания, но если ты сформулируешь не то и не так, твои желания будут уводить тебя только дальше от цели.

При таком позиционировании ты должен мыслить и как РП, и как лид разработки, и как тестировщик, и как аналитик. Так в чём же тогда помощь нейронки? А вот как раз в «прямых» руках. Нейронки не терпят однобокого подхода. Вся надежда на AGI. Тогда встретимся и обсудим ещё раз.

Сейчас твой мозг напрямую зависит от результата, что выдаст мозг нейронный. И нельзя недооценивать это. Недалёки те, кто считают, что раз ты сделал что‑то с помощью нейронки, то грош тому цена и все лавры Маску или Альтману.

Практический опыт создания Telegram-ботов: быстрый путь к MVP

Я не раз буду обращаться к опыту написания ТГ‑ботов, так как это супербыстрый способ выйти на MVP. И вживую убедиться прям сразу в том, работает ли твой продукт, без фронта, API или каких‑то хитрых постманов. И так же быстро вывести его в прод.

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

Затем ты с помощью этого промпта делаешь «заказ» у другой нейронки, параллельно проверяя гипотезы в третьей. И вот такая вот команда, такой вот штат «сотрудников». За которым всё равно потом всё глазами перепроверять и руками перетыкивать. Такой вот SIMS для мамкиного стартапёра.

Неоптимально? Долго? Дорого? Некачественно? Обсуждаемо... Но если хочется «рисовать картины», почему я должен себе в этом отказывать, тем более что есть инструменты, компенсирующие недостатки и решающие рутину, которой я бы никогда не стал заниматься сам?

Пошаговое руководство: от идеи до MVP через хардкор

Итак, хочешь рецепт, как с помощью нейронок творить, а не генерить? Как я написал... ВСЁ... От идеи до MVP через бэкенд, фронтенд и API. Тебе как по хардкору или по лайту?

Давай по хардкору сразу. Предусловия: натренированная на твоём мышлении нейронка, среда разработки, учётка в гитхабе, бот в Телеграм.

Шаг 1: Берём идею

Берём идею. Без неё ничего не получится. Максимально абстрактную даже можно. Ложимся спать и размышляем.

Шаг 2: Партнёрское общение с ИИ

На утро выбираем лучшую нейронку, которая уже с тобой знакома, с твоим ходом мыслей. И общаемся с ней на уровне партнёра. Спрашиваем, как эта идея звучит, что в ней не хватает, есть ли аналоги и как они работают. Кидаете друг в друга ТЗшкой с уточнениями и деталями бизнес‑логики.

Шаг 3: Оценка масштаба и инвестиции в токены

Оцениваем, насколько глобальный проект. Если это что‑то чуть более сложное, чем написать бота, который будет возвращать полученный текст, но написанный в обратной последовательности, то имеет смысл занести в нейроночку пару десятков долларов, чтобы раскрыть все её возможности и избавиться от принудительной деградации мышления и обрезки токенов.

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

Шаг 4: Создание кодовой базы через greybox-сервисы

Составляем короткий, ёмкий, лаконичный промпт через нашу любимую нейросеть для инициации кодовой базы. Меня порадовал сервис Codex (не реклама, подписка на чат и на вайб‑кодинг единая — экономия). Это так называемый greybox‑сервис, который кодит полностью сам на основе промптов, выдаёт диффы.

Это хороший компромисс для тех, кто не хочет и строчки писать, но хочет изучать код под лупой. Про него я готов ещё пару статей написать, настолько вот он мне понравился. Подключаем сервис к гиту, даём ему всё что угодно, пусть балуется. Про безопасность решай сам. И кидаем в него промпт.

Шаг 5: Первое исполнение желания

Твоё первое желание исполнено. Ровно настолько, насколько ты его сформулировал. Поверь, это будет реально рабочий код с подключением необходимых библиотек, соблюдением инструкций и контрактов сервисов.

Если получилось не то, значит 100% проблема в тебе. Либо у тебя ОЧЕНЬ амбициозный проект, либо ты не указал какую‑то для тебя очевидную, а для нейронки нет, деталь. В первом случае дели на несколько частей поскромнее. Во втором — вернись на пару шагов назад и подойди к вопросу как архитектор. Поверь, лучше это сделать сейчас, чем рефакторить на полпути к финишу.

Шаг 6: Локальный запуск и развёртывание

Запусти локально. Это можно сделать также при помощи двух нейронок: у одной спрашиваешь, как это делается в целом, а другой говоришь написать пошаговую инструкцию и положить сразу в дистрибутив для локального развёртывания и для развёртывания на будущее на VDS. На выходе исчерпывающий гайд для домохозяек. При подключении к ТГ достаточно завести бота в @botfather и уже через полчаса твой бот будет с тобой общаться через телегу.

Шаг 7: Реальность итераций — 538 коммитов на одного бота

Хочется написать... profit! Потому что далее может быть умопомрачительное количество итераций отладки, уточнений, дополнений проекта. Мне на 1 бота в течение месяца потребовалось 538 коммитов. Если прикинуть, что в среднем на одну задачу с отладкой и корректировками нужно 3–6 коммитов, получается от меня требовалось порядка 100 детализированных постановок для вайб‑сервиса.

Это от идеи до прода, куда не стыдно пригласить. Очень рекомендую разобраться в ветках, коммитах, пулл‑реквестах. Раньше я обходился без этого, но теперь для нас с нейронкой понятие «отвести ветку», «смёржить реквест» это то, с чего мы начинаем и чем завершаем этап.

Шаг 8: Структура правильных постановок задач

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

Каждая новая задача должна на 20% состоять из упоминания уже существующих механизмов, которые будут нужны для бизнес‑кейса, на 60% из описания доработки и 20% примера того, что ты ожидаешь на выходе.

Шаг 9: Раннее тестирование пользователями

Приглашай раньше, не всегда все корнер‑кейсы идут в голову и их удаётся отловить самому. Обычно первый же посетитель вырубает твоего бота с одного нажатия клавиатуры. Так что в этот момент помогут только грамотно расположенные логи и режим отладки.

Шаг 10: Определение момента завершения

Самое удивительное, что этот процесс имеет сходимость. Кажется, что это бесконечность, но нет, это когда‑то закончится. Как и художник, который пишет картину, ты должен сам определить «когда». Доводить до совершенства не нужно. Сделай чек‑лист для себя тех функций, на которых пора завершить. Как только все галочки будут проставлены, займись проверками.

На этом ещё повылезает работы незапланированной. Поправь очевидные косяки и позаботься об ИБ. Нейронка хорошо понимает общими фразами: «защити от инъекций и переполнений места, куда может вводить текст пользователь, добавь логические ограничения на уровне кода и БД».

Шаг 11: Архитектурные решения и база данных

Не удивляйся, если потребуется по сто раз пересоздавать БД и делать чистовые запуски. Лучше переделать сейчас, чем потом писать скрипты миграции. Попробуй заглянуть в будущее, захочешь ли масштабировать, расширять возможности, API, монетизировать? Проработай с нейронкой вопросы «как лучше сделать ядро универсальным», «какие функции лучше закешировать». Не бойся задавать ей вопросы, ответы на которые отправляй ей же на исполнение.

Шаг 12: Отладка сложных ошибок

Буквально сейчас сижу над непрекращающейся ошибкой в логике бота, уже коммитов 15 потратил с разными формулировками и никак не фиксится. Что делаем, задаём прямой вопрос «опиши, почему эта функция не даёт такой ответ». Нейронка описывает по шагам человеческим языком логику с указанием задействованных в цепочке функций.

Возвращаешь ей перечень функций, который надо тщательно залогировать и понять причину непрохождения по всей цепочке. И так по чуть‑чуть докапываешься до истины.

Шаг 13: Интеграция с нейросетями в продукте

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

Это заложит в твой продукт на долгие годы перспективу работы с чем угодно, от бесплатных до суперпродвинутых версий онлайн‑нейросетей. Сможешь в моменте переключаться и разделять доступ для нищебродов или королей. Получать соответствующий качеству результат.

Ключевые советы из практического опыта

  1. Держи в уме техническое окно токенов, которые нейронка адекватно переваривает. Особенно при передаче логов старайся не писать важные вещи в конце.

  2. Всегда приводи примеры того, что ты хочешь увидеть. Сначала описание, затем как это должно выглядеть. Визуализируй нейронке, если это возможно.

  3. Пропиши в сервисе вайб‑кодинга глобальные настройки: давать описание всем изменениям в коде, делать автотесты, логировать.

  4. Очень рекомендую разобраться в ветках, коммитах, пулл‑реквестах. Попрактиковаться на каком‑то примитивном проекте: иметь стабильную main ветку, отводить для добавления новых функций, мёржить в main, решать конфликты и стейджить и т. д.

  5. При постановке задачи придерживайся устоявшейся терминологии, точные названия сущностей, компонентов и имена таблиц.

Безопасность и персональные данные

Юридические аспекты хранения персданных оставлю на следующие статьи, если интересно будет обсудить. Но если коротко — даже userID уже персональные данные. Храни только самое необходимое. Всё остальное в кеши и логи на ротацию.

Заключение: от генерации к творению

В целом продукты, которые бизнес‑логику переносят на откуп нейросети, очень удобны, но насколько они удобны, настолько и непредсказуемы. О том, как писать бизнес‑логику боту на основе работы нейросети, я очень хочу рассказать, но тут уже кажется бумага заканчивается и надо финишировать.

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

Этот вывод написала полностью нейронка. Даже не знаю к чему. Но звучит вроде неплохо, оставлю.

Комментарии (0)