View on GitHub

LLM Dev Highlights

« Back to vLLM Reports

vLLM 开发动态报告 - 2026-01-18

时间窗口: 2026-01-18 11:02 (UTC+8) ~ 2026-01-19 11:02 (UTC+8) 数据统计: 新 Issue 8 | 关闭 Issue 39 | 新 PR 26 | 合并 PR 18 | 关闭未合并 PR 12


📊 每日开发状态摘要

在2026年1月18日至19日的24小时内,vLLM社区保持着极高的活跃度与处理效率。共处理了39个历史遗留问题(主要因陈旧而关闭),同时新增了8个问题,这表明项目在积极进行“技术债务”清理。代码贡献方面,新增26个PR并合并了18个,其中多个PR涉及Model Runner V2重构、新模型支持(如OpenPangu VL、OLMo 3.5 Hybrid)以及核心性能优化,显示出项目在架构演进和功能扩展上的快速进展。

🎯 AMD/ROCm 生态相关动态

本周期内,有明确的AMD生态相关开发活动,主要集中在ROCm后端的代码重构和性能优化上。

  1. 新增PR #32543refactor: extract KV cache update logic into method in RocmAttention
    • 技术细节:此PR将ROCm注意力后端中的KV缓存更新逻辑提取到一个独立的 do_kv_cache_update 方法中。这是为了响应统一各注意力后端接口的Refactor任务(Issue #32335),旨在减少代码重复并提升可维护性。
    • 影响:这属于底层架构优化,使ROCm后端的代码结构与其他后端(如FlashAttention)保持一致,为未来进一步的功能开发和性能调优打下基础。
  2. 新增PR #32551[Performance] Split FlexAttention attention and cache update
    • 技术细节:同样为响应Issue #32335,此PR将FlexAttention后端的注意力计算和KV缓存更新分离开。这模仿了此前FlashAttention后端的优化模式。
    • 影响:虽然FlexAttention是Triton实现的通用注意力后端,但此优化也直接使启用FlexAttention的ROCm平台用户受益,有助于提升推理性能和解耦计算逻辑。

总结:本周期未出现涉及Quark量化工具、MI300特定优化或由xxx-amd用户提交的PR。AMD生态的参与主要体现在对ROCm计算后端的通用性架构优化上,表明AMD平台的集成和维护工作是vLLM多平台支持路线图中持续进行的一部分。

💬 高热度讨论分析

  1. 已关闭Issue #20860Ray + vLLM failing to automatically release GPU memory when tensor parallelism size (tp_size) > 1
    • 核心议题:用户在使用Ray部署多GPU(TP>1)vLLM服务时,任务结束后GPU内存无法自动释放。
    • 观点与争议
      • 用户 ShiyuNee 提供了详细的环境和代码,怀疑是进程间通信问题导致子进程未正确终止。
      • Ray 团队成员 eicherseiji 介入协助分析,通过日志发现Ray进程似乎已退出,但GPU内存仍被占用,建议用户尝试Ray Data内置的vLLM集成阶段。
    • 结论与状态:该Issue因超过90天无新活动而被自动标记为“stale”并关闭。讨论表明问题可能位于Ray与vLLM深度集成的边缘场景,但并未形成明确的根因结论或解决方案,用户可能需要依赖Ray团队提供的最新集成方案。
  2. 已关闭Issue #22975sometimes tool calling is not correctly parsed but remains in the plain content for qwen3 coder
    • 核心议题:Qwen3-Coder模型在进行工具调用时,输出偶尔无法被vLLM解析为结构化工具调用,而是以原始XML标签形式留在返回内容中。
    • 观点与争议
      • 多位用户(VivekMalipatelmondaylord等)确认了此问题,并指出在流式输出模式下更易出现。
      • 用户 sempervictus 提出见解,认为这可能与Qwen3模型内部使用XML标签的语言特性有关,输出格式的不稳定是模型本身问题,在其他推理引擎中也存在。
      • 用户 bbartelsIthanil 指出,模型仓库更新了工具调用解析器和聊天模板,可能已修复此问题。
    • 结论与状态:Issue因陈旧被关闭。讨论揭示了工具调用功能的一个关键挑战:模型输出格式的规范性与解析器的鲁棒性。解决方案指向更新模型文件本身(如tokenizer_config.jsongeneration_config.json),而不仅是vLLM代码。
  3. 新增PR #32553[P/D] Add KV cache queries and eliminate redundant prefill computation
    • 核心议题:此PR提议增加KV缓存查询功能,允许Prefill工作节点从其他引擎获取已缓存的KV块,避免重复计算。
    • 观点与争议
      • 支持与价值:PR作者 snadampal 阐述了其在多轮对话恢复、缓存驱逐恢复等场景下的显著优势。
      • 设计担忧:核心维护者 robertgshaw2-redhat 在评论中肯定了功能价值,但明确表达了对当前实现方式的担忧。他指出,通过重载现有字段含义来实现新功能的“隐式”设计可能带来理解和使用上的混淆,建议探讨一个更“显式”的设计方案。
    • 当前状态:PR仍处于开放状态。维护者的评论并非否定功能本身,而是希望就API设计进行更深入的讨论,这体现了vLLM项目对架构清晰度和长期可维护性的高度重视。

🔥 热门话题与趋势分析

  1. 视觉语言模型(VLM)支持持续扩展:新增了对OpenPangu VL(PR#32566)和Step1(PR#32511)模型的支持。同时,核心开发者WoosukKwon的PR#32546为Model Runner V2添加了基础VLM(如Qwen3-VL)支持,表明VLM是vLLm未来架构演进的重点优化方向。
  2. 工具调用与解析器优化:工具调用生态的完善是持续热点。除了上述关于Qwen3 Coder的讨论,本周期内出现了多个修复和增强相关解析器的PR(#32536, #32537, #32538, #32539),覆盖了Qwen3、Mistral/Devstral、Olmo3等模型,显示出社区在提升该功能稳定性和模型覆盖度上的努力。
  3. Model Runner V2的持续重构:由 WoosukKwon 主导的一系列PR(#32535, #32546, #32562等)持续推进Model Runner V2的优化,涉及Eagle推理优化、VLM支持、状态更新逻辑重构等。这标志着vLLM核心推理引擎正在向更高效、更统一的V2架构稳步迁移。
  4. 性能优化与确定性保障:多个PR关注底层性能与正确性,如优化Triton注意力内核(#32403)、修复批次不变性测试(#32544, #32561)、实现Triton版的top-p/k采样掩码(#32558)等。这反映了项目在追求极致性能的同时,对计算确定性和结果可靠性的严格把关。

🛠️ 重点技术变更

  1. PR #32417 (已合并):修复TRTLLM查询张量中的退化步幅问题。该Bug在使用FlashInfer后端时,当查询张量某一维度为1时可能导致内核执行错误。此修复提升了特定配置下的引擎启动稳定性。
  2. PR #30623 (已合并):将混合专家(MoE)模型的路由器逻辑分离为独立的面向对象类。这是MoE架构的一次重要重构,通过工厂模式创建不同的路由器(如TopK、分组TopK等),大幅提升了代码的模块化程度和可扩展性,为未来更复杂的路由策略奠定了基础。
  3. PR #32540 (已合并):修复GLM-ASR音频编码器的旋转位置编码(RoPE)维度错误。该问题导致模型音频编码器的输出不正确。这是一个针对特定模型架构的关键Bugfix,确保了GLM-ASR模型在vLLM上的推理准确性。

📈 开发活跃度观察

💡 值得关注的问题

  1. 性能回归问题(Issue #32547):用户报告从v0.13.0升级到v0.14.0rc2后,在相同硬件和模型上出现约10%的吞吐量下降。此问题需要高度关注,因为它可能涉及v0.14.0版本中引入的某些默认行为变更或潜在性能缺陷,影响用户体验。
  2. 模型实现正确性问题(Issue #32545):Gemma3视觉模型因自定义Conv2d层实现导致其视觉嵌入输出与原始Transformers库不一致。这引发了关于vLLM中自定义算子必要性和与参考实现对齐的讨论,关系到模型输出的准确性。
  3. 采样参数逻辑缺陷(Issue #32557)SamplingParamsbad_words_bad_words_token_ids 的转换逻辑存在缺陷,在某些分词器(如带有特殊空格处理的)上无法正确添加带前缀空格的禁忌词。这是一个影响核心采样功能正确性的Bug。

📋 附录:详细数据列表

新增 Issue

已关闭 Issue

新增 PR

已合并 PR

关闭但未合并的 PR