X
Xiaoxy510/BAAI--bge-base-en-v1.5-ascend
模型介绍文件和版本Pull Requests讨论分析
下载使用量0

BAAI--bge-base-en-v1.5 on Ascend NPU

1. 简介

本文档记录 BAAI--bge-base-en-v1.5 在昇腾NPU上的适配与验证结果。

bge-base-en-v1.5 是 BAAI 开源的高性能中英文语义嵌入模型,输出768维向量,在 MTEB 评测中表现优异。

相关资源:

  • 权重下载地址(ModelScope):https://modelscope.cn/models/BAAI/bge-base-en-v1.5
  • 权重下载地址(HuggingFace):https://huggingface.co/BAAI/bge-base-en-v1.5

2. 验证环境

组件版本
python3.10
torch2.5.1
torch-npu2.5.1
transformers5.8.1
sentence-transformers5.5.0
  • NPU:8 卡(型号 910B3)
  • 操作系统:Linux aarch64

3. 环境准备

3.1 创建Conda环境

conda create -n "BAAI--bge-base-en-v1.5" python=3.10 -y
conda activate "BAAI--bge-base-en-v1.5"

3.2 安装依赖

pip install torch==2.5.1 torchvision torchaudio -f https://download.pytorch.org/whl/torch_npu.html
pip install torch-npu==2.5.1 -f https://download.pytorch.org/whl/torch_npu.html
pip install transformers sentence-transformers -i https://repo.huaweicloud.com/repository/pypi/simple
pip install decorator psutil attrs cloudpickle tornado ml-dtypes scipy

4. 推理脚本使用

4.1 基本用法

python inference.py
python inference.py --device cpu
python inference.py --texts "Hello world" "NPU is fast"

4.2 脚本参数说明

参数说明默认值
--model-path, -m模型路径/data/xxy/BAAI--bge-base-en-v1.5
--device, -d运行设备auto
--texts, -t输入文本列表内置测试句
--batch-size, -b批处理大小32

5. 精度与性能评测

5.1 运行评测

python benchmark.py --log-file log.txt

5.2 评测结果

指标数值
测试样本数20
平均相对误差0.3357%
最大相对误差0.4613%
平均余弦相似度0.999994
精度检查PASS

5.3 性能对比

设备平均延迟吞吐量加速比
CPU327.22 ms443.12 tokens/s-
NPU32.51 ms4460.69 tokens/s10.07x

6. 文件结构

BAAI--bge-base-en-v1.5-ascend/
├── inference.py              # NPU适配推理脚本
├── benchmark.py             # 精度与性能评测脚本
├── log.txt                  # 评测运行日志
└── README.md                # 本文档

7. 注意事项

  1. 环境隔离:建议为每个模型创建独立的Conda环境
  2. NPU初始化:首次运行需要图编译,后续显著加速
  3. 精度波动:NPU与CPU的少量数值误差(<1%)是正常现象

8. 参考资料

  • sentence-transformers 官方文档
  • PyTorch NPU 官方文档
  • 昇腾NPU 开发者文档