你的RTX 4090终于有用了!保姆级教程,5分钟在本地跑起BGE-M3,效果惊人

你的RTX 4090终于有用了!保姆级教程,5分钟在本地跑起BGE-M3,效果惊人

【免费下载链接】bge-m3 BGE-M3,一款全能型多语言嵌入模型,具备三大检索功能:稠密检索、稀疏检索和多元向量检索,覆盖超百种语言,可处理不同粒度输入,从短句到长达8192个token的文档。通用预训练支持,统一微调示例,适用于多场景文本相似度计算,性能卓越,潜力无限。 【免费下载链接】bge-m3 项目地址: https://gitcode.com/hf_mirrors/BAAI/bge-m3

写在前面:硬件门槛

在官方文档中,我们未能找到明确的最低硬件要求。对于BGE-M3这类模型,通常需要较大的GPU显存。请在投入资源前,务必访问模型的官方项目主页或社区,以获取最准确的配置信息,避免不必要的硬件投资。

环境准备清单

在开始之前,请确保你的系统满足以下要求:

  • 操作系统:支持Linux或Windows(推荐Linux)。
  • Python版本:3.8或更高版本。
  • PyTorch:1.12或更高版本,支持CUDA。
  • CUDA:11.7或更高版本(确保与你的GPU驱动兼容)。
  • 其他依赖pip install -U FlagEmbedding

模型资源获取

BGE-M3模型可以通过以下方式获取:

  1. 直接安装
    pip install -U FlagEmbedding
    
  2. 从源码安装
    git clone https://github.com/FlagOpen/FlagEmbedding.git
    cd FlagEmbedding
    pip install -e .
    

逐行解析“Hello World”代码

以下是一个快速上手的代码示例,我们将逐行解析其功能:

from FlagEmbedding import BGEM3FlagModel

# 初始化模型
model = BGEM3FlagModel('BAAI/bge-m3', use_fp16=True)  # 使用FP16加速计算

# 定义输入句子
sentences_1 = ["What is BGE M3?", "Defination of BM25"]
sentences_2 = [
    "BGE M3 is an embedding model supporting dense retrieval, lexical matching and multi-vector interaction.",
    "BM25 is a bag-of-words retrieval function that ranks a set of documents based on the query terms appearing in each document"
]

# 生成密集嵌入
embeddings_1 = model.encode(sentences_1, batch_size=12, max_length=8192)['dense_vecs']
embeddings_2 = model.encode(sentences_2)['dense_vecs']

# 计算相似度
similarity = embeddings_1 @ embeddings_2.T
print(similarity)

代码解析:

  1. 初始化模型

    • BGEM3FlagModel加载预训练的BGE-M3模型。
    • use_fp16=True启用FP16加速,略微降低性能以换取更快的计算速度。
  2. 输入句子

    • 定义两组句子用于测试。
  3. 生成嵌入

    • model.encode生成句子的密集嵌入向量。
    • batch_sizemax_length参数可根据需求调整。
  4. 相似度计算

    • 通过矩阵乘法计算句子之间的相似度。

运行与结果展示

运行上述代码后,你将看到如下输出:

[[0.6265, 0.3477], [0.3499, 0.678]]

这表示两组句子之间的相似度分数。

常见问题(FAQ)与解决方案

问题1:显存不足(OOM)

  • 解决方案
    • 减少batch_size
    • 降低max_length(如从8192改为4096)。
    • 确保使用支持FP16的GPU。

问题2:依赖冲突

  • 解决方案
    • 使用虚拟环境隔离依赖。
    • 确保PyTorch版本与CUDA兼容。

问题3:模型下载失败

  • 解决方案
    • 检查网络连接。
    • 尝试手动下载模型并指定本地路径。

结语

通过这篇教程,你已经成功在本地运行了BGE-M3模型!无论是用于密集检索、稀疏检索还是多向量交互,BGE-M3都能为你提供强大的支持。如果你遇到任何问题,欢迎在社区中寻求帮助。祝你使用愉快!

【免费下载链接】bge-m3 BGE-M3,一款全能型多语言嵌入模型,具备三大检索功能:稠密检索、稀疏检索和多元向量检索,覆盖超百种语言,可处理不同粒度输入,从短句到长达8192个token的文档。通用预训练支持,统一微调示例,适用于多场景文本相似度计算,性能卓越,潜力无限。 【免费下载链接】bge-m3 项目地址: https://gitcode.com/hf_mirrors/BAAI/bge-m3

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值