docs / troubleshooting / memory-management

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

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.