PPDL: LLM-Based Flows as Probabilistic Programs
Dit artikel introduceert PPDL, een probabilistische programmeertaal die ontwikkelaars in staat stelt om onzekerheid te kwantificeren en te propageren door LLM-gebaseerde applicatieflows en te experimenteren met technieken voor inferentieschaling zonder de kernlogica aan te passen, zoals gedemonstreerd door een stellingbewijzende agent voor de Rocq-prover.
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 echt lastige puzzel probeert op te lossen, maar in plaats van het alleen te doen, heb je een super slimme, creatieve vriend die met je kan praten. Deze vriend is een Kunstmatige Intelligentie genaamd een Large Language Model (LLM). Ze zijn geweldig in het schrijven van verhalen, het oplossen van wiskundige problemen en zelfs het schrijven van computercode. Echter, ze zijn niet perfect. Soms zijn ze heel zelfverzekerd over het verkeerde antwoord, of verzinnen ze feiten die echt klinken maar dat niet zijn. Dit wordt "onzekerheid" genoemd.
Stel je nu voor dat je een echt moeilijk probleem moet oplossen dat veel stappen vereist. Je vraagt je AI-vriend om een plan, dan vraag je hen om code te schrijven op basis van dat plan, en dan vraag je hen om de code te controleren, enzovoort. Elke keer als je een vraag stelt, geeft de AI een antwoord, maar dat antwoord kan een beetje wankel zijn. Als je tien van deze wankele antwoorden aan elkaar koppelt, kan het eindresultaat een totale puinhoop zijn. Het is alsof je een toren van Jenga-blokjes probeert te bouwen waarbij elk blokje een beetje wiebelig is; hoe hoger je gaat, hoe groter de kans dat de hele boel instort. Ontwikkelaars en gebruikers voelen zich hier vaak verloren: "Is dit antwoord juist? Hoe zeker zijn we? Moet ik dit vertrouwen?"
Om dit op te lossen, hebben wetenschappers een paar trucjes geprobeerd. Een populair idee is "inference scaling" (inferentie-schaling). Denk hierbij aan het vragen aan je AI-vriend om dezelfde puzzel tien verschillende keren te proberen en te kijken welk antwoord het vaakst voorkomt. Het is alsof je een groep vrienden vraagt om het antwoord op een raadsel te raden en met de meerderheidsstem gaat. Maar hier komt de adder onder het gras: het handmatig uitvoeren hiervan is rommelig. Je moet speciale computercode schrijven om die tien pogingen uit te voeren, bij te houden welke er goed uitzien, en de slechte weg te gooien. Het is alsof je een nieuwe fabriek moet bouwen voor elke batch koekjes die je wilt bakken, alleen maar om te controleren of ze wel goed smaken. Het is ingewikkeld, duur en moeilijk aan te passen als je een andere manier van koekjes bakken wilt proberen.
Het Grote Idee van het Papier: De "Magische Scorekaart"
Dit papier introduceert een nieuw hulpmiddel genaamd PPDL (Probabilistic Prompt Declaration Language). Je kunt PPDL zien als een speciale "magische scorekaart" voor AI-workflows. In plaats van alleen de AI een vraag te stellen en een enkel antwoord te krijgen, laat PPDL je een programma schrijven dat van nature begrijpt dat de AI onzeker kan zijn.
Zo werkt het in gewone taal:
- De Flow: Je schrijft je instructies voor de AI zoals je dat normaal gesproken zou doen (bijv. "Plan de code", dan "Schrijf de code", dan "Controleer de code").
- De Magische Factor: Je voegt een speciale instructie toe die een
factorwordt genoemd. Dit is als een scorekaart waarbij je de AI vertelt: "Hé, als het plan logisch klinkt, geef het dan een hoge score. Als de code fouten bevat, geef het dan een lage score." - Het Resultaat: Wanneer je het programma uitvoert, geeft de computer niet zomaar één antwoord. Het voert het hele proces vele malen parallel uit (alsof er honderd verschillende versies van jou tegelijkertijd de puzzel proberen op te lossen). Het gebruikt jouw "scorekaart" om de resultaten te wegen. Als één pad er heel veelbelovend uitziet, richt de computer meer energie op dat pad. Als een pad slecht lijkt, laat de computer het vallen.
Het coolste deel is dat je niet zelf die complexe "voer het tien keer uit"-code hoeft te schrijven. PPDL doet al dat zware werk op de achtergrond. Je schrijft de logica één keer, en het systeem begrijpt automatisch de beste manier om alle mogelijkheden te verkennen.
Wat Ze Hebben Gevonden
De auteurs hebben dit idee getest op verschillende uitdagingen, van het oplossen van wiskundige problemen uit de basisschool tot het schrijven van complexe computercode en zelfs het bewijzen van wiskundige stellingen.
- Betere Nauwkeurigheid: In hun tests maakte het gebruik van PPDL met deze "scorekaarten" de AI aanzienlijk nauwkeuriger. Bijvoorbeeld, in een wiskundest test genaamd GSM8k, kreeg een standaard AI ongeveer 83,8% van de antwoorden goed. Maar wanneer ze PPDL gebruikten met een methode genaamd "Importance Sampling" (wat een slimme manier is om de beste gokken te selecteren), steeg de nauwkeurigheid naar 93,7%.
- De "Slimme" Manier Wint: Ze vergeleken verschillende manieren om de scorekaarten te gebruiken. Soms werkte het simpelweg nemen van de "meerderheidsstem" (het meest voorkomende antwoord) goed. Maar vaak waren de slimmere methoden (zoals Importance Sampling en Sequential Monte Carlo) veel beter. Deze methoden zijn als een detective die niet alleen stemmen telt, maar ook onderzoekt waarom een antwoord goed of slecht is, door slechte paden vroegtijdig te verwerpen en zich te concentreren op de goede paden.
- De Casestudy van de Stellingbewijzer: Om het systeem echt te testen, bouwden ze een AI-agent die wiskundige stellingen bewijst met behulp van een tool genaamd Rocq. Dit is een zeer moeilijke taak waarbij de AI een bewijs moet schrijven, controleren of het fout is, en het vervolgens moet herstellen, herhaaldelijk. Ze ontdekten dat de "slimme" methode (Sequential Monte Carlo) veel beter was in het vinden van het juiste bewijs dan simpelweg willekeurige gokken herhaaldelijk proberen. Het kon veel verschillende paden tegelijk verkennen en snel de paden verlaten die nergens toe leidden.
Wat Ze Niet Beweren
De auteurs zijn voorzichtig om niet te beweren dat dit een "magische oplossing" is voor alles. Ze wijzen erop dat de "scorekaarten" (de factoren) slechts zo goed zijn als de informatie die je erin stopt. Als je een slechte scorekaart hebt, zal het systeem het niet magisch oplossen. Ook betekent deze methode niet dat de AI plotseling perfect is; het betekent alleen dat we een veel betere manier hebben om te meten hoe zeker we moeten zijn over het antwoord.
Waarom Het Er Toe Doet
Dit papier suggereert dat door AI-workflows te behandelen als "probabilistische programma's" (programma's die onzekerheid begrijpen), we AI-toepassingen veel betrouwbaarder kunnen maken zonder ze extreem ingewikkeld te maken om te bouwen. Het is alsof je ontwikkelaars een nieuw pakket aan tools geeft die automatisch het rommelige werk van "opnieuw proberen en opnieuw proberen" afhandelen, zodat zij zich kunnen concentreren op het bouwen van coole dingen, terwijl de computer de beste manier uitzoekt om het juiste antwoord te krijgen.
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.