本文档记录 dinov3-vits16-pretrain-lvd1689m(DINOv3 ViT-Small/16)在昇腾 NPU(Ascend 910B3)环境的适配部署与精度验证结果。
DINOv3 ViT-S/16 是一种基于 Vision Transformer 的视觉特征提取模型(约 21.6M 参数),输出 384 维图像特征向量,在 LVD-1689M 上通过 ViT-7B 教师模型蒸馏获得。本项目完成该模型在昇腾 NPU 上的推理适配,验证 NPU 与 CPU 结果的精度误差 < 1%。
相关地址:
| 组件 | 版本 |
|---|---|
python | 3.11.x |
torch | 2.10.0+cpu |
torch_npu | 2.10.0 |
transformers | 5.8.1 |
CANN | 8.5.1 |
Ascend 910B3PyTorch + transformers| 项目 | 值 |
|---|---|
| 模型架构 | ViT-Small/16 (DINOv3) |
| 参数量 | ~21.6M |
| 特征维度 | 384 |
| Layers | 12 |
| Attention Heads | 6 |
| Patch Size | 16 |
| Register Tokens | 4 |
| 输入尺寸 | 3×224×224 |
| 权重格式 | safetensors |
| 框架 | PyTorch (transformers) |
| 预训练数据 | LVD-1689M |
| 许可证 | DINOv3 License |
conda create -n dinov3-vits16 python=3.11 -y
conda activate dinov3-vits16
pip install torch==2.10.0 torchvision==0.25.0 --index-url https://repo.huaweicloud.com/repository/pypi/simple/
pip install torch_npu==2.10.0 --index-url https://repo.huaweicloud.com/repository/pypi/simple/
pip install transformers safetensors pillow --index-url https://repo.huaweicloud.com/repository/pypi/simple/权重下载:
export HF_ENDPOINT=https://hf-mirror.com/
huggingface-cli download facebook/dinov3-vits16-pretrain-lvd1689m --local-dir /path/to/model_dir# NPU 推理(默认)
python3 inference.py --model_path /path/to/model --image_path /path/to/img.jpg
# CPU 推理
python3 inference.py --model_path /path/to/model --image_path /path/to/img.jpg --device cpu
# 精度与性能评测
python3 benchmark.py --model_path /path/to/model评测结果日志将输出到 log.txt。
| 脚本 | 参数 | 说明 | 默认值 |
|---|---|---|---|
inference.py | --model_path | 模型路径 | 必需 |
--image_path | 图像路径 | 必需 | |
--device | 运行设备 | npu:0 | |
benchmark.py | --model_path | 模型路径 | 必需 |
--npu_device | NPU 设备 ID | npu:0 | |
--num_warmup | 预热轮数 | 3 |
测试图像在 CPU(FP32)和 NPU(FP32)上推理,对比输出特征向量。
| 指标 | 数值 |
|---|---|
| 向量级相对误差 | 0.239705% |
| 余弦相似度 | 0.9999970794 |
| SNR | 52.41 dB |
| 最大绝对误差 | — |
| 平均绝对误差 | — |
| 指标 | 实测值 | 阈值 | 状态 |
|---|---|---|---|
| 向量级相对误差 | 0.24% | < 1% | PASS |
| 操作 | 耗时 |
|---|---|
| CPU 推理时间(FP32) | 1.37 s |
| NPU 推理时间(FP32,3轮预热后) | 0.25 s |
| 加速比 (CPU / NPU) | 5.41 x |
AutoModel + AutoImageProcessor 标准 transformers 接口。.safetensors)不包含在适配仓库中,需单独下载。