← Nieuwste papers
🤖 machine learning

LLM Program Optimization via Retrieval Augmented Search

Dit artikel introduceert Retrieval Augmented Search (RAS) en AEGIS, innovatieve blackbox-adaptatiemethoden die door gebruik te maken van door LLM gegenereerde natuurlijke taalbeschrijvingen en atomische bewerkingen de huidige state-of-the-art strategieën aanzienlijk overtreffen bij het optimaliseren van C++- en Python-programma's, terwijl de interpreteerbaarheid wordt verbeterd en de code-wijzigingen worden geminimaliseerd.

Oorspronkelijke auteurs: Sagnik Anupam, Alexander Shypula, Osbert Bastani

Gepubliceerd 2026-06-25
📖 5 min leestijd🧠 Diepgaand

Oorspronkelijke auteurs: Sagnik Anupam, Alexander Shypula, Osbert Bastani

Oorspronkelijk artikel gelicentieerd onder CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/). Dit is een AI-gegenereerde uitleg van het onderstaande artikel. Het is niet geschreven of goedgekeurd door de auteurs. Raadpleeg het oorspronkelijke artikel voor technische nauwkeurigheid. Lees de volledige disclaimer

Stel je voor dat je een zeer getalenteerde maar onervaren chef hebt (het Large Language Model, of LLM) die probeert een maaltijd te bereiden. Het doel is niet alleen om het eten lekker te laten smaken; het doel is om het eten sneller te laten koken zonder de smaak te veranderen.

De paper presenteert twee nieuwe manieren om deze chef slimmer te laten werken, gebruikmakend van een "bibliotheek van eerdere recepten" (een dataset van trage versus snelle code) om hen te begeleiden.

Het Probleem: De Chef Zit Vast

Normaal gesproken, als je deze chef vraagt om een recept te versnellen, kan hij willekeurig gokken of proberen het hele ding in één keer te herschrijven. Hij faalt vaak omdat hij niet genoeg voorbeelden heeft gezien van hoe je dingen sneller kunt maken. Hij heeft een coach nodig die hem specifieke trucjes laat zien.

Methode 1: RAS (Retrieval Augmented Search)

De Analogie: De "Slimme Bibliothecaris" versus de "Zoekopdracht op Trefwoorden"

Stel je voor dat de chef in een enorme bibliotheek een vergelijkbaar recept moet vinden om inspiratie op te doen.

  • De Oude Manier (Code Retrieval): De chef kijkt naar de ingrediëntenlijst (de eigenlijke code) van het huidige gerecht en zoekt in de bibliotheek naar recepten met vergelijkbare ingrediënten. Dit is als zoeken naar "bloem en eieren" en dan een recept voor een cake terugkrijgen, terwijl je eigenlijk een soeprecept nodig hebt dat toevallig ook bloem gebruikt. Het is te letterlijk.
  • De Nieuwe Manier (Contextual Retrieval): De chef vraagt de bibliothecaris om eerst een samenvatting van het gerecht te schrijven (bijv. "Dit is een soep die groenten laat sudderen om smaak te extraheren"). De bibliothecaris zoekt vervolgens in de bibliotheek naar andere gerechten die hetzelfde doen, ongeacht de specifieke ingrediënten.
    • Waarom het werkt: Het vindt recepten die hetzelfde probleem oplossen, niet alleen recepten die er op papier hetzelfde uitzien.

Het Zoekproces (Beam Search):
In plaats van de chef te vragen om het recept in één grote sprong te verbeteren, breekt RAS het af.

  1. De chef maakt een kleine verbetering.
  2. De bibliothecaris vindt een nieuw, relevant voorbeeld gebaseig op deze nieuwe versie.
  3. De chef probeert het opnieuw, gebruikmakend van dat nieuwe voorbeeld.
  4. Ze herhalen deze lus, zoals het beklimmen van een berg stap voor stap, waarbij ze altijd het pad kiezen dat het snelst omhoog gaat.

Het Resultaat: Deze methode maakte C++ programma's tot wel 2 keer sneller dan eerdere beste methoden en verbeterde de snelheid van Python programma's aanzienlijk.

Methode 2: AEGIS (Atomic Edit Guided Search)

De Analogie: De "Lego Master" versus de "Sloopploeg"

Zelfs met de slimme bibliothecaris kan de chef nog steeds enorme, verwarrende veranderingen aan het recept aanbrengen (zoals de volledige kookmethode vervangen). Dit is moeilijk te begrijpen en riskant.

AEGIS verandert de bibliotheek zelf. In plaats van hele "Trage versus Snelle" receptparen op te slaan, breekt het deze af in Atomaire Edits.

  • Het Proces: Het systeem neemt een traag recept en een snel recept en vraagt een expert om het verschil in piepkleine, enkelvoudige stappen uit te leggen.
    • Stap 1: "Vervang de houten lepel door een metalen lepel (snellere warmteoverdracht)."
    • Stap 2: "Hak de uien fijner (kookt sneller)."
    • Stap 3: "Gebruik een deksel om stoom vast te houden."
  • De Generalisatie: Het herschrijft deze stappen vervolgens naar algemene regels (bijv. "Gebruik metalen keukengerei voor hoge hitte") zodat ze op elk recept kunnen worden toegepast, niet alleen op dat specifieke gerecht.

Hoe het helpt: Wanneer de chef een nieuw gerecht moet optimaliseren, zegt het systeem niet: "Hier is een heel nieuw recept." Het zegt: "Hier is een specifieke, kleine truc: 'Vervang de houten lepel door een metalen lepel.' Probeer dat eens." De chef past één kleine truc toe, controleert het resultaat, en probeert dan de volgende.

Het Resultaat:

  • Het maakt de veranderingen kleiner en gemakkelijker te begrijpen (zoals het vervangen van één Lego-blokje in plaats van het hele kasteel te herbouwen).
  • Het verminderde de omvang van de wijzigingen met 17% tot 30% vergeleken met de eerste methode.
  • Het maakte programma's nog steeds sneller, hoewel iets minder dan de eerste methode, maar met veel meer controle en duidelijkheid.

Samenvatting van de Resultaten

  • RAS is als een slimme coach die je door een reeks kleine, geïnformeerde stappen leidt, waarbij de beste weg naar een sneller programma wordt gevonden. Het versloeg de vorige beste methode met 2x voor C++ en verbeterde de Python snelheid gemiddeld met 10%.
  • AEGIS is als een coach die het probleem afbreekt in kleine, beheersbare Lego-blokjes. Het maakt de wijzigingen 1.37x beter in termen van efficiëntie en maakt de edits veel kleiner en veiliger, waardoor het programma niet kapot gaat terwijl het probeert sneller te worden.

Kortom, de paper leert ons dat om AI-code sneller te maken, we niet simpelweg moeten vragen om te "gokken". We moeten het voorzien van een bibliothecaris die het verhaal van de code begrijpt (Contextual Retrieval) en een set kleine, specifieke tools (Atomic Edits) om kleine, veilige verbeteringen aan te brengen, één voor één.

Verdrinkt u in papers in uw vakgebied?

Ontvang dagelijkse digests van de nieuwste papers die bij uw onderzoekswoorden passen — met technische samenvattingen, in uw taal.

Probeer Digest →