← Nieuwste papers
💻 computer science

Hierarchical Knowledge Injection for Improving LLM-based Program Repair

Dit onderzoek stelt een hiërarchisch raamwerk voor dat de nauwkeurigheid van LLM-gebaseerde automatische programma-reparatie aanzienlijk verbetert door stapsgewijs contextuele kennis op bug-, repository- en projectniveau te injecteren.

Oorspronkelijke auteurs: Ramtin Ehsani, Esteban Parra, Sonia Haiduc, Preetha Chatterjee

Gepubliceerd 2026-02-10
📖 4 min leestijd☕ Koffiepauze-leesvoer

Oorspronkelijke auteurs: Ramtin Ehsani, Esteban Parra, Sonia Haiduc, Preetha Chatterjee

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 super slimme assistent hebt (een AI, zoals ChatGPT) die je helpt om fouten in computerprogramma's te repareren. Deze assistent is als een briljante monteur, maar er is één groot probleem: hij krijgt bij elke opdracht alleen een piepklein fotootje van het kapotte onderdeel, en verder helemaal niets.

Dit onderzoek beschrijft hoe we die monteur kunnen helpen door hem niet alleen het kapotte onderdeel te laten zien, maar hem ook de handleiding, de blauwdrukken van de hele fabriek en de geschiedenis van de machine te geven.

Hier is de uitleg van het onderzoek in begrijpelijke taal:

Het Probleem: De "Tunnelvisie-Monteur"

Stel je voor dat je een monteur vraagt om een lekkende kraan in een gigantisch hotel te repareren. Je geeft hem alleen een foto van de druppelende kraan. De monteur ziet de druppel, maar hij weet niet of de kraan lekt omdat de waterdruk in het hele hotel te hoog is, of omdat de hoofdleiding drie verdiepingen lager kapot is. Hij probeert de kraan te fixen, maar het werkt niet, omdat hij de "grote context" mist.

Tot nu toe werkten AI-modellen precies zo: ze keken alleen naar de paar regels code waar de fout zat. Dat is alsof je een chirurg vraagt een operatie uit te voeren terwijl hij alleen een foto van je vinger ziet, maar niet weet hoe je hele lichaam werkt.

De Oplossing: De "Drie-Lagen-Bril"

De onderzoekers van deze studie hebben een systeem bedacht dat de AI stap voor stap meer informatie geeft. Ze noemen dit Hiërarchische Kennisinjectie. Je kunt het zien als een detective die een zaak oplost in drie stappen:

  1. Laag 1: De Locatie (Bug Knowledge)
    Dit is de basis. De detective krijgt de foto van de kraan en de melding: "Het water druppelt." Dit is genoeg voor simpele foutjes, maar voor ingewikkelde problemen is dit te weinig.
  2. Laag 2: De Blauwdruk (Repository Knowledge)
    Als de detective het niet oplost, krijgt hij de bouwtekeningen van het hotel. Hij ziet nu: "Ah, deze kraan zit verbonden met deze specifieke leiding, en die leiding is gisteren door een andere monteur aangepast." Nu begrijpt de AI de structuur van de code.
  3. Laag 3: De Geschiedenis en de Handleiding (Project Knowledge)
    Als het nog steeds niet lukt, krijgt de detective de volledige archieven. Hij leest de handleiding van het hotel en ziet: "In 2018 hadden we dit probleem ook, toen losten we het op door de drukregelaar aan te passen." Nu begrijpt de AI de bedoeling en de regels van het hele project.

De Resultaten: Een enorme sprong voorwaarts

Wat bleek? Door deze stappen te volgen, werd de AI veel beter.

  • Zonder extra info loste de AI een bepaald percentage fouten op.
  • Door de "Drie-Lagen-Bril" te gebruiken, steeg het succespercentage naar 79%. Dat is een enorme verbetering!

Een belangrijke ontdekking: De onderzoekers ontdekten dat je de AI niet alles tegelijk moet geven. Als je een monteur direct de hele fabriek, de geschiedenis en de handleiding in zijn gezicht smijt, raakt hij in de war (dit noemen ze "ruis"). Het werkt het beste als je de informatie stap voor stap toevoegt, precies wanneer de monteur erom vraagt.

Wat blijft er nog moeilijk?

Zelfs met alle informatie ter wereld zijn er nog steeds "moeilijke klanten". Sommige fouten zijn als een mysterie waarbij de dader geen sporen achterlaat, of waarbij de fout pas optreedt als een gebruiker op een heel specifieke manier op een knopje drukt (zoals bij een grafische interface). Voor die gevallen heeft de AI in de toekomst nog meer nodig, zoals de mogelijkheid om de code zelf even "uit te proberen" in een testomgeving, net zoals een echte monteur een machine even aanzet om te kijken wat er gebeurt.

Samenvatting in één zin:

In plaats van de AI alleen naar de "fout" te laten staren, geven we hem de hele "context" (de omgeving, de geschiedenis en de regels), waardoor hij van een simpele reparateur verandert in een expert-detective.

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 →