Taal AI-GIDS

QLoRA en 4-bits fijnafstemming

QLoRA is een techniek waarmee u een enorm taalmodel op een enkele consumenten-GPU kunt verfijnen door het bevroren model op te slaan in slechts 4 bits per gewicht.

2 min readLaatst bijgewerkt

Overzicht

It made customizing 65B-parameter models possible on hardware that previously could only handle models a fraction of that size.

Diepe duik

Normaal gesproken betekent het verfijnen van een groot model dat elk gewicht met een nauwkeurigheid van 16 bits wordt geladen en allemaal moet worden bijgewerkt, wat een enorme hoeveelheid geheugen vergt. QLoRA combineert twee ideeën. Ten eerste bevriest het het vooraf getrainde model en kwantiseert het tot 4 bits, waardoor het geheugen grofweg verviervoudigd wordt. Ten tweede maakt het gebruik van LoRA: in plaats van de gigantische gewichtsmatrices bij te werken, injecteert het kleine trainbare adaptermatrices van lage rang ernaast, zodat slechts een paar miljoen parameters worden bijgewerkt. De 4-bits basis blijft vast terwijl gradiënten alleen door de kleine adapters stromen. QLoRA, geïntroduceerd in 2023 door Dettmers en collega's, toonde aan dat het verfijnen van een 65B-model op één GPU van 48 GB de kwaliteit van volledige 16-bits fijnafstemming zou kunnen evenaren.

Technisch inzicht

QLoRA introduceerde drie trucs. NF4 (4-bit NormalFloat) is een gegevenstype dat is geoptimaliseerd voor de belcurveverdeling van neurale gewichten, wat een betere nauwkeurigheid oplevert dan gewone int4. Dubbele kwantisering comprimeert de kwantiseringsconstanten zelf, waardoor extra geheugen wordt bespaard. Paged optimizers gebruiken GPU-CPU verenigd geheugen om pieken tijdens lange reeksen te absorberen, waardoor crashes door onvoldoende geheugen worden voorkomen. Tijdens de voorwaartse en achterwaartse doorgang worden 4-bits gewichten gedekwantiseerd tot 16-bits just-in-time voor de matrixvermenigvuldiging, en vervolgens weggegooid.

Strategische impact

Speed and scale

Taalworkflows kunnen sneller verlopen zonder dat dit ten koste gaat van de consistentie.

Access and reach

Het breidt de toegang uit naar meerdere talen en communicatiestijlen.

Clearer decisions

Teams kunnen meer tijd besteden aan beoordeling, terwijl automatisering de herhaling afhandelt.

De toekomst van QLoRA en 4-Bit Fine-Tuning

4-bits fijnafstemming is de standaardpraktijk geworden, en onderzoek streeft nu naar een nog lagere nauwkeurigheid, inclusief 2-bits en 1-bits (ternaire) representaties. Nieuwere kwantiseringsschema's zoals AWQ, GPTQ en HQQ verfijnen de nauwkeurigheid verder, terwijl technieken zoals QA-LoRA tot doel hebben het model gekwantiseerd te houden, zelfs na het samenvoegen van adapters. Naarmate de open-weight-modellen groeien, kun je tools verwachten waarmee hobbyisten 70B-plus-modellen op een enkele gaming-GPU kunnen verfijnen om routine te worden en maatwerk te democratiseren.

Implementatie in de echte wereld

Een startup verfijnt een 70B Llama-model op een enkele GPU van 48 GB om een ​​klantondersteuningsassistent te bouwen met de stem van zijn eigen merk, zonder een servercluster te huren.

Een onderzoeker met één consumenten-RTX 4090 past van de ene op de andere dag een open model aan een niche-dataset voor het beantwoorden van medische vragen aan.

Een ontwikkelaar maakt tientallen kleine, verwisselbare LoRA-adapters voor verschillende taken, die allemaal één 4-bits basismodel delen dat in het geheugen is geladen.

Een hobbyist verfijnt een model in zijn persoonlijke chatlogboeken om een ​​bepaalde schrijfstijl na te bootsen met behulp van gratis hardware van Colab-kwaliteit.

Risico's en vangrails

Gehallucineerde feiten kunnen stilletjes rapporten binnendringen, stromen ondersteunen of onderzoeksresultaten opleveren.

Gevoeligheid voor prompts kan inconsistente resultaten opleveren voor vergelijkbare verzoeken.

Gevoelige tekstgegevens kunnen openbaar worden gemaakt als de toegangscontroles zwak zijn.

Implementatie routekaart

1

Definieer het uitvoerformaat, de toon en de kwaliteitsnormen vóór de implementatie.

2

Grondreacties met vertrouwde bronnen wanneer nauwkeurigheid belangrijk is.

3

Houd een menselijk controlepunt bij voor resultaten met een hoge inzet.

4

Houd faalpatronen bij en train prompts of workflows regelmatig opnieuw.

Blijf verkennen

Free newsletter

Get the daily AI briefing

Three verified AI stories every weekday morning, written in plain English. Free forever, no ads.

One email each weekday. Unsubscribe in one click. We never sell or share your address.

Test yourself

Take the QLoRA and 4-Bit Fine-Tuning quiz

Instant feedback on every answer, and a shareable certificate with a verifiable ID once you pass a course.

Start quiz

Support free AI education. AI Understanding is a 501(c)(3) nonprofit — no ads, no paywall, ever. Make a donation

Next guide

Afwijzingsbemonstering fijnafstemming

Frequently asked questions

What is QLoRA and 4-Bit Fine-Tuning?

QLoRA is een techniek waarmee u een enorm taalmodel op een enkele consumenten-GPU kunt verfijnen door het bevroren model op te slaan in slechts 4 bits per gewicht. Het maakte het aanpassen van modellen met 65B-parameters mogelijk op hardware die voorheen slechts modellen van een fractie van die grootte aankon.

Wat is het kerngeheugenbesparende idee achter het '4-bit'-gedeelte van QLoRA?

QLoRA slaat de bevroren, voorgetrainde gewichten op met 4 bits per waarde, waardoor het geheugen ongeveer verviervoudigd wordt in vergelijking met 16-bits.

Welke parameters worden tijdens QLoRA-verfijning daadwerkelijk bijgewerkt door gradiëntdaling?

Het basismodel is bevroren; alleen de geïnjecteerde adaptermatrices met een lage rangorde ontvangen gradiëntupdates, wat slechts een klein deel van de parameters is.

Wat is NF4 in de context van QLoRA?

NF4 (NormalFloat 4-bit) is een gegevenstype dat is ontworpen rond de belcurveverdeling van neurale netwerkgewichten voor een betere nauwkeurigheid dan gewone int4.

Welk probleem pakken 'paging optimizers' in QLoRA aan?

Paged-optimizers maken gebruik van GPU-CPU-geïntegreerd geheugen om geheugenpieken op te vangen, waardoor crashes door onvoldoende geheugen worden voorkomen tijdens het trainen op lange invoer.

Wanneer worden de 4-bits gewichten tijdens de training weer omgezet naar hogere precisie?

Gewichten van 4 bits worden voor elke matrixvermenigvuldiging onmiddellijk gedekwantiseerd tot een precisie van 16 bits, waarna de kopie met hogere precisie wordt weggegooid om geheugen te besparen.