WeMM-Embedding
腾讯微信视觉团队开源的多模态Embedding统一模型
加载项目详情…
本应用为开源项目,仅供学习研究,请遵守其开源协议。
腾讯微信视觉团队开源的多模态Embedding统一模型
加载项目详情…
本应用为开源项目,仅供学习研究,请遵守其开源协议。
打开微信扫一扫,对准一件心仪的衣服拍张照片——不到一秒,微信就能从海量商品库中找出相似款;或者在公众号文章里看到一张截图,想知道它来自哪部剧,只需截下来搜索,一键直达。这是无数人每天都在使用的功能,背后依赖的正是多模态 Embedding(嵌入向量)技术。
简单来说,Embedding 就是把图片、文本、视频这些"人类看得懂"的内容,翻译成计算机能计算的"数字向量"。两张相似图片的向量距离近,与之相似的文字描述向量也近——这样就能实现"以图搜文""以文搜图"甚至"以视频搜商品"。而 Embedding 模型的质量,直接决定了这些功能的准确率。
2026年8月26日,微信视觉团队(WeChat Vision)在 GitHub 开源了 WeMM-Embedding(WeChat Multi-Modal Embedding),一个支持文本、图像、视频、视觉文档以及交错多模态输入的统一 Embedding 模型系列,在 MMEB-v2 评测基准上以 2B 参数量取得 77.9 平均分,超越多个 8B 参数竞品,在行业内外引发关注。
微信视觉团队长期服务于微信生态内的多模态理解需求。从早期基于 CLIP 的图文匹配,到后来的专用视频检索模型,每引入一种新模态就需要训练一个独立模型,维护成本高、跨模态联合推理困难。
痛点在于:现实世界的输入很少是单一模态。用户拍一张商品图,配上"类似款有优惠吗"的文字;或者截一张视频截图,问"这个场景出现在哪一集"——这些交错多模态场景,是传统单模态模型无法处理的。
微信视觉团队决定做一件行业里很多人想做但没做到的事:用一个统一模型,把所有主流模态都编码到同一个向量空间里。这就是 WeMM-Embedding 的由来。
该项目的技术报告于 2026 年 8 月发表在 arXiv(arXiv:2608.24053),由 Junjie Zhou、Ke Mei、Lei Li、Tianyi Wang、Fengyun Rao、Jing Lyu 等研究者共同撰写。论文披露,该项目已在微信内部完成 14 场 A/B 测试,并在 26 项内部任务上取得显著提升,已完成规模化部署。

WeMM-Embedding 在 MMEB-v2 评测基准上的性能表现,覆盖图像、视频、视觉文档三大任务类型。
WeMM-Embedding 系列包含三个规模的模型:
| 模型 | 参数量 | Embedding 维度 | Matryoshka 维度 |
|---|---|---|---|
| WeMM-Embedding-2B | 约 2.72B | 2048 维 | 64/128/256/512/1024/2048 |
| WeMM-Embedding-4B | 约 4B | 2560 维 | 64/128/256/512/1024/2560 |
| WeMM-Embedding-9B | 约 9B | 4096 维 | 64/128/256/512/1024/2048/4096 |
所有模型共享同一套架构设计,以 Qwen3.5 作为语言基座,融合视觉编码塔(Vision Tower),支持:文本(短查询、长文档、对话片段)、图像(照片、截图、设计稿、扫描件)、视频(短视频、直播片段,通过采样关键帧处理)、视觉文档(PDF 页面、PPT 页面、网页截图)以及交错多模态(图+文+视频混合输入,单次调用返回统一向量)。Embedding 从专用 <embedding> token 位置的最后一层 hidden state 提取,经过 L2 归一化后输出。
传统 Embedding 模型输出固定维度向量(如 2048 维),但实际应用中并非总是需要全维度输出。例如在移动端检索场景中,256 维向量足以满足需求,且可大幅降低存储和计算成本。WeMM-Embedding 内置 Matryoshka Representation Learning(MRL) 支持,可自由截取前 N 维(需为支持维度),截取后重新归一化即可。根据论文数据,2B 模型在 256 维时仍保留了完整维度图像与视频性能的 98.7%,几乎无损压缩 8 倍维度。
WeMM-Embedding 的训练采用两阶段策略:
第一阶段:广域多模态对齐(Broad Multimodal Alignment)
在大规模异构数据(数亿级)上进行预训练,数据覆盖多种模态、任务和领域。这一阶段的目标是让模型建立跨模态的通用语义关联。
第二阶段:细粒度相关性学习(Fine-grained Relevance Learning)
在精选的高质量任务数据上进行微调,学习更深层的语义相关性。例如在图像检索任务中,不仅要让"猫图"和"猫字"相近,还要区分"暹罗猫"和"英短"这类细粒度差异。
基座模型采用 Qwen3.5 系列,2B 模型基于 Qwen3.5-2B,视觉编码器为标准 Vision Transformer 架构。依赖库包括 transformers==5.2.0、sentence-transformers==5.7.0、qwen-vl-utils 等。
方式一:Transformers
from transformers import AutoModel, AutoProcessor
from qwen_vl_utils import process_vision_info
import torch
processor = AutoProcessor.from_pretrained("tencent/WeMM-Embedding-2B", trust_remote_code=True)
model = AutoModel.from_pretrained("tencent/WeMM-Embedding-2B", trust_remote_code=True).cuda()
messages = [{"role": "user", "content": [{"type": "image", "image": "demo.jpg"}]}]
prompt = processor.apply_chat_template(messages, tokenize=False, add_generation_prompt=False)
images, videos, video_kwargs = process_vision_info(messages, image_patch_size=16, return_video_kwargs=True)
inputs = processor(text=prompt, images=images, videos=videos, video_metadata=video_kwargs, return_tensors="pt").to("cuda")
with torch.inference_mode():
embedding = model.embedding(**inputs).float()
embedding = torch.nn.functional.normalize(embedding[..., :1024], dim=-1)
方式二:Sentence-Transformers(更简洁)
from sentence_transformers import SentenceTransformer
model = SentenceTransformer("tencent/WeMM-Embedding-2B", device="cuda")
embeddings = model.encode(["A dog running on beach", {"image": "demo.jpg"}, {"video": "clip.mp4"}], normalize_embeddings=True)
服务部署
支持 vLLM 和 SGLang 两种推理服务后端。vLLM 部署:vllm serve tencent/WeMM-Embedding-2B --runner pooling --chat-template tencent/WeMM-Embedding-2B/embedding_chat_template.jinja。SGLang 部署需先运行 scripts/serve_sglang.sh 脚本(内含视频处理 patch)。
MMEB-v2(78个任务)
在 2B 规模,WeMM-Embedding 取得平均 77.9 分,比同为 2B 的 Qwen3-VL-Embedding(73.2分)高出 4.7 分,尤其在视频任务上优势明显(70.8 vs 61.9)。即使与 8B 参数的 Qwen3-VL-Embedding(77.8分)相比,2B 的 WeMM-Embedding 依然胜出。在 9B 规模,WeMM-Embedding 取得 80.6 分,刷新该基准最高纪录。
MMEB-v3(190个任务,含Agent任务)
在更具挑战性的 MMEB-v3 上,2B 模型 56.0 分,4B 模型 58.2 分,9B 模型 59.5 分,全面超越所有开源竞品。尤其在 Agent 任务上,9B 模型达到 51.0 分(Hit@1),展现出处理多步推理任务的能力。
音频支持缺失:当前版本不支持音频输入,在 MMEB-v3 的音频任务上得分为 0。
显存要求不低:9B 模型约需 18GB VRAM(FP16),2B 模型也需约 4GB。官方推荐使用 vLLM/SGLang 服务化部署。
许可证存疑:GitHub 仓库 LICENSE 文件内容不明确,GH API 返回 spdx_id=NOASSERTION,论文提及"Apache License 2.0",建议商用前与腾讯确认。
非完全开源:仅开源了推理代码和评测代码,训练代码和完整训练数据集未公开。
WeMM-Embedding 的发布是 2026 年多模态 Embedding 领域的重要里程碑。它证明了在 Embedding 任务上,更好的训练配方可以让 2B 模型超越 8B 模型,对于需要在资源受限场景部署的企业意义重大。微信视觉团队将内部已规模化验证的技术开源,为整个多模态 AI 社区提供了高质量的基础模型。当前赛道主要玩家包括 Qwen3-VL-Embedding(阿里)、VLM2Vec-V2(洛桑联邦理工)、DME(百度)、Omni-Embed-Nemotron(NVIDIA)等,WeMM-Embedding 的 SOTA 表现让这场竞争更加激烈。
一句话总结:微信视觉团队开源的 WeMM-Embedding 是一款统一多模态 Embedding 模型,支持文本、图像、视频、视觉文档的跨模态检索,在多项基准上取得 SOTA,适合构建图搜、视频理解、文档智能等应用,但不支持音频且 9B 模型显存需求较高。