Dutch site

De mogelijkheden van het genereren van ultralange teksten: een diepgaande analyse van LongWriter en AgentWrite

Geschreven door

in

Hallo allemaal,

Het is alweer een tijdje geleden (bijna 3 maanden) sinds mijn laatste blogpost. Maar eindelijk ben ik terug, en laten we aan de slag gaan! Voortaan zullen mijn blogs zich voornamelijk richten op interessante onderzoeksartikelen op het gebied van LLM en GenAI. Ik zal probleemstellingen bespreken die ik in mijn dagelijks leven tegenkom, in wat we graag ‘story time’ noemen , zoals velen van jullie zich wellicht nog herinneren uit mijn eerdere blogs. Daarna ga ik dieper in op de technische aspecten van die probleemstellingen. Naast het toelichten van de onderzoeksartikelen zal ik ervaringen en praktische voorbeelden delen, en ik zal ook ingaan op technische details die in de artikelen wellicht overgeslagen worden, in de veronderstelling dat de lezer deze al kent. Laten we er dus in duiken!

Nog maar een paar dagen geleden kwam een bevriende familie bij ons op bezoek. Ze hebben een schattige dochter van 8 jaar. Het was 15 augustus, de Onafhankelijkheidsdag van India, en haar school had haar de opdracht gegeven een essay over Onafhankelijkheidsdag te schrijven met de strikte eis van ‘minstens 10.000 woorden’. Dat is echt heel veel! Ik weet echt niet of ik dit een essay of een miniboekje voor een 8-jarig kind moet noemen! Zoals gewoonlijk begonnen de ouders namens hun kind aan een concept te werken. Het eerste waar iedereen dan aan denkt, is ChatGPT of iets dergelijks. In eerste instantie waren de ouders heel ontspannen en dachten ze: „Laten we hier op 14 augustus, slechts een dag van tevoren, mee beginnen, want het is gewoon een kwestie van ‘het LLM-model een prompt geven’ en de output ontvangen.” Op de avond van 14 augustus deden ze precies dat, maar raad eens wat er gebeurde? Het model leverde weliswaar een goede output op, maar had moeite om de volgende aspecten te waarborgen: relevantie, nauwkeurigheid, samenhang, duidelijkheid, breedte en diepgang, en leeservaring. Bovendien, wanneer het model wordt gevraagd om strikt 10.000 woorden te produceren, herhaalt het de context en raakt het aanzienlijk uit de context.

Nu vragen jullie je misschien allemaal af: wat zijn deze zes dimensies? Laten we daarom verder lezen en ons verdiepen in de probleemstelling van „de beperkingen van de huidige grote taalmodellen (LLM’s) met lange context bij het genereren van ultralange outputs“. In deze blog verkennen we een interessant onderzoeksartikel met de titel „LONGWRITER: UNLEASHING 10,000+ WORD GENERATION FROM LONG CONTEXT LLMS“. Hoewel deze modellen invoer tot 100.000 tokens kunnen verwerken, hebben ze doorgaans moeite met het produceren van uitvoer die langer is dan 2.000 woorden. De belangrijkste reden voor deze beperking wordt toegeschreven aan de datasets voor supervised fine-tuning (SFT), die geen voorbeelden van lange uitvoer bevatten, waardoor het vermogen van de modellen om uitgebreide tekst te genereren wordt beperkt. Laten we in deze blog dus eens kijken naar de intrigerende techniek die de auteurs hebben gebruikt om lange outputreacties te verbeteren en ervoor te zorgen dat het leven van ouders in de toekomst gemakkelijker wordt! En hoe zit het met de kinderen? Tegenwoordig laat ik dat over aan het lot, gezien de vooruitgang in AI en de manier waarop het leven voor hen gemakkelijker is geworden door beperkt gebruik te maken van hun mentale capaciteiten! Maar goed, laten we aan de slag gaan.

Inleiding

Laten we nu eens ingaan op de kern van het artikel. Het begint met het belichten van een interessante uitdaging bij LLM’s met lange context. Deze modellen, die meer dan 100.000 tokens aan invoer kunnen verwerken, hebben nog steeds moeite met het genereren van uitvoer die langer is dan 2.000 woorden. Dit is een belangrijk probleem omdat in sommige gevallen meer dan 1% van de gebruikersverzoeken daadwerkelijk langere antwoorden nodig heeft.

Wat is het kernprobleem? De datasets voor supervised fine-tuning (SFT) waarmee deze modellen worden getraind, bevatten simpelweg niet genoeg voorbeelden van lange outputs. Dus hoewel de modellen in staat zijn om lange inputs te verwerken, zijn ze niet getraind om op een effectieve manier lange outputs te produceren. Deze beperking blijft bestaan omdat veel LLM’s op dezelfde datasets vertrouwen.

Om dit aan te pakken, introduceren de auteurs AgentWrite — een nieuwe aanpak die deze modellen helpt langere teksten te genereren door de taak in kleinere delen op te splitsen. Deze methode kan de lengte van de output opvoeren tot 20.000 woorden, ver boven wat doorgaans mogelijk is.

Het artikel introduceert ook LongWriter-6k en LongBench-Write, een dataset en benchmark die zijn ontwikkeld om modellen te trainen en te testen op hun vermogen om deze ultralange teksten te genereren. Het idee is om de grenzen van wat LLM’s kunnen te verleggen, waardoor ze beter in staat zijn om taken uit te voeren die een uitgebreide output vereisen.

Laten we nu eens bekijken wat AgentWrite is en hoe het werkt:

Stap I: Plan
Allereerst begint AgentWrite met een plan — net zoals je een artikel zou opzetten voordat je aan het schrijven begint. Het model maakt een gedetailleerde opzet op basis van de gegeven instructies, waarbij de hoofdinhoud wordt uiteengezet en het aantal woorden per sectie wordt gespecificeerd. Zie het als de routekaart van het model. Als het bijvoorbeeld de opdracht krijgt om een stuk van 30.000 woorden over het Romeinse Rijk te schrijven, zou het plan er ongeveer zo uit kunnen zien:

Paragraaf 1: Inleiding tot de oorsprong van het Romeinse Rijk (700 woorden)

Paragraaf 2: De stichting van het Romeinse Rijk (800 woorden)

Paragraaf 15: Samenvatting van de geschiedenis van het Romeinse Rijk (500 woorden)

Deze gestructureerde aanpak zorgt ervoor dat het model precies weet waar het naartoe gaat, waardoor het gemakkelijker wordt om de taak van het genereren van lange teksten te beheren. Hieronder kun je zien hoe de auteur de invoer heeft gestructureerd:

Reacties

Geef een reactie

Je e-mailadres wordt niet gepubliceerd. Vereiste velden zijn gemarkeerd met *