MiaAI-Lab/GLM-5.3-Flash-EXL3-2x-DGX-Sparks-TensorFold

GLM-5.3-Flash EXL3 on 2x DGX Spark with TensorFold

解决的问题

运行像 GLM-5.3-Flash 这样的大型语言模型通常需要昂贵的 GPU 和大量内存。本项目展示了如何在两台配置适中的 NVIDIA DGX Sparks(每台 128 GB 统一内存)上通过高速链路连接,使用 TensorFold 将模型拆分到两台机器上,并应用激进量化(4 位稠密权重、FP8 KV 缓存)来适配模型并支持完整的 1,048,576 token 上下文窗口。它还解决了并发问题:最多四个请求可以共享一个公共键值缓存池,并包含许多补丁,用于修复问题、添加功能(如 Anthropic Messages API)并提高吞吐量。

工作原理

该方案使用两台 DGX Sparks 作为主节点和工作节点,通过 ConnectX-7 QSFP 电缆和 RoCE 网络连接。两台机器均在 NVIDIA 的 PyTorch 容器中运行 TensorFold v0.6.0,每台机器一个 rank,并应用一组增强功能和稳定性的补丁。模型本身作为自定义 EXL3 量化检查点(4 位稠密权重,其他部分 BF16)下载,并可选配 DFlash2 草稿模型用于推测解码。一个 ./start.sh 脚本处理设置、验证、启动和冒烟测试,并在端口 8888 上提供兼容 OpenAI 的 API 端点。系统使用 FP8 KV 缓存池并发处理多个请求,支持图像和视频输入(在主节点上运行模型的视觉塔),并包含工具调用、结构化输出(通过 xgrammar)和提示词复用以加速重复系统提示。

适用对象

希望在经济实惠的双 GB10 硬件上部署 GLM-5.3-Flash 的开发者和研究人员,需要长上下文(最多 1M token),并希望获得一个即插即用的 OpenAI 兼容端点来构建使用文本、图像和视频的应用。需要熟悉 Docker、SSH 和 NVIDIA 硬件设置。

亮点

  • 在共享 FP8 KV 池(总计约 290 万 token)上提供 GLM-5.3-Flash,最多支持 4 个并发请求。
  • 每个请求支持完整的 1,048,576 token 上下文窗口。
  • 解码吞吐量最高约 108.8 tok/s(聚合),预填充约 1,950 tok/s;首 token 时间低至 170 ms。
  • 提示词复用:相同的 64k token 提示第二次访问耗时低于 0.07 秒,而不是 34 秒。
  • 通过 OpenAI 风格的内容部分处理图像(JPEG/PNG/WebP)和视频(MP4/WebM/MOV/MKV)。
  • 包含工具调用、结构化输出和 Anthropic Messages API 兼容补丁。
  • 提供一键设置(./start.sh),准备两台 Sparks 并启动服务器,包含日志和健康检查。
  • 在 4 位 / FP8 配置下,GSM8K(98.8%)、HumanEval(95.7%)和 HumanEval+ / MBPP+(86.5%)质量基准测试。

相关

  • 项目
  • 项目
  • 项目
  • Dispatch
  • Dispatch