„Vibe-Coding“ ist ein Ansatz zur Anwendungsentwicklung, bei dem man sich bei der Codegenerierung stark auf ein Large Language Model (LLM) stützt.
Nach Lektüre dieses Artikels können Sie Folgendes:
Link zum Artikel kopieren
Vibe-Coding ist eine Methode der Softwareentwicklung, bei der große Sprachmodelle (LLMs) zur Codegenerierung stark zum Einsatz kommen. Der Begriff „Vibe Coding“, also KI-gestütztes Coding, wurde von Andrej Karpathy, Mitbegründer von OpenAI, in einem Beitrag auf X im Februar 2025 geprägt:
Es gibt eine neue Art des Codings, das ich „Vibe Coding“ nenne, bei dem man sich voll und ganz den Vibes hingibt, Exponentialfunktionen annimmt und vergisst, dass der Code überhaupt existiert. Dies ist möglich, weil die LLM (z. B Cursor Composer w Sonnet) zu gut werden ... Der Code übersteigt mein übliches Verständnis, ich müsste ihn eine Weile durchlesen. Manchmal können die LLMs einen Fehler nicht beheben, also arbeite ich einfach um ihn herum oder frage nach zufälligen Änderungen, bis er verschwindet... Das ist nicht zu schlecht für einmalige Wochenendprojekte, aber immer noch recht amüsant.
Obwohl Karpathy diesen Begriff definierte, hatten viele Entwickler bereits mit der Veröffentlichung von LLMs wie ChatGPT und Copilot begonnen, mit einem ähnlichen KI-gestützten Ansatz zu experimentieren.
Das Ziel des „Vibe Codings“ ist es, funktionierende Anwendungen und neue Funktionen schneller bereitzustellen. Traditionell ist das Programmieren eine sehr präzise Aktivität; Vibe-Coding ermöglicht es Entwicklern stattdessen, allgemeine, übergeordnete Anweisungen an ein LLM zu übermitteln, das dann die genauen Anweisungen erzeugt, die im Arbeitscode enthalten sind.
Ähnlich wie bei anderen Anwendungsfällen für LLMs geht es beim Vibe-Coding darum, Prompts an ein Modell zu senden, das als Reaktion darauf Inhalt (in diesem Fall Code) erzeugt. LLMs sind generative KI-Modelle: Nachdem sie anhand einer großen Menge von Beispielen trainiert wurden, können sie Sprache erkennen, interpretieren und erzeugen. LLMs sind in der Lage, dies sowohl mit menschlicher Alltagssprache als auch mit Programmiersprachen zu tun. Diese Fähigkeit ermöglicht es einem LLM, funktionierenden Code zu generieren, oft innerhalb von Sekunden.
Der mit Vibe-Coding arbeitende Entwickler muss dem LLM die richtigen Prompts geben, damit das LLM die richtige Art von Funktion oder Anwendung erstellen kann. Im Allgemeinen müssen diese Prompts nicht besonders präzise sein, auch wenn es mehrere Versuche erfordern kann, bis das LLM einen Code erstellt, der so funktioniert, wie es sich der Entwickler gewünscht hat.
Das Testen und Debuggen erfolgt, nachdem das LLM den Code generiert hat. Dazu gehören die Identifizierung von Fehlern und Sicherheitsproblemen. Das LLM kann dann aufgefordert werden, diese Fehler zu beheben, oder, wie Karpathy beschreibt, „diese zu umgehen oder nach zufälligen Änderungen zu fragen, bis er verschwindet“ (ein Ansatz, der je nach Fehler funktionieren kann oder auch nicht).
Es gibt eine Reihe weit verbreiteter LLMs, die es Entwicklern ermöglichen, mit Vibe-Coding zu experimentieren. Copilot, Cursor, Codeium, Qodo, CodeWhisperer und Replit sind beliebte Tools für die LLM-gestützte Softwareentwicklung.
Erfahren Sie in unserem Artikel, wie Sie Schritt-für-Schritt mit Vibe-Coding beginnen, um mit Ihrem ersten Projekt zu starten.
Zu den Vorteilen des Vibe-Codings zählen:
Einige der Nachteile können Folgendes umfassen:
Sicherheitslücken: Jede Anwendung kann Sicherheitslücken oder Sicherheitsrisiken enthalten. Da Vibe-Coding das Schreiben und die Bereitstellung neuer Funktionen erheblich beschleunigen kann, besteht die Gefahr, dass mehr Sicherheitsprobleme durchgehen und in den Produktivbetrieb gelangen. Diese Sicherheitsprobleme können dann auch schwieriger zu beheben sein, wenn die Entwicklungsteams mit dem Problemcode nicht vertraut sind.
Datenverlust: Jede Verwendung von LLMs in einem geschäftlichen Kontext birgt das Risiko, dass die Eingaben geistiges Eigentum enthalten, das in externen Kontexten weitergegeben wird. Zum Schutz interner Daten müssen Entwickler wissen, wie ein LLM seine Daten im Backend segmentiert.
Erfahren Sie mehr über die Funktionsweise von LLM und wie sie geschützt werden können.
Vibe-Coding ist eine Methode der Softwareentwicklung, bei der ein großes Sprachmodell (LLM) intensiv zur Erstellung von Code genutzt wird. Der Begriff wurde im Februar 2025 von OpenAI-Mitgründer Andrej Karpathy geprägt.
LLMs (Large Language Modelle) sind generative KI-Modelle (GenAI), die auf großen Datenmengen trainiert wurden, was es ihnen ermöglicht, sowohl menschliche als auch Programmiersprachen zu verstehen und zu generieren. Dies ermöglicht es ihnen, funktionalen Code zu erstellen, oft in Sekundenschnelle.
Vibe-Coding bietet mehrere Vorteile, darunter: schnelles Prototyping neuer Produkte oder Funktionen; die Automatisierung von Boilerplate- und Low-Level-Code; und kürzere Entwicklungs- und Markteinführungszeiten.
Ein Nachteil des Vibe-Codings ist, dass Entwicklerinnen und Entwickler möglicherweise die Vertrautheit mit ihren Codebasen verlieren, was die Behebung von Fehlern und Sicherheitslücken erschweren kann. Zusätzlich kann Vibe-Coding zu Compliance-Problemen führen, wenn die Verarbeitung personenbezogener Daten innerhalb von Anwendungen nicht sorgfältig überwacht wird.
Vibe-Coding kann Sicherheitsbedenken erhöhen, da die Geschwindigkeit der Entwicklung dazu führen könnte, dass mehr Schwachstellen in die Produktion gelangen. Diese Probleme können schwierig zu lösen sein, wenn das Entwicklungsteam mit dem automatisch generierten Code nicht vertraut ist. Es besteht auch ein Risiko für Datenverlust, da sensibles geistiges Eigentum offengelegt werden könnte, wenn die Eingaben in das LLM nicht ordnungsgemäß verwaltet werden.
Der Begriff „Vibe Coding“ wurde erstmals von Andrej Karpathy, Mitbegründer von OpenAI, in einem Beitrag auf X im Februar 2025 erwähnt.
Nachdem ein LLM den Code generiert hat, ist ein Entwickler für das Testen und Debuggen verantwortlich. Der Entwickler identifiziert und behebt Fehler und Sicherheitslücken. Das LLM kann aufgefordert werden, bei der Behebung dieser Probleme zu helfen, oder der Entwickler könnte Umgehungsmöglichkeiten finden oder zufällige Änderungen anfordern, bis das Problem gelöst ist.
Traditionelles Programmieren erfordert von Entwicklern sehr präzise Arbeit. Im Gegensatz dazu ermöglicht Vibe-Coding Entwicklern, einem LLM allgemeine, übergeordnete Anweisungen zu geben. Das LLM übersetzt diese dann in den präzisen Code, der für die Anwendung oder das Feature benötigt wird.
Im geschäftlichen Kontext besteht das Risiko, dass bei der Verwendung eines LLMs geistiges Eigentum, das im Input enthalten ist, extern weitergegeben wird. Entwickler sollten verstehen, wie das LLM Daten in seinem Backend verarbeitet und segmentiert, um sensible interne Informationen zu schützen.