#54346 [Bugfix][Multimodal] Release Qwen2.5-VL and Qwen3-VL RoPE caches with the model
原始 PR · 作者 waizuichougou · 合并时间 2026-08-30 11:10
Qwen2.5/3-VL RoPE 缓存改实例级,修复 shutdown 显存驻留
值得精读,建议按以下视角阅读: 1. 重点学习“实例方法被类级 `lru_cache` 装饰导致缓存以 `self` 为键强引用实例”这一隐蔽生命周期陷阱的定位方法(PR body 中展示了 AI 辅助引用链分析的完整路径)。 2. 关注“bounded per-instance LRUCache 替代类级缓存”的通用范式:用容量上限防止无限增长,用实例属性保证随所有者释放,是 Python 缓存生命周期管理的标准解法,可迁移到其他模型的同类问题。 3. 参考 review 中“宁删不烂”的测试取舍:低价值测试(手动装配对象导致无法捕捉真实回归)不如删除,避免虚假的安全感。 阅读顺序建议先看 `qwen3_vl.py` 的 `rot_pos_ids` 改动理解模式,再看 `qwen2_5_vl.py` 的 `get_rope_by_thw` 确认落地细节。
参与讨论