WeMM-Embedding 是腾讯微信视觉团队开源的一组通用多模态向量嵌入模型,面向文本、图片、视频、视觉文档以及图文交错输入的统一表征与检索。项目提供 2B、4B、9B 三种规模模型,支持 Matryoshka Embeddings,可按 64 到 4096 等不同维度截断使用,以平衡效果、存储和检索成本。README 中给出了 Transformers、Sentence Transformers、vLLM、SGLang 推理与服务化示例,并包含 MMEB-v3 评测代码。
适用领域
多模态检索 / 向量数据库与语义搜索 / 图文视频理解 / 视觉文档理解 / Embedding 模型 / RAG 检索增强生成 / 企业内容搜索 / 推荐与相似度匹配
配置难度
中高。对于熟悉 Python、PyTorch、Hugging Face 和向量检索的开发者,跑通示例难度中等;但如果要做生产级多模态检索系统,还需要处理模型显存、视频预处理、批量离线编码、向量库选型、服务并发、维度压缩、评测集构建和许可合规等问题。
商业价值
业务价值较高,尤其适合拥有大量图片、视频、文档截图、商品素材或内容库的团队。它可以帮助企业构建跨模态搜索、内容推荐、相似内容去重、多模态 RAG 和素材资产管理能力。Matryoshka 维度截断能降低向量库存储和检索成本,使不同规模业务可以按成本选择 embedding 维度。但实际 ROI 取决于 GPU 资源、数据规模、检索质量要求、线上延迟要求和现有搜索系统集成成本。
01
技术亮点
- 统一多模态表示:同一模型族支持文本、图片、视频、视觉文档和交错多模态输入。
- 模型规模选择灵活:提供 2B、4B、9B 三档模型,可在效果和部署成本之间取舍。
- 支持 Matryoshka Embeddings:可截断为 64、128、256、512、1024 等维度,降低向量存储和 ANN 检索成本。
- README 报告的 benchmark 表现较强:在 MMEB-v2 和 MMEB-v3 多项指标上列出了优于多个公开基线的结果。
- 工程接入方式较完整:提供 Transformers、Sentence Transformers、vLLM、SGLang 示例,方便离线推理和在线服务化。
- 包含评测代码:mmeb_v3_eval 目录提供 MMEB-v3 评测流程,便于复现实验或做模型对比。
- 腾讯微信视觉团队出品,项目关注度较高,当前 GitHub stars 约 454。
02
目标用户
- 需要构建图文视频统一检索系统的算法工程师
- 需要多模态 RAG 能力的 AI 应用开发者
- 从事向量数据库、搜索引擎、推荐系统的后端工程师
- 需要处理图片、短视频、文档截图、商品图、内容素材的企业研发团队
- 研究多模态表征学习、跨模态检索和 Embedding Benchmark 的科研人员
- 已有 Hugging Face、Transformers、Sentence Transformers 使用经验的 Python 开发者
03
配置要求
- 主要语言为 Python。
- 依赖 requirements.txt,README 特别建议使用 transformers==5.2.0 以保证推理和预处理可复现。
- 模型权重需要从 Hugging Face 获取,支持本地路径或 Hugging Face model id。
- 推理支持 Transformers 和 Sentence Transformers。
- 服务化测试版本包括 vLLM 0.27.0 和 SGLang 0.5.9。
- 模型规模较大,2B、4B、9B 分别需要不同级别的 GPU 显存;生产部署前需要根据 batch size、输入视频帧数、embedding 维度和并发量压测。
- 视频输入涉及采样和预处理,评测中提到使用 64 帧视频采样,实际业务需要根据性能成本调整。
- 支持 Matryoshka 维度截断,但截断后需要重新 L2 normalize。
- 当前不支持音频输入;MMEB-v3 中音频任务得分为 0。
- 第三方组件保留其原始许可证,商用前需要检查依赖、模型权重和第三方代码的许可条款。
04
适用场景
- 文本搜图片:用自然语言查询图片库、商品图、素材库或相册
- 文本搜视频:用文本描述检索短视频、监控片段、课程视频或媒体素材
- 图片搜图片:以图搜图、相似商品检索、相似素材去重
- 视频搜视频:视频相似度检索、视频聚类、内容去重
- 视觉文档检索:对截图、扫描件、图文混排文档进行语义检索
- 多模态 RAG:将文本、图片、视频、视觉文档编码到统一向量空间后接入向量数据库
- 内容审核与归档:对海量多媒体内容进行语义聚类、标签召回和相似内容发现
- Agent 多模态记忆:为多模态智能体构建可检索的长期记忆或上下文库
05
部署与配置
- 准备 Python 环境,建议使用独立虚拟环境或 Conda 环境。
- 克隆仓库:git clone https://github.com/Tencent/WeMM-Embedding.git
- 进入项目目录:cd WeMM-Embedding
- 安装依赖:pip install -r requirements.txt
- 从 Hugging Face 下载模型,例如 tencent/WeMM-Embedding-2B、tencent/WeMM-Embedding-4B 或 tencent/WeMM-Embedding-9B,或在推理脚本中直接使用 Hugging Face model id。
- 使用 Transformers 推理示例:python examples/transformers_inference.py --model /path/to/WeMM-Embedding-2B --image /path/to/image.jpg --video /path/to/video.mp4 --dimension 2048
- 使用 Sentence Transformers 推理示例:python examples/sentence_transformers_inference.py --model tencent/WeMM-Embedding-2B --image /path/to/image.jpg --video /path/to/video.mp4 --dimension 2048
- 如需服务化,可使用 vLLM:vllm serve "$MODEL_PATH" --runner pooling --chat-template "$MODEL_PATH/embedding_chat_template.jinja"
- 如需使用 SGLang,先执行 python scripts/patch_sglang_video.py,再启动 sglang.launch_server 并开启 embedding 相关参数。
06
风险与注意事项
- 仓库元数据 license 显示 NOASSERTION,虽然 README 声明腾讯自研代码为 Apache 2.0,但商用前仍应核查 LICENSE、模型卡和第三方依赖许可。
- 模型较大,对 GPU 显存、推理延迟、部署成本有较高要求,尤其是 4B 和 9B 版本。
- README 推荐 transformers==5.2.0,较新的 Transformers 版本可能因预处理差异导致结果不一致。
- 当前不支持音频输入,不适合需要音频、语音、音乐等模态统一检索的场景。
- 视频处理成本通常较高,长视频、大规模视频库需要额外设计切片、抽帧、缓存和索引策略。
- Benchmark 表现来自项目 README 和技术报告,落地到中文业务、垂直行业数据、私有数据集时仍需自行评测。
- GitHub stars 和 forks 规模尚处于早期阶段,社区生态、issue 经验和生产案例可能不如成熟 embedding 框架丰富。
- 模型权重托管在 Hugging Face,国内环境可能需要镜像、代理或内网制品管理方案。
2026-08-28
第19名
新收录 · github_search