ollama 利用ollama herd做本地服务均衡负载折腾

发布时间:2026/8/26 2:21:52
ollama 利用ollama herd做本地服务均衡负载折腾 引言搭建个人人工智能工作环境手头短暂富裕头脑发热就弄了俩台云主机搭建open webuiollama。open webui本身具有一定负载能力但是不够强大只有一些简单功能不能满足需求所以就在开源项目中寻找于是就看到了ollama herd这个项目。但是本地资源不是很富裕对于部署大模型来说有点紧张再加上自己有点贪心想根据不同任务用不同模型。这个需求和ollama herd设计初衷可能不一致所以导致部署利用过程中问题不断。系统任务疯狂挤占资源导致提交任务无法执行老是报没有资源可以分配看dashboard还有一大堆莫名的任务在排队。折腾了各种配置都没有能解决挤占资源问题最终无奈只能靠自己修改源码来解决了。技术实现关键1 修改配置去掉Fleet Intelligence这个会利用模型来做评估看个人需求。2 ollama herd 还有一个预热功能会从模型的使用情况提前加载模型加速问答从而获得更好的体验。但是对于资源紧张又想切换模型做不同功能的情况就有点鸡肋了频繁加载挤占资源。以下是解决方案2.1 下载源码https://gitee.com/yangmengxiang/ollama-herd。你可以也可以从github.com搜索原始项目2.2 修改src/fleet_manager/server/app.py这个文件的190行开始。将这段代码注释掉rebalancer_task asyncio.create_task(rebalancer.run()) from fleet_manager.server.model_preloader import preload_priority_models preload_task asyncio.create_task( preload_priority_models( registry, trace_store, streaming_proxy, settings, pinned_storeapp.state.pinned_store, ) )rebalancer_task.cancel()with contextlib.suppress(asyncio.CancelledError):await rebalancer_task2.3 源码可以用uv安装在根目录下是uv tool install . 来安装程序。ubuntu默认情况下会在/usr/bin/目录下生成herd , herd-node 俩个命令程序。uv可以使用国内源来加速3 ollama herd 初衷是要为了更好的体验所以尽量想让常用模型常驻内存所以在设置keep alive都是永久就是一直在内存中。这个你想切换就比较麻烦个人没有找到更好的方法如果用open webui可以在模型管理界面设置。到此就解决了ollama herd内部自动加载模型挤占资源的情况了剩下的就和正常一样。在路由机器使用herd来远行在各个ollama节点使用herd- node来远行。