Что такое вибрационная кодировка?

MIT Technology Review объясняет: Позвольте нашим авторам разобрать сложный и запутанный мир технологий, чтобы помочь вам понять, что будет дальше.Вы можете прочитать больше из этой серии здесь.

Когда соучредитель OpenAI Андрей Карпаты, с восторгом взявшись за X в феврале, опубликовал пост о своем новом хобби, он, вероятно, не подозревал, что собирается создать фразу, которая будет охватывать целое движение, steadily gaining momentum по всему миру.

«Существует новый вид кодирования, который я называю ‘vibe coding’, когда вы полностью поддаетесь настроению, принимаете экспоненты и забываете о том, что код вообще существует», — сказал он. «Я строю проект или веб-приложение, но это не совсем кодирование — я просто вижу что-то, говорю что-то, запускаю что-то и копирую, вставляю, и это в основном работает». 

Если это звучит очень по-другому по сравнению с изучением строк кода, это потому, что Карпаты говорил о особом стиле кодирования с помощью ИИ. Его слова отозвались в сердцах разработчиков программного обеспечения и энтузиастов-любителей. За месяцы, прошедшие с его поста, он стал причиной статей размышлений и увлеченных дебатов в интернете. Но что такое vibe coding? Кому это полезно и какое у него вероятное будущее?

Так что это такое?

Чтобы действительно понять vibe coding, важно отметить, что хотя термин может быть новым, технологии кодирования за ним стоят не новы. В последние несколько лет многофункциональные чат-боты, такие как Claude от Anthropic, ChatGPT от OpenAI и Gemini от Google DeepMind, стали лучше писать код для разработки программного обеспечения, включая игры, веб-сайты и приложения. Однако именно недавнее появление специально созданных ИИ-ассистентов по кодированию, включая Chat от Cursor (ранее известный как Composer) и GitHub Copilot, действительно привело к возникновению vibe coding. Эти ассистенты могут предсказывать в реальном времени, что вы пытаетесь сделать, и предлагать интуитивные рекомендации, делая создание программного обеспечения проще, чем когда-либо, даже если вы никогда не писали код раньше.

«За последние три или четыре года эти инструменты автозаполнения ИИ стали все лучше и лучше — они начинали с завершения отдельных строк кода и теперь могут переписывать целые файлы для вас или создавать новые компоненты», — говорит Баррон Уэбстер, дизайнер программного обеспечения в компании Sandbar. «Объем того, что вы можете отпустить на волю машины, постоянно растет со временем». 

… а что не относится к vibe coding?

Но не все кодирование с помощью ИИ является vibe coding. Чтобы действительно заниматься vibe coding, вы должны быть готовы позволить ИИ взять полный контроль и воздерживаться от проверки и прямого изменения кода, который он генерирует в процессе — поддаваясь настроению. В более длинном посте Карпаты объяснил, что, когда он занимается vibe coding, он легко принимает все рекомендации, которые предлагает инструмент Cursor, и доверяет его способности исправлять собственные ошибки. «Когда я получаю сообщения об ошибках, я просто копирую их и вставляю без комментариев, обычно это решает проблему», — написал он. «Иногда LLM не может исправить ошибку, так что я просто обхожу ее или запрашиваю случайные изменения, пока проблема не исчезнет».

По сути, vibe coding — это взаимодействие с базой кода через подсказки, так что роль инженера заключается лишь в том, чтобы общаться с инструментом и анализировать его результаты, объясняет Сергей Целовальников, инженер-программист в платформе дизайна Canva, который регулярно использует инструменты, помогающие ИИ. «Андрей немногоInfluencer, и он определил этот термин очень намеренно», — говорит он. «Он просто опубликовал шутку, но поскольку он достаточно точно подчеркнул то, что происходит в отрасли, это просто разлетелось».

Подходит ли vibe coding для моего проекта?

Люди, скорее всего, получающие выгоду от vibe coding, делятся на два лагеря, говорит Тобин Саут, исследователь безопасности ИИ в MIT Media Lab. Один — это люди, такие как Карпаты, которые уже хорошо разбираются в кодировании и знают, как исправлять ошибки, если что-то пойдет серьезно не так, если они используют его для создания чего-то важного; другой — это абсолютные новички с небольшим или отсутствующим опытом кодирования. «Я бы определил vibe coding как наличие видения, которое вы не можете осуществить, но ИИ может», — говорит он.

Основная привлекательность vibe coding заключается в том, насколько это легко и доступно. Инструменты помощи ИИ значительно ускоряют процесс создания кода и разработки небольших проектов, таких как прототип веб-сайта, игры или веб-приложения, чем это было бы для человека. Но хотя этот бездействующий подход может иметь смысл при создании таких низкостенных и простых цифровых продуктов, он гораздо рискованнее в более крупных и сложных системах, где ставки значительно выше. Поскольку инструменты кодирования на основе ИИ работают на LLM, код, который они генерируют, так же вероятно, может содержать ошибки, как и ответы, выдаваемые чат-ботами на основе LLM. Это является большой проблемой, если то, что вы пытаетесь закодировать, требует доступа к большим базам данных информации, мер безопасности для защиты этих данных, большому количеству пользователей или данных, вводимых пользователями, говорит Целовальников.

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

Это особенно актуально для не-программистов. Лео, пользователь X и сторонник vibe coding, узнал об этом на собственном опыте, когда он опубликовал о том, что построил SaaS-приложение (программное обеспечение, работающее через интернет, а не загружаемое на устройство пользователя) исключительно с помощью Cursor в прошлом месяце. Пост сразу привлек внимание озорных интернет-пользователей, которые моментально начали искать дыры в безопасности его сервиса. «Ребята, на меня нападение», — написал он через два дня. «Я не технический, так что это занимает у меня больше времени, чем обычно, чтобы разобраться. На данный момент я прекращаю делиться тем, что я делаю, публично в X. Там просто какие-то странные люди».

В конечном итоге, хотя vibe coding может помочь превратить нечеткую идею для веб-сайта или игры в реальность, он не может сделать ее надежной или безопасной. Но уже существуют множество инструментов, чтобы это сделать, которые помогут вам с созданием баз данных и внедрением мер аутентификации. Так что, хотя вы не можете создать реальные, ценные, безопасные, надежные приложения с помощью vibe coding, это может быть полезный старт, если вы будете осторожны, говорит Саут.

Он верит, что ИИ-ассистенты по кодированию будут становиться все более способными, а веб-хостинг-компании будут продолжать интегрировать ИИ в свои инструменты, чтобы сделать их более удобными в использовании, что приведет к снижению барьеров для создания программного обеспечения. «Это значительно снижает стоимость производства программного обеспечения в экспоненциальной степени», — говорит он. «Мир должен будет адаптироваться к этой новой реальности. Она никуда не уходит».

Перейти к источнику
AI Daily

Ответить

Ваш адрес email не будет опубликован. Обязательные поля помечены *