【免费下载链接】WeMM-Embedding-4B
WeMM-Embedding-4B 是腾讯开源的通用多模态嵌入模型,基于 Qwen3.5-4B 构建,采用 Apache 2.0 许可证,支持商用。它可将文本、图像、视频和视觉文档统一编码为 2560 维向量,是企业级搜索、推荐与 RAG 系统的理想选型。本文将带你彻底搞懂它的许可证条款、商用边界和落地最佳实践。
一、WeMM-Embedding-4B 是什么?🔍
一句话概括:一个"什么都能编码"的多模态嵌入模型。
传统搜索系统往往需要为文本、图片、视频各维护一套模型,而 WeMM-Embedding-4B 只需一个模型就能输出统一语义空间的向量:
- 输入:文本、图像、视频、视觉文档(PDF 页面等)、文本与图/视频交错的复合输入
- 输出:2560 维 L2 归一化向量(余弦相似度即内积)
- 语言:中英文双语
- 不支持:音频输入(规划中暂不包含)
在 MMEB-v2 多模态嵌入基准(78 个数据集)上,4B 版本的综合得分79.2,图像任务 80.8、视频任务 72.1、视觉文档任务 82.0,直接超越了参数量更大的 Qwen3-VL-Embedding 8B(77.8),是"小模型大能力"的代表:
| 模型 | 参数量 | MMEB-v2 平均 | 图像 | 视频 | 视觉文档 |
|---|---|---|---|---|---|
| Qwen3-VL-Embedding | 2B | 73.2 | 75.0 | 61.9 | 79.2 |
| WeMM-Embedding-4B | 4B | 79.2 | 80.8 | 72.1 | 82.0 |
| Qwen3-VL-Embedding | 8B | 77.8 | 80.1 | 67.1 | 82.4 |
| WeMM-Embedding | 9B | 80.6 | 81.9 | 74.3 | 83.3 |
二、Apache 2.0 许可:你可以合法做什么 ✅
WeMM-Embedding-4B 的许可证文件为 LICENSE。其核心条款非常明确:
腾讯公开发布的代码、模型参数和权重,全部采用 Apache License 2.0 许可。
Apache 2.0 是业界最友好的商用许可之一,对生产落地最关心的权限包括:
| 使用场景 | 是否允许 | 说明 |
|---|---|---|
| 内部使用(企业私有部署) | ✅ | 无任何限制,无需开源你自己的系统 |
| 闭源商用产品集成 | ✅ | 可以嵌入商业产品并闭源销售 |
| 修改模型/代码后分发 | ✅ | 需保留许可声明并注明修改 |
| 提供 SaaS 服务 | ✅ | 网络服务不构成"分发",限制更少 |
| 再分发模型权重 | ✅ | 需附带 Apache 2.0 许可文本 |
Apache 2.0 附带的一项"隐藏福利":它包含明确的专利授权条款——任何贡献者授予使用者专利使用权,且若有人就本项目发起专利诉讼,相关专利授权自动终止。这对企业选型时评估专利风险是重要的加分项。
三、商用边界:3 个必须看清楚的细节 ⚖️
Apache 2.0 虽宽松,但"能商用"不等于"没有义务"。商用前请核对以下三点:
1. 第三方组件各有独立许可
License 中特别注明:项目依赖的第三方组件仍受其原始许可证约束。经核对,清单中唯一的开源模型依赖是Qwen3.5-4B(Alibaba Cloud,同样是 Apache 2.0),且腾讯对其做了修改(Tencent Modifications,版权归腾讯)。
💡 实务建议:虽然两个许可证恰好都是 Apache 2.0 不产生冲突,但仍建议法务在发布产品时保留对 Qwen3.5-4B 的致谢声明(Attribution),这是 Apache 2.0 分发的硬性要求。
2. 许可证声明必须保留
若你分发了模型或基于它的代码,需保留原始版权声明与许可文本(Apache 2.0 第 4 条)。最简单的方式:原样保留 LICENSE 文件和Copyright (C) 2026 Tencent声明。
3. 明确不属于授权范围的事项
- 商标不受许可(第 6 条):不能把 "WeMM"、"Tencent" 等名称用作你产品的商标或品牌名,只能在描述来源时合理使用
- "AS IS" 免责声明(第 7 条):模型按"现状"提供,官方不保证适销性或特定用途适配,生产环境的质量风险由使用方自行承担
- 责任限制(第 8 条):贡献者不对任何直接或间接损失负责
四、快速上手:3 步部署 WeMM-Embedding-4B 🚀
第 1 步:获取模型仓库
git clone https://gitcode.com/tencent_hunyuan/WeMM-Embedding-4B第 2 步:安装依赖
pip install torch transformers==5.2.0 "qwen-vl-utils[decord]==0.0.14" \ "sentence-transformers>=5.7.0" "accelerate>=1.1.0"⚠️ 版本钉住(pin)很重要:README.md 明确要求
transformers==5.2.0,这与 config.json 中声明的transformers_version一致,随意升级可能破坏模型加载。
第 3 步:选择推理方式
方式 A:离线批量编码(Sentence Transformers)
from sentence_transformers import SentenceTransformer model = SentenceTransformer("tencent/WeMM-Embedding-4B", trust_remote_code=True) embeddings = model.encode_document(["搜索查询文本", "产品描述"])多模态文档可直接传入包含image/video/text键的字典,支持文本与图、视频交错混排。
方式 B:高并发在线服务(vLLM,推荐生产使用)
vllm serve /path/to/WeMM-Embedding-4B \ --runner pooling \ --chat-template /path/to/WeMM-Embedding-4B/embedding_chat_template.jinja方式 C:SGLang 0.5.9 部署
python patch_sglang_video.py # 先对齐视频预处理逻辑 python -m sglang.launch_server \ --model-path /path/to/WeMM-Embedding-4B \ --is-embedding \ --enable-precise-embedding-interpolation五、生产级最佳实践:6 条经验清单 📋
1. 用 Matryoshka 截断维度,成本立省 80%+
这是 WeMM-Embedding-4B 最实用的生产技巧。模型支持Matryoshka 嵌入:直接截取向量前 d 维并重新归一化,即可得到低维向量,检索质量损失很小。可用维度定义在 config.json 的matryoshka_dimensions中:[64, 128, 256, 512, 1024, 2560]。
- 在线实时检索(延迟敏感)→ 截断到 256 维
- 离线召回/粗排(吞吐敏感)→ 128 或 64 维
- 精排/高精度场景→ 完整 2560 维
以 1 亿条文档、每条 2560 维 × 4 字节计算,存储约 977 GB;截断到 256 维后仅需约102 GB,向量数据库内存成本直降 90%。
2. 坚持 bfloat16 精度
模型原生精度为bfloat16(见 config.json)。GPU 推理务必保持该精度,既符合训练配置,也是当前推理框架的最优性能档位。
3. 理解嵌入的提取位置:EOS 位置池化
核心推理逻辑在 modeling_wemm_embedding.py 的embedding()方法:取序列最后一个有效 token(EOS 位置)的隐状态作为嵌入,再做 L2 归一化。这意味着输入序列的完整性很重要——截断要谨慎,模板渲染(embedding_chat_template.jinja)不要手动改动。
4. SGLang 视频预处理需打补丁
若用 SGLang 0.5.9 服务视频输入,必须先运行patch_sglang_video.py。它会将 SGLang 的视频帧采样与图像缩放逻辑对齐到 WeMM-Embedding 的预处理标准(如IMAGE_FACTOR从 28 改为 32,与patch_size=16 × spatial_merge_size=2匹配),否则视频嵌入质量会明显下降。
5. 注意音频场景的"能力空白"
模型明确不支持音频。在 MMEB-v3 榜单中其 Audio 项得分为 0。如果你的业务需要"图文音"全模态检索,需另选 Omni 类模型,或将音频先转写为文本再走本模型。
6. 长文本能力可放心利用
模型最大位置编码为262144 tokens(config.json 的max_position_embeddings),且采用"线性注意力 + 全注意力"混合结构(每 4 层 1 次全注意力),长文档、多页 PDF 视觉文档的编码成本远低于传统全注意力模型,适合企业知识库场景。
六、仓库文件地图:关键文件在哪里 🗺️
| 文件 | 作用 |
|---|---|
| LICENSE | Apache 2.0 许可全文 + 第三方组件(Qwen3.5-4B)清单 |
| modeling_wemm_embedding.py | 核心嵌入逻辑:EOS 池化 + L2 归一化 |
| modeling_st_wemm.py | Sentence Transformers 封装:encode_query/encode_document |
| embedding_chat_template.jinja | vLLM 服务端直接分词模板 |
| chat_template.jinja | 通用聊天模板 |
| patch_sglang_video.py | SGLang 视频预处理对齐补丁 |
| config.json | 模型架构、Matryoshka 维度定义 |
| processor_config.json | 图像/视频处理器参数(patch 16、fps 2、最多 768 帧) |
七、常见问题 FAQ ❓
Q1:WeMM-Embedding-4B 可以商用吗?需要付费吗?可以商用,且免费。代码、参数、权重均为 Apache 2.0,无使用费、无 API 收费。只需遵守保留许可声明、尊重第三方组件原始许可的义务。
Q2:我把模型集成到 SaaS 里对外收费,需要开源我的代码吗?不需要。Apache 2.0 不要求下游闭源。但如果你再分发了模型或修改后的代码,需附 Apache 2.0 许可文本并注明修改。
Q3:4B 版本和 9B 版本怎么选?4B 在 MMEB-v2 上得分 79.2,与 9B(80.6)差距仅 1.4 分,而推理成本约省一半以上。显存和 QPS 紧张时优先选 4B;追求极限精度再上 9B。
Q4:向量维度必须用 2560 吗?不必。利用 Matryoshka 特性可任选64/128/256/512/1024/2560,按需平衡精度与存储/延迟成本。
写在最后
WeMM-Embedding-4B 是"合规友好 + 性能过硬"的典型:Apache 2.0 许可让企业可以直接商用,2560 维统一向量 + Matryoshka 截断让检索成本可控,vLLM/SGLang 两条现成部署路径则让生产落地开箱即用。对于正在搭建多模态搜索、内容理解或 RAG 系统的团队,它值得纳入首选评估清单。
动手前,建议先花 5 分钟通读一遍 LICENSE 第 4~8 条,把分发义务和免责条款内化到你们的发布流程中——这是生产级落地的第一课。
【免费下载链接】WeMM-Embedding-4B
相关推荐
终极Segment Anything模型Apache 2.0许可证指南:合法使用与商业落地最佳实践
终极Segment Anything模型Apache 2.0许可证指南:合法使用与商业落地最佳实践 Segment Anything Model SAM 是一款
人工智能基础模型计算机视觉Apache-2.0许可证与引用规范:tf_efficientnet_cc_b0_4e.in1k生产落地前必知的5件事
Apache 2.0许可证与引用规范:tf_efficientnet_cc_b0_4e.in1k生产落地前必知的5件事 在将 tf_efficientnet_c
Step-Audio-EditX-8bit能商用吗?Apache-2.0与FunASR许可证边界完整解读
Step Audio EditX 8bit能商用吗?Apache 2.0与FunASR许可证边界完整解读 Step Audio EditX 8bit 是阶跃星辰
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考