Kontext und Prompt-Konfiguration

AlphaEvolve richtet seine Abläufe nach der bereitgestellten Code-Baseline sowie dem spezifischen Kontext aus, den der Nutzer zur Verfügung stellt.

Nutzerkontext

Der vom Nutzer bereitgestellte Kontext wird in jede Generierungsaufforderung eingefügt. Er gleicht den Suchraum aus, indem er dem LLM Fachwissen, mathematische Formulierungen und Systembeschränkungen zur Verfügung stellt.

  • Token-Budget: Bis zu 200.000 Token sind eine gute Wahl. Über einem Schwellenwert von 200.000 Token wird das Kontextfenster überlastet, die Aufmerksamkeit des LLM sinkt und die Qualität der Mutation nimmt ab. Wenn der kombinierte Kontext (Problembeschreibung, Code und vorherige Programme) 200.000 Token übersteigt, müssen Sie ihn reduzieren.

Was sollte enthalten sein?

  • Genaue mathematische Formulierung des Optimierungsproblems.

  • Wichtige Einschränkungen und ihre klare Begründung.

  • Fachspezifische Terminologie und Definitionen.

  • Bekannte gute Ansätze oder der Stand der Technik, um die Suchrichtung des LLM zu steuern.

  • Spezifische, explizite Anweisungen, die detailliert beschreiben, was NICHT zu tun ist.

Was sollte NICHT enthalten sein?

  • Allgemeine Programmier-Tutorials.

  • Dokumentation der Standardbibliothek (das LLM kennt bereits numpy, sklearn usw.). Fügen Sie jedoch die Dokumentation für Nischen- oder fachspezifische Bibliotheken hinzu, die das LLM möglicherweise nicht gut kennt (benutzerdefinierte Kernel-APIs, proprietäre SDKs oder spezielle DSLs).

  • Beliebige Rohdaten, Tabellen oder große Datenmengen. Daten gehören in die Evaluator-Harness, nicht in den Kontext der Aufforderung.

  • Nicht relevanter Kontext, der Token verbraucht, ohne ein Suchsignal hinzuzufügen.

Jeder Kontext, den Sie einbeziehen, muss einen klaren Mehrwert bieten, indem er dem LLM aktiv hilft, bessere, strukturell solide Mutationen zu erzeugen.

Evaluierungsfeedback (Insights)

Nach jeder Ausführungsschleife kann der Evaluator neben numerischen Werten auch diagnostischen Feedbacktext zurückgeben. Dieses Feedback wird automatisch an zukünftige Aufforderungsstrukturen angehängt.

  • Qualitäts-Baseline: Starkes Feedback ist spezifisch, umsetzbar und prägnant. Schlechtes Feedback ist allgemein (z. B. „Evaluierung fehlgeschlagen“) oder zu ausführlich.

  • Betrieblicher Zweck: Diese Insights werden dem LLM bei nachfolgenden Generierungen angezeigt, sodass es explizit aus Ausführungsfehlern lernen und wiederholte Fehler vermeiden kann.

Integrierte Diversifizierung von Aufforderungen

AlphaEvolve diversifiziert automatisch die Aufforderungen, die an das Backend-LLM-Ensemble gesendet werden. Dieser Vorgang wird intern verarbeitet und erfordert keine manuelle Nutzerkonfiguration.

Das System variiert die Kernanweisungen über aufeinanderfolgende Generationen hinweg, um vielfältige Mutationen zu fördern und zu verhindern, dass das LLM in sich wiederholende Codierungsmuster verfällt. Dieses Verhalten ist einer der Hauptmechanismen, mit denen AlphaEvolve ein breites Spektrum erkunden kann, anstatt in engen lokalen Optima gefangen zu sein.

Lesbarkeit des Codes

Die Codekomplexität dient als effektive Hilfsmetrik. Wenn die Lesbarkeit des endgültigen Codes ein Faktor für Ihren Produktionsanwendungsfall ist, sollten Sie die Codelänge oder die kognitive Komplexität als sekundäre Zielmetrik hinzufügen.

AlphaEvolve kann eine Dateikomprimierung von bis zu 50% erreichen, ohne die funktionale Leistung zu beeinträchtigen. Das LLM nutzt jedoch naive Einfachheitsmetriken (z. B. das Entfernen aller Inline-Kommentare, um die Anzahl der Rohzeichen zu reduzieren). Um dies zu verhindern, implementieren Sie Metriken, die eine sinnvolle strukturelle Komplexität erfassen, z. B. die zyklomatische Komplexität oder die Anzahl der Knoten im abstrakten Syntaxbaum (Abstract Syntax Tree, AST), anstatt die Rohzeichenlängen zu bewerten.