DeepSeek 做了件罕见的事情:在终于开始灰测多模态能力后,它放出了一篇解释背后技术的论文,但这篇论文却在发布没多久就又被悄悄撤掉。
4 月 29 日,DeepSeek 研究员陈小康在 X 发布一条推文——现在,我们可以看见你了。配图中,DeepSeek 标志性的鲸鱼 logo 摘下眼罩,露出了眼睛。

对 DeepSeek 来说,视觉能力是让它的推理能力从文本世界延伸到真实世界的关键一步。但这次灰测的视觉能力,很快被使用者们感觉到不同:它和其他模型给语言模型底座增加多模态功能不同,更像是一个单独的模型,且不是以附庸形式定位,而是有某种原生的思考和推理能力。
就在大家好奇心增加的时候,DeepSeek 发布了一篇解释它追求的视觉能力的论文:《Thinking with Visual Primitives》。

这并不是所有主流模型厂商在多模态领域的方向,这让人意外,但这个想法非常有趣。DeepSeek 再次给基础研究提供了新的思路。
但更加让人意外的是,这篇论文很快就被撤下了,没有给出任何解释,也不确定是否会再次发布。
所以,DeepSeek 这次的视觉能力到底是怎样的?我们结合实测、它的研究员的分享,以及这篇 " 消失 " 的论文的内容,来尝试解释一下它的做法。
01 当 DeepSeek 的视觉能力,开始进入真实场景
目前 DeepSeek 的视觉模式还在灰度测试,逐步向用户开放中。
从 X 上已经试用到这一功能的用户反馈来看,DeepSeek 的视觉能力并不只是识别图片里有什么,更重要的是,它会尝试把图像中的信息和已有的世界知识联系起来。
有用户在 X 上表示 DeepSeek 视觉模式的世界知识非常丰富,思考过程也很有趣。他在公司附近拍了一张照片,发给 DeepSeek。在 DeepSeek 的思考过程中可以看到,它几乎知道我公司附近的每一栋楼,并尽量搜索正确的那栋。并且这个过程中没有用到联网搜索能力。


DeepSeek 的思考过程十分严谨,它用的是反向推理的方法,从终点出发,逐步反向追踪,走到起点。为了验证解法的可行性,DeepSeek 这一路径用正向的方式走了一遍,然后它又核算了一遍,再输出最终答案。整个过程中,DeepSeek 推理了四遍路径的可行性。
陈小康在 30 号发布的推文中给了更详细的解释:传统的思维链(CoT)主要停留在语言空间里,但视觉推理需要更多能力。通过把点和框作为认知锚点,我们的模型弥合了 " 指代鸿沟 "(Reference Gap),模拟了人类在视觉推理中常用的 " 指向—推理 " 协同机制。

什么是使用视觉基元进行思考呢?
简单来说,就是让模型在看图推理时,不再只依赖自然语言描述,而是把图像中的点、边界框、路径坐标等空间标记,也作为推理过程的一部分。
以往多模态模型面对一张图片时,通常会用语言来组织思考。比如它会说 " 左边那个人 "" 右上角的物体 "" 中间那条路 "。但问题在于,这些描述在人类看来很自然,对模型来说却并不总是精确。尤其在一张复杂图片里,如果有很多相似的人、物体或区域," 左边那个 "" 旁边那个 " 很容易变得模糊,模型也可能在推理过程中把对象搞混。
DeepSeek 在报告中把这个问题称为 " 指代鸿沟 "。也就是说,模型不是完全看不见,而是看见之后,很难在连续的视觉空间中稳定地指向自己正在讨论的对象。
视觉基元要解决的正是这个问题。所谓视觉基元,可以理解为模型在图像中的 " 手指 "。当模型数一张合照里有多少人时,它可以先用边界框把每个人标出来,再进行统计;当模型判断两个物体的位置关系时,它可以先框出相关物体,再比较它们的相对位置;当模型走迷宫或追踪一条线时,它可以用一串点记录路径,而不是只用语言说 " 往左、再往右 "。
这样一来,模型的推理就不再悬浮在文字里,而是被锚定到图像中的具体位置。这也是 DeepSeek 使用视觉基元进行思考最重要的变化,多模态模型的能力不只是看得更清楚,还要指得更准确。
03 DeepSeek 怎么做视觉推理
陈小康指出,目前 DeepSeek 的视觉模型主要处理三类任务:计数、空间推理和拓扑推理。
DeepSeek 的做法不是简单让模型看更高分辨率的图片,而是让模型在推理过程中使用点、框、路径坐标这些 " 视觉基元 ",把每一步判断都落到图像中的具体位置上。
在计数任务上,DeepSeek 主要使用的是边界框。
报告中说,多模态大语言模型一直很难做到准确计数,尤其是在密集场景中。人类在数东西时,通常会采用一种 " 系统扫描和累加 " 的方式,比如从左到右一个个点着数。但语言模型在对象数量较多时,很难建立精确的对象对应关系。为了解决这个问题,DeepSeek 使用边界框作为视觉基元,为每个被计数对象提供明确的视觉锚点。
也就是说,模型不是直接凭感觉回答 " 有多少个 ",而是先把目标对象找出来、框出来,再基于这些框进行统计。比如数一张合照里有多少人,模型会先框出图中的每个人,再计算总数。对于更复杂的细粒度计数,比如 " 有几只熊在地面上 ",模型还会先找出所有熊,再逐一判断它们是在树上还是在地面,最后得出答案。

在空间推理任务上,DeepSeek 也是先让模型用视觉基元锚定对象,再进行关系判断。
报告中说,空间推理和一般视觉问答被放在同一个类别里处理,因为这类任务的共同难点是:如果只用语言描述,模型很容易出现指代模糊和语义漂移。比如 " 灰色金属物体 "" 旁边那个小物体 "" 同样大小的紫色橡胶物体 ",这些说法如果不落到具体图像区域上,模型在推理过程中很容易把对象搞混。

在拓扑推理任务上,DeepSeek 主要使用的是点。
拓扑推理关心的不是某个物体是什么,而是路径、连通性和结构关系。比如迷宫里从起点能不能走到终点,一堆交错的线条中,某一条线最终连到哪个图标。这类任务对多模态模型尤其困难,因为它要求模型持续跟踪路径,而不是看一眼就回答。
报告中说,纯语言的思维链很难准确描述不规则形状的轨迹,因此使用点作为认知单元的视觉基元,特别适合处理这类问题。

在线条追踪任务中,模型也会用一串点来表示自己沿着哪条线走。报告中说,这类任务的核心挑战是交叉点消歧:当两条线交叉时,模型必须根据局部几何连续性判断哪一条才是目标线的延续,而不是被另一条线带走。为了防止模型只是靠颜色猜,DeepSeek 还设计了所有线条颜色和粗细都一样的样本,迫使模型真正根据曲线连续性来追踪路径。
04 视觉基元并不是终点
不过,使用视觉基元进行思考,并不意味着视觉推理问题已经被彻底解决。它最大的优势,是让模型的视觉推理变得更稳定,也更容易被验证。
这会带来两个直接好处。
一是减少幻觉。模型如果要判断 " 这里有没有紫色橡胶物体 ",就不能只凭语义猜测,而要先在图中找出候选物体,再逐一排除。二是提高可解释性。比如模型说一张图里有 25 个人,如果它同时框出了这 25 个人,用户就能判断它有没有漏数、重复数,或者把其他物体误认成人。
这也是为什么 DeepSeek 的视觉模式在网页复刻、迷宫求解、复杂图像问答这类场景中会显得更有用。网页复刻需要模型理解页面里的模块、层级和布局关系;迷宫求解需要模型持续追踪路径;复杂图像问答则要求模型在多个视觉线索之间来回比对。它们共同需要的不是一句笼统的图片描述,而是模型能够稳定地 " 看图说话 "。
另一个优势是效率。报告中提到,DeepSeek 并不是简单依赖大量视觉 token 来弥补视觉能力,而是通过更高效的视觉 token 压缩架构,让模型在较低图像 token 消耗下仍然保持较强的推理能力。报告中说,对于 800 × 800 的输入图像,其模型在 KV cache 中只保留大约 90 个条目,却能在计数和空间推理等基准上取得有竞争力的表现。
DeepSeek 想走的路线,并不是无限提高分辨率、堆更多图像 token,而是让模型更有效地使用视觉信息。
但这套方法也有局限,报告中提到这类方式有三部分的局限。

第二个局限,这种能力目前还依赖显式触发。报告中说,当前使用视觉基元进行思考的能力需要通过明确触发词来激活,未来希望模型能够根据具体上下文,自主判断是否调用这一机制。
这意味着,现在模型未必会在每个需要的场景里自动使用这项能力。用户如果只是普通地问 " 这张图里有多少人 "" 这条路能不能走通 ",模型可能仍然用普通语言推理,而不是主动输出点、框或路径。真正理想的状态应该是,模型自己判断这个问题是否需要精确视觉定位。如果是计数、路径、空间关系这类任务,它就自动拿出 " 手指 ";如果只是描述画面氛围,就不必调用这套机制。
第三个局限,是拓扑推理仍然很难。报告中说,使用点作为视觉基元来解决复杂拓扑推理问题,仍然是一项艰巨挑战,目前模型的跨场景泛化能力也有限。
这不难理解。点可以告诉模型 " 我现在走到哪里 ",但点本身并不直接表示 " 这里和那里是否连通 "。在迷宫里,两个点看起来很近,中间可能隔着一堵墙;在交错线条中,两条线可能在视觉上相交,但实际并不是同一条路径的延续。模型不仅要标点,还要持续判断连通关系、路径方向和局部几何连续性。只要中间某一步走错,后面的推理就可能全部偏掉。
所以,视觉基元让模型开始能够在图像中定位、比较和追踪。但要真正处理开放世界里的复杂视觉问题,还需要更强的感知能力、更稳定的自主调用机制,以及更好的跨场景泛化能力。
在视觉理解层面,DeepSeek 给出的答案是,让图像不再只是输入材料,而是成为模型推理过程的一部分。模型不只是看见世界,而是开始学会在世界中找到锚点。
这不像是一个附带的研究,更像是 DeepSeek 对视觉的最重要的一个不同的理解。因此这次罕见的删除论文行为也引起不少遐想,有人认为它对于开源模型来说 " 太强大 " 了,以至于不适合发表。真相如何可能要等 DeepSeek 自己给出解释了。
