一个模型覆盖哪些任务

WeVisOne-VL 把视觉任务拆成两类:对象级和像素级。对象级包括开放词表检测、指代定位、计数、指向和 OCR;像素级包括指代分割和可提示 alpha matting。输入是一张图和一句自然语言,输出可以是框、点、计数、文本,也可以是全分辨率 mask 或连续 alpha matte。

它用坐标 token <0> 到 <1000> 表示归一化框和点;每个预测框后面跟一个特殊实例 token,像素解码器再根据这个 token 的隐藏状态、框和 Qwen3-VL ViT 的多层特征,输出 mask 或 matte。目标不存在时直接输出 None,而不是硬编一个框。

9.6M 解码器省掉了什么

传统流程通常是「检测模型出框 → SAM 出 mask → 后处理」,每个环节一个模型、一套依赖、一份显存。WeVisOne-VL 把分割头压到 9.6M 参数,跟主模型一起训练,推理时只多一个轻量解码器。官方在 1 亿张图上做了细粒度标注,用知识图谱做概念发现、专家模型定位、VLM 校验,再扩成 mask 和 matte。

基准数字

官方给出的对比:LVIS F1 55.3(基线 50.7)、Dense200 71.3(58.7)、RefCOCOg test F1 81.8(77.6)、PointBench 71.9%(69.9%)、PixMo-Count 89.6%(82.8%)、TotalText F1 52.0(43.3%)、ReasonSeg val gIoU 71.2(65.0)。拒绝率 96.4%,基线 73.0%。这些是腾讯自测,第三方复现还没看到。

部署的现实约束

4B BF16 权重约 9.7GB,INT8 版约 5.7GB;像素解码器在 1024×1024 画布上跑 fp32,每个实例约 2GB 显存。16GB 卡能跑完整流程,12GB 卡在分割/抠图任务上会失败。vLLM 首次请求有明显冷启动,实测 1.9 秒的检测在第一次可能到 14.5–15.5 秒,服务启动后要先打一发空请求预热。

另一个容易踩的坑是 GGUF / Ollama:它们只带语言模型和视觉投影,不理解特殊实例 token,也没有像素解码器,所以能出框和 OCR,但出不了 mask 或 matte。要用像素级能力,必须保留 PyTorch / vLLM 路径。

适合谁,怎么试

  • 电商和设计团队:用一句话抠人、抠商品、出 alpha matte,减少 SAM + 后处理的串联。
  • 机器人和具身智能:需要同时知道「物体在哪」和「它的精确轮廓」,一个模型少一次坐标对齐。
  • 文档/OCR:检测、定位和阅读顺序可以放在同一个上下文里问。
  • 先测小目标、遮挡、密集场景和目标不存在;这四类最容易暴露「框看起来对、mask 不能用」。
一句话:WeVisOne-VL 把「检测 + SAM」的两段式流程压成一段,但省下的显存会被像素解码器吃回去一部分,部署前要按任务分别算账。