Software Self-Extension with SelfEvolve: an Agentic Architecture for Runtime Code Generation
Die Arbeit stellt SelfEvolve vor, eine orchestrierte Agentenarchitektur, die es Software ermöglicht, während der Laufzeit autonom neue Funktionen durch Code-Generierung hinzuzufügen und dabei bestehende Baseline-Modelle wie AutoGen signifikant zu übertreffen.
Originalarbeit lizenziert unter CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/). Dies ist eine KI-generierte Erklärung des untenstehenden Papers. Sie wurde nicht von den Autoren verfasst oder gebilligt. Für technische Genauigkeit konsultieren Sie das Originalpaper. Vollständigen Haftungsausschluss lesen
Stellen Sie sich vor, Sie haben einen sehr intelligenten, aber etwas starren Koch in Ihrer Küche. Wenn Sie ihm sagen: „Mach mir eine Pizza", macht er das perfekt. Aber wenn Sie plötzlich sagen: „Ich hätte gerne auch noch ein Dessert, das niemand sonst kennt", muss er die Küche verlassen, einen neuen Koch anrufen, der das Rezept schreibt, und warten, bis dieser zurückkommt, bevor er weiterkochen kann. Das ist, wie herkömmliche Software funktioniert: Um neue Funktionen hinzuzufügen, müssen Entwickler den Code schreiben, testen und das Programm neu starten.
Die Forscher in diesem Papier haben sich etwas Ausgefallenes überlegt: SelfEvolve.
Was ist SelfEvolve?
SelfEvolve ist wie ein Koch, der sich selbst neue Rezepte erfinden kann, während er gerade kocht.
Stellen Sie sich vor, Sie sitzen vor Ihrem Netflix-Fernseher und sagen: „Zeig mir, was die Leute in meiner Stadt gerade schauen." Normalerweise würde das System antworten: „Fehler: Diese Funktion existiert nicht." Aber mit SelfEvolve passiert etwas Magisches:
- Das System hört zu.
- Es denkt: „Ah, das fehlt noch. Ich muss mir das Rezept dafür ausdenken."
- Es schreibt den Code für diese neue Funktion sofort, während es läuft.
- Es testet es in einer sicheren „Koch-Isolationszelle" (einem Sandkasten), damit nichts kaputtgeht.
- Wenn es funktioniert, integriert es die neue Funktion sofort in das System.
- Und das Beste: Niemand muss den Fernseher neu starten. Sie bekommen Ihre Antwort sofort.
Wie funktioniert das? (Die Metapher der „Baustelle")
Stellen Sie sich das System als eine riesige Baustelle vor, auf der ein Gebäude steht. Normalerweise muss man das Gebäude abreißen, um einen neuen Anbau hinzuzufügen. Bei SelfEvolve ist es anders:
- Der Chef-Architekt (Dispatcher): Er nimmt Ihre Wunschliste entgegen. Wenn etwas schon da ist, nutzt er es. Wenn nicht, sagt er: „Wir brauchen einen neuen Anbau!"
- Der Test-Ingenieur (TDD): Bevor der eigentliche Bau beginnt, schreibt dieser Ingenieur eine Checkliste. „Der Anbau muss stabil sein, das Dach muss regendicht sein." Er erstellt diese Tests bevor der Code geschrieben wird. Das ist wie ein Bauplan, der zuerst die Sicherheitsstandards festlegt.
- Der Bauarbeiter (Code-Generator): Dieser schreibt den Code für den neuen Anbau. Er schaut sich an, was im Gebäude schon vorhanden ist (z. B. gibt es schon eine Treppe, die wir nutzen können?), und baut darauf auf.
- Der Sicherheitsinspektor (Adjudicator): Bevor der Anbau offiziell Teil des Hauses wird, prüft der Inspektor: „Haben wir die Checkliste erfüllt?"
- Wenn ja: „Alles klar, integrieren!"
- Wenn nein: „Hier ist ein Riss im Fundament. Bauarbeiter, mach das nochmal, aber diesmal achte auf die Risse!"
Dieser Prozess wiederholt sich so lange, bis alles perfekt ist. Das System lernt also aus seinen Fehlern, während es arbeitet.
Warum ist das so besonders?
In der wissenschaftlichen Welt haben die Forscher dieses System mit anderen bekannten „KI-Agenten" verglichen (wie AutoGen oder MetaGPT). Diese anderen Systeme sind wie sehr gute Assistenten, die Code für Entwickler schreiben, damit diese ihn später einbauen können.
SelfEvolve ist jedoch anders:
- Für den Nutzer, nicht für den Entwickler: Es reagiert direkt auf Ihre Wünsche, nicht auf technische Anweisungen von Programmierern.
- Sofortige Wirkung: Es braucht keine Wartezeit für Updates oder Neustarts.
- Hohe Erfolgsquote: In Tests hat SelfEvolve in 92,7 % der Fälle die neue Funktion sofort und fehlerfrei erstellt. Andere Systeme lagen deutlich darunter (manche sogar bei 0 %, weil sie komplexe Aufgaben nicht bewältigen konnten).
Das große Bild: Software, die mitwächst
Stellen Sie sich vor, jede Software auf Ihrem Handy wäre wie ein lebendiger Organismus. Wenn Sie eine neue Fähigkeit brauchen, wächst sie einfach nach.
- Ein Fitness-Tracker könnte plötzlich eine neue Analyse für Ihre Schlafqualität entwickeln, weil Sie danach gefragt haben.
- Ein Musik-Player könnte eine neue Art von Playlist erstellen, die es vorher gar nicht gab.
Das Ziel ist eine Welt, in der Software individuell auf jeden einzelnen Nutzer zugeschnitten ist. Sie müssen nicht warten, bis ein Entwickler ein Update herausbringt. Die Software verbessert sich selbst, genau dann, wenn Sie es brauchen.
Fazit
SelfEvolve ist ein erster Schritt in eine Zukunft, in der Computer nicht nur Werkzeuge sind, die wir bedienen, sondern Partner, die mit uns wachsen. Sie hören zu, denken nach, bauen neue Fähigkeiten und integrieren sie nahtlos – alles ohne dass wir den „Neustart"-Knopf drücken müssten. Es ist, als würde Ihre Software plötzlich anfangen, mit Ihnen zu sprechen und sich an Ihre Bedürfnisse anzupassen, noch bevor Sie überhaupt wissen, dass Sie sie brauchen.
Ertrinken Sie in Arbeiten in Ihrem Fachgebiet?
Erhalten Sie tägliche Digests der neuesten Arbeiten passend zu Ihren Forschungsbegriffen — mit technischen Zusammenfassungen, in Ihrer Sprache.