問題解析
我們在使用ollma部署大語言模型的時候,如果部署的模型尺寸較大,往往在第一次加載的時候需要花費大量的時間加載模型;等加載完成后,如果長時間不調用模型,我們會發現模型已經被釋放掉了,又要重新加載,導致體驗感極差.
這是為什么呢?因為在沒被調用時,ollama默認在顯存中駐留5min,然后就會自動釋放,如果我們兩次調用的間隔大于5min的話,那模型已經被釋放了,又要重新加載;
不過ollama預留了keep_alive
參數可以控制模型駐留的時間:
該參數可以設置為:
- 持續時間字符串(如10M’, ‘24H’);
- 以秒為單位的數字(如 3600);
- -1表示永遠駐留在顯存中;
- 0表示接受一次響應后立即清除模型;
使用方法
方法如下:
如預加載模型,并永遠駐留在顯存
curl http://localhost:11434/api/generate -d '{"model":"llama2","keep_alive”: -1}
具體keep_alive
可以根據實際情況自由設置;