"Vibe coding" é uma abordagem para o desenvolvimento de aplicativos que envolve uma dependência forte de um grande modelo de linguagem (LLM) para gerar código.
Após ler este artigo, você será capaz de:
Copiar o link do artigo
Vibe coding é um método de desenvolvimento de software que incorpora fortemente o uso de grandes modelos de linguagem (LLMs) para gerar código. O termo "vibe coding", que significa codificação assistida por IA, foi cunhado por Andrej Karpath, cofundador da OpenAI, em um post de fevereiro de 2025 no X:
Há um novo tipo de codificação que eu chamo de "vibe coding", em que você cede totalmente às vibes, adota exponenciais e se esquece até mesmo de que o código existe. É possível porque os LLMs (por exemplo, Cursor Composer w Sonet) estão ficando bons demais... O código está além da minha compreensão normal. Eu teria que lê-lo por um tempo. Às vezes, os LLMs não conseguem corrigir um bug, então eu apenas o contorno ou peço alterações aleatórias até que ele desapareça... Não é tão ruim para projetos descartáveis de fim de semana, mas é bastante divertido.
Embora Karpathy tenha definido esse termo, muitos desenvolvedores já haviam começado a experimentar uma abordagem semelhante assistida por IA com o lançamento público de LLMs como ChatGPT e Copilot.
O objetivo do vibe coding é criar aplicativos funcionais e novos recursos mais rapidamente. Tradicionalmente, a codificação é uma atividade muito precisa. Em vez disso, o vibe coding permite que os desenvolvedores forneçam instruções gerais e de alto nível para um LLM, que então produz instruções precisas contidas no código de trabalho.
Semelhante a outros casos de uso para LLMs, o vibe coding envolve o fornecimento de prompts a um modelo, que produz conteúdo (neste caso, código) em resposta. Os LLMs são modelos de IA generativa. Tendo sido treinados em grandes quantidades de exemplos, eles podem reconhecer, interpretar e gerar linguagem. Os LLMs são capazes de fazer isso com a linguagem humana cotidiana e as linguagens de programação. Essa capacidade permite que um LLM gere código de trabalho, geralmente em segundos.
O desenvolvedor de vibe coding precisa fornecer ao LLM os prompts corretos para que o LLM crie o tipo certo de recurso ou aplicativo. Em geral, esses prompts não precisam ser particularmente precisos, embora possam ser necessárias várias tentativas para que o LLM produza um código que funcione da maneira que o desenvolvedor tem em mente.
O teste e a depuração vêm após o LLM ter produzido o código. Isso envolve a identificação de bugs e problemas de segurança. O LLM pode então ser instruído a resolver esses bugs ou, como Karpathy descreveu, "contornar o problema ou pedir alterações aleatórias até que desapareça" (uma abordagem que pode ou não funcionar, dependendo do bug).
Vários LLMs amplamente utilizados estão disponíveis para permitir que os desenvolvedores experimentem o vibe coding. Copilot, Cursor, Codeium, Qodo, CodeWhisperer e Replit são ferramentas populares para desenvolvimento de software assistido por LLMs.
Os benefícios do vibe coding incluem:
Algumas das desvantagens podem incluir:
Vulnerabilidades: qualquer aplicativo pode conter vulnerabilidades ou riscos de segurança. Como o vibe coding pode tornar a escrita e o lançamento de novos recursos muito mais rápidos, o perigo é que mais problemas de segurança passem despercebidos e cheguem à fase de produção. Então, esses problemas de segurança também podem ser mais difíceis de corrigir se as equipes de desenvolvimento não estiverem familiarizadas com o código do problema.
Perda de dados: o uso de qualquer LLM em um contexto empresarial apresenta o risco de que a entrada possa conter propriedade intelectual que será compartilhada em contextos externos. Para proteger os dados internos, os desenvolvedores precisam estar cientes de como um LLM segmenta seus dados no back-end.
Saiba mais sobre como funciona um LLM.