Hoe je consistente resultaten krijgt van lokale modellen

Lokale modellen voelen onvoorspelbaar als dezelfde prompt elke keer een andere vorm geeft: soms punten, soms een essay, soms een excuus plus het essay. Het grootste deel daarvan zijn instellingen en ontbrekende beperkingen, geen kapotte installatie. Je kunt samenvattingen, extractie en kleine codetaken herhaalbaar genoeg maken voor een dagelijkse werkwijze.

Deze pagina gaat ervan uit dat je al een duidelijke prompt schrijft. Als de formulering nog los is, lees dan eerst Hoe je betere Prompts schrijft voor lokale AI-modellen. De methoden die tests overleven, staan samengevat in Wat echt werkt.

Waarom het antwoord verandert

De bemonstering kiest het volgende token met enige willekeur. Een hogere temperatuur (temperature) betekent meer willekeur. Een lang gesprek betekent dat eerdere regels verder van de laatste vraag af staan. Een open prompt (“schrijf iets nuttigs”) heeft veel geldige vervolgen, dus er is ruimte om af te dwalen. Je verkleint de variatie door die ruimte te verkleinen: een lagere temperatuur, een Seed als je een echte herhaling nodig hebt, een formaat met weinig speelruimte, een korte context en een model dat niet vijf taken tegelijk krijgt.

1. Zet de temperatuur lager voordat je de prompt herschrijft

Zet voor een taak die je wilt herhalen de temperatuur tussen 0.1 en 0.3. Laat top-p op de standaard van de app staan, tenzij je weet waarom je die wijzigt. Draai daarna dezelfde prompt drie keer.

Dezelfde prompt, drie bedoelingen:

Noem precies 4 regels voor bestandsnamen in een gedeelde map. Eén zin per regel. Geen inleiding.
De lijst lijkt willekeurig, dus heb ik de hele prompt herschreven, een lange persona toegevoegd en de temperatuur op 1.0 gelaten.

Je hebt te veel veranderd en de instelling laten staan die de schuif veroorzaakt. Bevries de prompt, zet de temperatuur lager en bewerk pas daarna één regel als het formaat nog fout is.

2. Gebruik een Seed als je prompts vergelijkt

Ollama, LM Studio en sommige andere programma’s laten je een Seed instellen. Hetzelfde model, dezelfde prompt, dezelfde Seed en dezelfde bemonsteringsinstellingen horen bijna identiek terug te komen. Zo zie je of een formulering hielp.

Een praktische vergelijking:

  1. Zet de temperatuur op 0.2 en de Seed op 42.
  2. Bewaar de uitvoer van prompt A.
  3. Wijzig één regel om prompt B te maken. Houd de Seed gelijk.
  4. Vergelijk A en B. Als B beter is, houd die dan en probeer daarna één keer Seed 43 om te zien of het formaat blijft staan.

Als je app geen Seed-regeling heeft, krijg je geen herhalingen bit voor bit. Je kunt nog steeds een formaat en een lage temperatuur eisen, en dat is wat je nodig hebt voor dagelijks gebruik. Een Seed is om te testen, niet voor iemand die een samenvatting leest.

3. Maak het formaat moeilijk om van af te dwalen

Hoe strakker de vorm, hoe minder er te kiezen valt. Labels zijn beter dan “organiseer dit”.

Kun je deze klantmail organiseren tot iets dat ons team kan gebruiken?
Herschrijf de e-mail met alleen deze labels: Vraag: Product: Uiterste datum: Ontbreekt: Regels: - Eén regel per label - Als het onbekend is, schrijf “niet vermeld” - Voeg geen aanbevolen antwoord toe E-mail: [plak]

Als het model toch een aanbevolen antwoord toevoegt, zet het verbod dan alleen op de laatste regel: “Schrijf geen antwoord.” Regels op de laatste regel worden vaker gevolgd dan regels die in het midden verstopt zitten.

4. Voeg een controle van één regel toe bij brosse formaten

Gebruik dit voor JSON, tabellen en exacte aantallen. Gebruik het niet voor gewoon proza.

Geef JSON terug met de sleutels sku en qty. qty is een geheel getal. Ontbrekende waarden zijn null. Als een sleutel ontbreekt, corrigeer dan de JSON voordat je antwoordt. Leg de correctie niet uit. Tekst: [plak]

Lees de uitvoer. Als je een alinea ziet die begint met “Ik heb de JSON gecontroleerd”, laat het model de controle zien. Voeg “Geef alleen de JSON terug” toe of haal de controle weg en vertrouw op de sleutellijst. Sommige kleine modellen kunnen geen stille controle doen. Dan is de sleutellijst alleen de betere prompt.

Controleer je werk heel zorgvuldig, denk aan randgevallen en zorg dat een bedachtzaam mens trots zou zijn op dit verjaardagsbericht.

Er valt niets te controleren. Je krijgt een stijf bericht en soms een alinea over kwaliteit. Begrens liever het aantal woorden.

5. Houd de context kort

Regels van tien berichten geleden laat een klein model makkelijk vallen. Blijf voor een herhaalbare taak niet doorpraten. Begin een nieuwe sessie, of plak de regels opnieuw bovenaan het laatste bericht.

Een patroon dat stabiel blijft:

[na 15 beurten met gemengde vragen] Zelfde formaat als eerder, je weet wat ik bedoel.

Vaak weet het dat niet. Plak het formaat opnieuw. “Hetzelfde als eerder” is geen formaat.

6. Stem de modelgrootte af op de taak

Een kleiner model met een smalle prompt is vaak consistenter dan een groter algemeen model met een slordige prompt, maar het is geen magie. Gebruik een klein model om te herschrijven, te extraheren en korte samenvattingen te maken van tekst die jij aanlevert. Gebruik een groter lokaal model als de taak langere code of redeneren in meerdere stappen vraagt. Vraag een 3B-model niet om een bestand van 400 regels te beoordelen en verwacht dan een stabiele review.

Als het formaat op een 7B-model standhoudt en op een 3B-model uit elkaar valt, houd dan de prompt en wissel van model. Blijf geen regels toevoegen tot het kleine model bedolven is.

Een herhaalbare controlelijst

  1. Schrijf het formaat als labels, een aantal of JSON-sleutels.
  2. Zet de brontekst na de regels, achter een duidelijk label.
  3. Zet de temperatuur op 0.2 voor alles wat je wilt vertrouwen.
  4. Stel een maximum aantal tokens in, iets boven het antwoord dat je vroeg.
  5. Draai twee keer. Als de vorm verschilt, trek dan de laatste regel aan voordat je nieuwe regels toevoegt.
  6. Als je twee formuleringen vergelijkt, stel dan een Seed in.
  7. Als het gesprek lang is, begin opnieuw en plak de regels nog eens.

Wat consistentie niet is

Als de prompt stabiel is, bewaar hem. De Promptbibliotheek is een set startpunten die je naast je eigen prompts kunt bewaren. Als je niet zeker weet of een bewaarde prompt te lang is voor het contextvenster, schat hem dan met de Token-teller voordat je een groot bestand meestuurt.

Gerelateerde gidsen en tools