Memory management
Symptomen van geheugendruk, wat ze veroorzaakt, en hoe Soriku model-swapping afhandelt wanneer er niet genoeg RAM is om alles geladen te houden.
Symptomen
- Trage respons op een eerder snelle machine
- macOS Activity Monitor toont memory pressure in het rood
- Ollama logt
out of memoryof beëindigt modellen stilletjes - Benchmark-runs breken halverwege af met
RAM critical
Hoe routing het afhandelt
Soriku houdt bij welke modellen geladen zijn en hoeveel RAM elk inneemt. Wanneer een nieuwe request de geladen set over het budget zou duwen, unload de router eerst het least-recently-used model en laadt dan het nieuwe. Je merkt dit als een latency-spike bij de eerste request na een model-swap.
Tune het budget
# config/models.yaml
hardware:
ram_budget_gb: 12 # hoeveel RAM Soriku mag gebruiken voor modellen
keep_alive_seconds: 300 # hoe lang een model geladen blijft na laatste gebruik
Defaults op 16 GB Apple Silicon: 12 GB budget, 5 minuten keep-alive. Verlaag het budget als andere apps klagen, verhoog de keep-alive als je heen-en-weer swapt tussen dezelfde twee modellen.
Wanneer het echt misgaat
Als Soriku midden-benchmark crasht en de capability map gedeeltelijke data toont, draai
python -m benchmarks --reset-stale om inconsistente entries te wissen voordat je de benchmark opnieuw draait.