章节 01
导读 / 主楼:InferGrid:单GPU多租户公平调度的新选择
InferGrid是一个轻量级LLM推理编排层,在单GPU上实现多租户公平调度,无需Kubernetes。通过令牌桶限流机制,确保"安静租户"在高负载邻居压力下仍能获得稳定的TTFT表现。
正文
InferGrid是一个轻量级LLM推理编排层,在单GPU上实现多租户公平调度,无需Kubernetes。通过令牌桶限流机制,确保"安静租户"在高负载邻居压力下仍能获得稳定的TTFT表现。
章节 01
InferGrid是一个轻量级LLM推理编排层,在单GPU上实现多租户公平调度,无需Kubernetes。通过令牌桶限流机制,确保"安静租户"在高负载邻居压力下仍能获得稳定的TTFT表现。
章节 02
results/目录。\n\n## 竞争格局与差异化\n\nInferGrid在README中提供了一张清晰的对比表:\n\n| 系统 | 需要K8s | 多模型 | 租户公平性 | 硬件要求 |\n|------|---------|--------|------------|----------|\n| NVIDIA Dynamo | 是 | 是 | 否 | NVIDIA数据中心 |\n| llm-d | 是 | 有限 | 否 | NVIDIA数据中心 |\n| Mammoth | 是 | 是 | 否 | NVIDIA+AMD数据中心 |\n| AIBrix | 是 | 是 | 否 | NVIDIA数据中心 |\n| Ollama | 否 | LRU淘汰 | 否 | 多平台单节点 |\n| 原生vLLM/SGLang | 否 | 单进程单模型 | 否 | 单节点 |\n| InferGrid | 否 | 是 | 是 | 单节点1-4 GPU |\n\nInferGrid唯一填补了"无需K8s的多租户公平推理"这一市场空白。\n\n## 快速上手\n\n安装和启动极为简洁:\n\nbash\npip install infergrid\ninfergrid serve --config configs/quickstart_fairness.yaml\n\n\n服务启动后(首次加载模型约30-90秒),即可通过标准OpenAI API访问:\n\nbash\ncurl localhost:8000/v1/completions -H \"X-Tenant-ID: noisy\" \\\n -d '{\"model\":\"llama31-8b\",\"prompt\":\"...\",\"max_tokens\":64}'\n\ncurl localhost:8000/v1/completions -H \"X-Tenant-ID: quiet\" \\\n -d '{\"model\":\"llama31-8b\",\"prompt\":\"...\",\"max_tokens\":64}'\n\n\n通过/metrics端点可实时监控各租户的拒绝率和队列深度。\n\n## 未来路线图\n\n项目计划于2026年5月12日正式发布。后续规划包括:\n\n- Gate 2.1:8租户扩展验证\n- Gate 2.4:Mixtral-8x7B MoE公平性测试(2xA100 TP=2)\n- Gate 2.3:Llama-3.1-70B在4xA100 TP=4上的公平性验证\n- v0.3:集成LMCache实现KV缓存分层\n- v0.2.1:多引擎路由(vLLM ↔ SGLang)\n\n## 总结\n\nInferGrid代表了一种务实的工程哲学:不追求替换现有引擎,而是在其上添加缺失的多租户能力;不夸大性能数字,而是公开承认并修正测量误差;不强制基础设施升级,而是让单GPU部署也能获得生产级的公平性保证。\n\n对于希望在有限硬件上服务多用户、多模型的团队,InferGrid提供了一个值得认真评估的选择。章节 03
InferGrid:单GPU多租户公平调度的新选择\n\n背景:多租户推理的公平性困境\n\n随着大语言模型(LLM)推理需求的爆发式增长,越来越多的团队需要在共享硬件上服务多个用户或应用。然而,传统的推理引擎如vLLM和SGLang虽然性能出色,却缺乏对"租户"概念的内在支持。当一个"吵闹邻居"(noisy neighbor)以高并发请求冲击系统时,其他用户的响应延迟会急剧恶化——首token时间(TTFT)可能从几十毫秒飙升到数秒。\n\n现有的解决方案要么强制要求Kubernetes(如NVIDIA Dynamo、AIBrix),要么放弃多租户公平性(如Ollama的LRU淘汰策略)。对于希望在单台服务器上运行多模型、服务多用户的中小团队来说,选择十分有限。\n\nInferGrid的核心定位\n\nInferGrid是一个仅约3500行代码的轻量级中间件,直接运行在vLLM或SGLang之上,填补了这一空白。它明确声明自己不是Kubernetes的替代品,也不是vLLM的竞争对手,而是一个"编排层"——让现有引擎获得多租户感知能力。\n\n项目的核心承诺极具吸引力:无需K8s,只需pip install,即可在单GPU上实现租户公平的LLM推理服务。\n\n关键技术机制\n\n令牌桶限流:公平性的基石\n\nInferGrid实现了一套基于令牌桶(token-bucket)的租户级限流机制。每个租户被分配独立的预算和突发容量,系统通过精细的速率控制防止任何单一租户耗尽资源。\n\n实验数据令人印象深刻:在单张A100-SXM4 80GB上运行Llama-3.1-8B,当一个"洪水"客户端以32 RPS持续冲击时,未加限流的普通FIFO队列会让"安静用户"的TTFT p99达到1585毫秒;而启用InferGrid的令牌桶限流后,同一安静用户的TTFT p99降至61.5毫秒——仅比无竞争时的53.9毫秒高出14%。\n\n架构组件\n\nInferGrid的架构包含四个核心模块:\n\n1. WorkloadRouter(工作负载路由器):负责请求画像、长度分桶调度、模型生命周期管理,提供OpenAI兼容的HTTP API\n2. AdmissionController(准入控制器):基于优先级的并发控制,支持亚毫秒级快速路径\n3. CacheManager(缓存管理器):处理多模型的KV缓存生命周期,支持频率+近期性淘汰策略\n4. TenantManager(租户管理器):维护每个租户的预算、令牌桶限流和DRR(Deficit Round Robin)优先级评分\n\n多模型支持\n\n与Ollama的纯LRU策略不同,InferGrid采用频率+近期性(frequency+recency)的复合淘汰策略,允许在单GPU上热切换多个模型,无需重启服务。这对需要同时服务不同任务(如聊天、代码生成、嵌入)的场景尤为重要。\n\n实验验证与数据透明\n\nInferGrid团队 unusually 重视实验数据的诚实性。他们在README中专门设置了"Corrections"章节,公开承认早期TTFT测量存在约30毫秒的低估(因测量的是SSE首帧RTT而非首个非空token),并在PR #28/#31中修复。\n\n截至目前,项目已完成多轮实验验证:\n\n- Gate 0:系统启动验证(A100,$5.76)\n- Gate 0.6:基准测试工具链验证(A100,$3.17)\n- Gate 1.5:单模型准入上限测试——证伪了原有假设(H100,$1.30)\n- Gate 2-FAIRNESS:5组对照实验验证多租户公平性(A100,$1.40)\n- Gate 2-FAIRNESS Arm 5b:令牌桶机制确认有效(A100,$0.30)\n\n总计计算开销仅约13美元,所有原始数据和追踪日志均公开在results/目录。\n\n竞争格局与差异化\n\nInferGrid在README中提供了一张清晰的对比表:\n\n| 系统 | 需要K8s | 多模型 | 租户公平性 | 硬件要求 |\n|------|---------|--------|------------|----------|\n| NVIDIA Dynamo | 是 | 是 | 否 | NVIDIA数据中心 |\n| llm-d | 是 | 有限 | 否 | NVIDIA数据中心 |\n| Mammoth | 是 | 是 | 否 | NVIDIA+AMD数据中心 |\n| AIBrix | 是 | 是 | 否 | NVIDIA数据中心 |\n| Ollama | 否 | LRU淘汰 | 否 | 多平台单节点 |\n| 原生vLLM/SGLang | 否 | 单进程单模型 | 否 | 单节点 |\n| InferGrid | 否 | 是 | 是 | 单节点1-4 GPU |\n\nInferGrid唯一填补了"无需K8s的多租户公平推理"这一市场空白。\n\n快速上手\n\n安装和启动极为简洁:\n\nbash\npip install infergrid\ninfergrid serve --config configs/quickstart_fairness.yaml\n\n\n服务启动后(首次加载模型约30-90秒),即可通过标准OpenAI API访问:\n\nbash\ncurl localhost:8000/v1/completions -H \"X-Tenant-ID: noisy\" \\\n -d '{\"model\":\"llama31-8b\",\"prompt\":\"...\",\"max_tokens\":64}'\n\ncurl localhost:8000/v1/completions -H \"X-Tenant-ID: quiet\" \\\n -d '{\"model\":\"llama31-8b\",\"prompt\":\"...\",\"max_tokens\":64}'\n\n\n通过/metrics端点可实时监控各租户的拒绝率和队列深度。\n\n未来路线图\n\n项目计划于2026年5月12日正式发布。后续规划包括:\n\n- Gate 2.1:8租户扩展验证\n- Gate 2.4:Mixtral-8x7B MoE公平性测试(2xA100 TP=2)\n- Gate 2.3:Llama-3.1-70B在4xA100 TP=4上的公平性验证\n- v0.3:集成LMCache实现KV缓存分层\n- v0.2.1:多引擎路由(vLLM ↔ SGLang)\n\n总结\n\nInferGrid代表了一种务实的工程哲学:不追求替换现有引擎,而是在其上添加缺失的多租户能力;不夸大性能数字,而是公开承认并修正测量误差;不强制基础设施升级,而是让单GPU部署也能获得生产级的公平性保证。\n\n对于希望在有限硬件上服务多用户、多模型的团队,InferGrid提供了一个值得认真评估的选择。