Een Ollama Modelfile aanmaken laat je een bestaand model omtoveren tot een aangepaste assistent met vaste instructies, een eigen persoonlijkheid en afgestemde instellingen. In plaats van elke keer dezelfde uitleg te typen, leg je die een keer vast in een Modelfile.
Wat is een Modelfile?
Een Modelfile is een eenvoudig tekstbestand dat beschrijft hoe je aangepaste model eruitziet. Het lijkt op een Dockerfile: je begint met een basismodel en voegt daar lagen aan toe, zoals een systeeminstructie en parameters. Het resultaat is een nieuw model dat je met een eigen naam aanroept.
Modelfile lijkt op Dockerfile
Net als een Dockerfile begint een Modelfile met een basis (FROM) en bouwt daarop verder. Wie ooit met Docker heeft gewerkt, herkent de logica meteen.
De belangrijkste instructies
Een Modelfile gebruikt een handvol sleutelwoorden. Voor de meeste aanpassingen heb je alleen FROM, SYSTEM en PARAMETER nodig. De TEMPLATE-instructie is geavanceerder en bepaalt het volledige promptformaat. De instructies zijn niet hoofdlettergevoelig en de volgorde maakt niet uit, al houden de meeste mensen FROM bovenaan.
| Instructie | Wat het doet | Voorbeeld |
|---|---|---|
FROM |
Geeft aan welk basismodel je gebruikt | FROM llama3.2 |
SYSTEM |
Legt de vaste instructie en persoonlijkheid vast | SYSTEM Je bent een Nederlandse assistent. |
PARAMETER |
Stelt temperatuur en andere instellingen in | PARAMETER temperature 0.3 |
TEMPLATE |
Bepaalt het volledige promptformaat (optioneel) | Go-template-syntax |
Het bouwen zelf doe je daarna met het commando ollama create.
Een Modelfile schrijven
Stel je wilt een assistent die altijd in het Nederlands antwoordt en kort en zakelijk blijft. Je maakt een bestand met de naam Modelfile (zonder extensie) en vult het zo:
FROM llama3.2
SYSTEM Je bent een behulpzame assistent die altijd in het Nederlands antwoordt. Houd je antwoorden kort en zakelijk.
PARAMETER temperature 0.3
PARAMETER num_ctx 4096
De SYSTEM-regel bepaalt het gedrag, de temperature houdt antwoorden voorspelbaar, en num_ctx stelt in hoeveel tekst het model kan onthouden.
Kies een recent basismodel
Gebruik een actueel basismodel zoals llama3.2 in plaats van een oudere versie. Met ollama pull llama3.2 haal je het binnen, en met ollama list zie je welke modellen je al lokaal hebt staan.
Je model bouwen en gebruiken
Aangepast model maken
- Sla je Modelfile op in een map, bijvoorbeeld als
Modelfilezonder extensie. - Open een terminal in die map.
- Bouw het model met
ollama create mijn-assistent -f Modelfile. - Wacht tot Ollama het model heeft samengesteld.
- Start het met
ollama run mijn-assistenten test of het zich gedraagt zoals bedoeld.
Geef je modellen duidelijke namen
Noem je aangepaste modellen iets als nl-zakelijk of code-helper. Met ollama list zie je ze tussen je andere modellen staan en weet je meteen waarvoor elk bedoeld is.
Parameters fijn afstemmen
De PARAMETER-regels bepalen hoe het model zich gedraagt. De temperatuur regelt creativiteit: laag voor feitelijke antwoorden, hoog voor brainstormen. Met num_ctx vergroot je het geheugen voor lange gesprekken, al kost dat meer werkgeheugen. Met stop bepaal je waar het model moet stoppen, en met top_p of top_k stuur je hoe gevarieerd de woordkeuze is.
| Parameter | Effect | Veelgebruikte waarde |
|---|---|---|
temperature |
Creativiteit van antwoorden | 0.2 tot 0.4 feitelijk, 0.7 tot 0.9 creatief |
num_ctx |
Hoeveel tekst het model onthoudt | 2048 tot 8192 |
stop |
Tekst die de generatie stopt | Afhankelijk van het promptformaat |
top_p |
Variatie in woordkeuze | 0.9 |
Pas op met een hoge num_ctx
Een te hoge num_ctx kost veel geheugen en kan op zwakke hardware tot trage of vastlopende antwoorden leiden. Verhoog deze waarde alleen als je lange documenten verwerkt en je hardware het aankan.
Een persoonlijkheid meegeven
De SYSTEM-instructie is je krachtigste gereedschap. Hierin beschrijf je wie het model is, welke toon het aanhoudt en welke regels het volgt. Je kunt het bijvoorbeeld vertellen dat het een vriendelijke helpdeskmedewerker is die alleen over jouw product praat, of een strenge code-reviewer die op beveiliging let.
Voorbeeld van een uitgebreide SYSTEM-instructie
Je kunt meerdere gedragsregels meegeven, zoals: Je bent een ervaren Nederlandse boekhouder. Je legt fiscale begrippen helder uit voor ondernemers zonder financiele achtergrond. Je geeft nooit definitief belastingadvies maar verwijst bij twijfel naar een accountant. Je antwoordt altijd in eenvoudig Nederlands.
Heb ik een nieuw model nodig voor elke aanpassing?
Nee, je bouwt voort op een bestaand basismodel met FROM. De aanpassing is een dunne laag eroverheen en kost nauwelijks extra schijfruimte.
Kan ik mijn Modelfile delen met collega's?
Ja, het is een eenvoudig tekstbestand. Deel het bestand en je collega's bouwen hetzelfde model met ollama create. Let er wel op dat zij hetzelfde basismodel binnenhalen.
Wat is het verschil tussen SYSTEM en een gewone prompt?
SYSTEM legt het gedrag permanent vast in het model, terwijl een gewone prompt eenmalig is. Met SYSTEM hoef je instructies niet telkens te herhalen.
Welke temperatuur kies ik?
Voor feitelijke, voorspelbare antwoorden kies je rond 0.2 tot 0.4. Voor creatief schrijven of brainstormen ga je richting 0.7 tot 0.9.
Hoe verwijder ik een aangepast model weer?
Met ollama rm mijn-assistent verwijder je het. Het basismodel waarop het is gebaseerd blijft gewoon staan, dus je verliest geen schijfruimte van dat model.
Met een Modelfile maak je lokale AI echt van jezelf. Verdiep je verder in het fine-tunen van modellen of bouw een RAG-pipeline met eigen documenten.