资讯详情

资讯详情

KoboldCPP 分布式部署指南:如何 3 步搭建多节点大模型推理集群

KoboldCPP 分布式部署指南如何 3 步搭建多节点大模型推理集群【免费下载链接】koboldcppKoboldCpp - Run GGUF AI models locally with a KoboldAI UI. One File. Zero Install.项目地址: https://gitcode.com/gh_mirrors/ko/koboldcppKoboldCPP 分布式部署面向多节点大模型推理把一台 GGUF 模型的推理切到多个节点执行解决单机显存不够、大模型推理慢的问题。以下按原理、检查清单、3 步实操、验证与避坑展开。原理篇多台机器跑同一个模型计算怎么分KoboldCPP 的多机协同不是每台机器加载不同的模型而是一个模型、计算切分推理引擎把模型的计算图一串张量运算拆成若干块分给本机与远端节点执行每轮运算结束再汇总结果。落到机制上是 GGML 的 RPC 后端计算节点运行一个 RPC 服务把本机 GPU/CPU 通过 TCP 暴露成远端设备主节点加载模型时连接这些端点把远端设备注册进后端设备列表单个集群最多可挂 16 个远端节点常量GGML_RPC_MAX_SERVERS定义在ggml-rpc.h传输层默认 TCP编译 RDMA 选项后可走 InfiniBandggml/src/ggml-rpc/transport.cpp中有两套实现核心实现集中在 ggml/src/ggml-rpc/ 目录。动手前检查清单系统、存储、网络、节点数开工前逐项确认 5 条系统每个节点为 Linux推荐 Ubuntu 20.04或 Windows带 C 构建工具链存储主节点可读 GGUF 模型文件容量 ≥ 模型体积 KV cache计算节点无需存放模型网络节点间低延迟内网互通、端口放行默认端口参考5551UI 的 host 模式与50052独立rpcserver节点数1 个主节点加载模型、接收请求 N 个计算节点N ≤ 16每个计算节点有 GPU 或足够的 CPU 核数版本各节点构建自同一版本且包含 RPC 后端仓库 Makefile 默认带-DGGML_USE_RPC标准构建已包含仓库中与该主题直接相关的核心路径路径作用koboldcpp.pyPython 包装入口UI 与参数解析含RPC Mode等网络选项kcpp_src/expose.hC 接口层定义rpc_mode0disabled、1connect、2hosttools/rpc/rpc-server.cpp独立rpcserver进程源码ggml/src/ggml-rpc/RPC 后端与网络传输层kcpp_adapters/各模型的聊天模板 JSON实操篇3 步完成 GGUF 模型多机部署目标从一份代码到一台可推理的集群只分三步。步骤 1各节点拿到代码并构建每个节点执行git clone https://gitcode.com/gh_mirrors/ko/koboldcpp然后用仓库自带 Makefile或 CMake构建。默认构建已包含ggml-rpc与transport目标对象需要独立服务进程时再构建 Makefile 中已声明的rpcserver目标。步骤 2计算节点配置——把本机设备暴露成 RPC 服务两种等价做法命令行rpcserver-H 0.0.0.0 -p 50052 -d 设备名其中-H绑定地址、-p端口、-d逗号分隔设备列表、-t线程数、-c开启文件缓存UINetwork 页签中RPC Mode选host依次填RPC Host IP、RPC Host Port、RPC Deviceshost 节点不加载模型只提供设备。启动成功的标志是日志中出现所使用设备列表以及 Starting RPC server on , clients may now connect 提示。步骤 3主节点配置——连接远端并加载模型主节点RPC Mode选connect在RPC Endpoints填入计算节点地址格式主机:端口、逗号分隔例如192.168.1.10:5551,192.168.1.11:5551然后照常选择 GGUF 模型加载。加载过程中引擎会逐个注册端点并打印 Use RPC server: 端点全部列出说明主节点已把远端设备并入自己的设备列表。验证篇多节点是否真的生效别只看能启动按 4 个观察点逐一确认启动日志主节点设备列表中出现 RPC 加入的远端设备且每个端点都打印 Use RPC server:——这是连通的第一判据设备占用模型加载后检查计算节点的显存/内存占用远端设备内存被明显使用说明部分张量确实落在了那台机器速度对比同一模型、同一提示词分别测单机与多节点的 tokens/s内网质量足够时多节点不应慢于单机固定输入回归固定采样参数如温度 0用固定输入文字或图片仓库自带测试图 tools/mtmd/test-1.jpeg重复推理对比输出是否一致、停掉某节点后结果是否变化避坑篇4 个高频问题的现象与规避现象主节点报找不到 RPC backend。原因二进制未编译进 RPC 后端。规避确认构建含-DGGML_USE_RPCMakefile 默认开启用仓库 Makefile 重新构建。现象连接超时或推理速度极低。原因端口未放行或跨机房网络延迟高。RPC 按张量粒度频繁传输延迟会直接放大到每个 token。规避先用nc -vz 主机 端口验证可达尽量用低延迟内网rpcserver绑定非本机地址时会打印安全警告切勿暴露到公网。现象多节点比单机更慢。原因带宽不足或模型本身单机装得下网络开销大于收益。规避先跑单机基线再上集群大模型场景优先升级网络10GbE 起步小模型场景先试更小量化。现象停掉一台计算节点主节点直接报错。原因单模型的计算图引用了远端设备连接断开会传导到整个推理。规避高可用需求下改为每台节点独立跑一个模型实例、在请求层分流跨机共享单模型是扩容手段不承担容错。收尾从 2 台节点扩到 N 台KoboldCPP 的多机方案本质是设备暴露 计算切分计算节点用rpcserver或 UI 的 host 模式提供设备主节点用 connect 模式接入集群即成。下一步可深入 ggml/src/ggml-rpc/ 的传输层实现含 RDMA 路径或把 tools/server/ 的 HTTP 服务接入集群做外部请求分发扩展节奏建议保持先 2 台验证提速再加节点。【免费下载链接】koboldcppKoboldCpp - Run GGUF AI models locally with a KoboldAI UI. One File. Zero Install.项目地址: https://gitcode.com/gh_mirrors/ko/koboldcpp创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
觉得有用,分享给同行:

为您的企业打造数字门面

稳重轻奢商务风格,端正雅致视觉,长效耐看不易过时。

立即咨询 →