m
mxy-yy/VTP-Large-f16d64-npu
模型介绍文件和版本Pull Requests讨论分析
下载使用量0

VTP-Large-f16d64 Ascend NPU 部署指南

概述

本项目提供 MiniMax VTP-Large-f16d64 模型在华为昇腾 NPU 上的部署方案,用于视觉特征提取和图像重建。

特性

  • 支持 Ascend NPU 推理加速
  • 视觉特征提取
  • CPU 与 NPU 精度对比测试
  • 输出 64 维视觉特征向量

环境信息

项目版本/内容
设备Ascend 910B

文件结构

VTP-Large-f16d64-ascend/
├── README.md          # 本文档
├── inference.py       # 推理脚本
└── test.log           # 运行日志

部署步骤

1. 设置环境变量

source /usr/local/Ascend/ascend-toolkit/set_env.sh

2. 准备模型文件

模型文件位于 /opt/atomgit/mxy/VTP-Large-f16d64/ 目录下。

3. 安装依赖

pip install torch_npu safetensors pillow torchvision

4. 执行推理

cd VTP-Large-f16d64-ascend/
python inference.py

使用方式

精度测试

cd VTP-Large-f16d64-ascend/
python inference.py --precision_test

随机输入推理

cd VTP-Large-f16d64-ascend/
python inference.py

带图像推理

cd VTP-Large-f16d64-ascend/
python inference.py --image /path/to/image.jpg

参数说明

参数说明默认值
--model_path模型路径/opt/atomgit/mxy/VTP-Large-f16d64
--image图像路径无 (使用随机)
--device运行设备npu:0
--precision_test运行精度测试False

测试验证

精度测试结果

指标阈值实测值状态
max_error_sum< 1e-33.05e-05✅ PASS
max_error_mean< 1e-52.98e-08✅ PASS
max_error_std< 1e-55.96e-08✅ PASS

性能数据

操作耗时
NPU 推理时间~5.7s

测试日志

2026-05-19 08:47:14,147 - INFO - ============================================================
2026-05-19 08:47:14,148 - INFO - VTP-Large Vision Encoder Ascend NPU Inference
2026-05-19 08:47:14,148 - INFO - ============================================================
2026-05-19 08:47:14,148 - INFO - Model path: /opt/atomgit/mxy/VTP-Large-f16d64
2026-05-19 08:47:14,148 - INFO - Device: npu:0
2026-05-19 08:47:14,148 - INFO - Loading VTP-Large model from /opt/atomgit/mxy/VTP-Large-f16d64...
2026-05-19 08:47:18,904 - INFO - Model loaded and moved to npu:0!
2026-05-19 08:47:19,069 - INFO - Using random input tensor (256x256)...
2026-05-19 08:47:19,075 - INFO - Input shape: torch.Size([1, 3, 256, 256])
2026-05-19 08:47:19,075 - INFO - Running inference...
2026-05-19 08:47:24,812 - INFO - Features shape: torch.Size([1, 64])
2026-05-19 08:47:24,813 - INFO - Inference time: 5737.03 ms
2026-05-19 08:47:25,067 - INFO - Features (first 10): [-0.05342022 -0.02940462 -0.07053709  0.0859521  -0.33008504  0.3873581
2026-05-19 08:47:25,067 - INFO -  -0.02188156 -0.23268715  0.08248332 -0.0915765 ]
2026-05-19 08:47:25,067 - INFO - Inference completed successfully!

模型配置

属性值
模型名称VTP-Large-f16d64
架构VTPModel
视觉瓶颈维度64
embed_dim1024
vision_depth24
vision_num_heads16
vision_mlp_ratio4
图像尺寸256x256
patch_size16

Python API 使用示例

import torch

MODEL_PATH = "/opt/atomgit/mxy/VTP-Large-f16d64"

# 加载模型
model = load_vtp_model(MODEL_PATH)
model = model.to("npu:0")
model.eval()

# 随机输入
image_tensor = torch.randn(1, 3, 256, 256).to("npu:0")

# 推理
with torch.no_grad():
    features = model(image_tensor)

print(f"Features shape: {features.shape}")  # (1, 64)

注意事项

  1. VTP-Large 模型输出 64 维视觉特征向量
  2. 精度测试基于 CPU vs NPU 比较
  3. 支持随机输入或自定义图像推理