返回案例页
同一空间检索

CLIP 跨模态检索 RAG

CLIP 把文本和图片编码进同一个 512 维空间,于是文搜图 / 图搜图成立。基于 LlamaIndex 从 CLIP MVP 做到 VLM 图片描述 + BM25 混合检索(RRF 融合),Milvus 持久化。

在 文搜图 / 图搜图 / 混合 间切换:query 编码成 512 维落进同一空间,按 cosine 拉出最近的图——含真实偏低的跨模态分数和自身命中过滤。

CLIPLlamaIndexMultimodalMilvusRRF
CLIP 跨模态检索 RAG

本地版本说明

512 维共享空间、文搜图约 0.24 的分数、图搜图自身命中(1.0)过滤、RRF(k=60)、VLM 描述 1536 维都来自 LlamaIndex 多模态 notebook。2D 图是为直觉做的投影。

交互预览

文字和图片落进同一个向量空间

CLIP 把文本和图片都编码成 512 维同一空间,所以可以「文搜图 / 图搜图」。混合检索再叠加 BM25 + RRF 融合。

共享 512 维空间(投影到 2D)

架构图流程图示意图柱状图UI 截图风景照
文本:「系统架构图」

检索结果(cosine)

运行检索,看 query 在共享空间里拉出最近的图。

进阶:VLM 描述 + 混合

CLIP 读不了图内文字、中文弱 → 用 VLM(GPT-4o / Qwen-VL-Max) 给图生描述,再用 text-embedding-3-small(1536d) 入库;检索时 BM25 + 向量经 QueryFusionRetriever 用 RRF(k=60) 融合。

建议体验

跑文搜图,看文本 query 拉出最近的图。

切图搜图,看自身命中(1.0)被过滤掉。

试混合,注意 BM25 + 向量经 RRF(k=60) 融合。

这个试玩能说明什么

你能落地跨模态检索(文↔图),不只是「Chat with text」。

你知道 CLIP 的边界(图内文字 / 中文),用 VLM 描述补。

你在 LlamaIndex 多模态栈上做混合检索(向量 + BM25 经 RRF)。

共享空间

CLIP(OpenAI)· get_text/image_embedding 都是 512 维

超越 CLIP

VLM 描述(GPT-4o / Qwen-VL-Max)→ text-embedding-3-small 1536 维

混合

BM25 + 向量 → QueryFusionRetriever,RRF k=60 · Milvus