LLM 通常会将相近时间内的大量请求打包成 batch 统一处理,因此 MoE 中的各个 Expert 都能吃饱,不会空等。但 VLA 不同,是小 batch 甚至通常都是 batch_size=1 的推理,由于非常高的实时性要求,很难做好大 batch ,因此大量显存资源被空占,合适的加载策略能充分释放这些资源。
通用的、即插即用的、不依赖特定模型的
-
Runtime Constract:
- 给出模型结构,能实时给出资源需求
- 每次推理时,记录当前任务类型、动作类型、激活的专家等信息
-
基于统计的调度策略:
- 基于当前资源情况动态调整分配,如显存较少时减少加载的专家数,Pcle较小时增大滚动窗口
- 根据 Constract 的统计情况,提前加载统计量最高的专家
- 提供多种统计量,根据 MoE 划分方式自主选择合适的统计量
-
可选的可学习路由:
- 根据 Constract 的统计数据,学习专家激活与各种 Constract 之间的深层联系
- 后续识别出历史出现过的相似情景直接提前加载专家,无需等待