---
name: yangge521/cross-platform-verify
source: https://app.decimal.ai/s/yangge521-cross-platform-verify@1/SKILL.md
source_sha256: 860319036c47
---

# 跨平台模型权重验证

## 概述

验证 YOLO 模型权重在 NVIDIA T4 和摩尔线程 S4000 之间的双向兼容性，确保在一张卡上训练的模型可以直接在另一张卡上加载推理。

## 使用场景

- 训练推理分离：T4 训练，S4000 推理（或反之）
- 多平台部署：同一模型部署到不同 GPU 集群
- GPU 迁移：从 NVIDIA 迁移到国产 GPU
- CI/CD 集成：模型发布前自动跨平台验证
- 供应商评估：验证国产 GPU 对现有模型的兼容性
- A/B 对比：同模型不同 GPU 推理结果对比

## 真实测试数据

### 四场景验证结果

| 场景 | 训练平台 | 推理平台 | 权重兼容 | 结果一致性 |
|------|---------|---------|---------|-----------|
| 1 | T4 | T4 | 是 | 一致 |
| 2 | T4 | S4000 | 是 | 一致 |
| 3 | S4000 | T4 | 是 | 一致 |
| 4 | S4000 | S4000 | 是 | 一致 |

四场景权重均可用，检测结果完全一致

## 操作指南

### 1. 权重保存

训练完成后 model.save("model.pt") 保存。Ultralytics 的 .pt 文件包含模型结构、权重和训练配置，与 GPU 平台无关。

### 2. 权重加载

在目标平台 YOLO("model.pt") 加载。PyTorch 权重格式跨平台兼容，T4 保存的权重可直接在 S4000 加载。

### 3. 检测结果一致性验证

使用相同测试图片集在两个平台推理，对比检测框坐标、类别和置信度。计算 IoU（大于0.99）和置信度差异（小于0.01）。

### 4. 批量验证脚本

遍历测试集分别在两个平台推理，保存结果到 JSON，使用 IoU 和置信度阈值自动判定一致性。

## 常见问题与排查

| 问题 | 原因 | 解决方案 |
|------|------|---------|
| 权重加载失败 | 框架版本不一致 | 统一 Ultralytics 版本 |
| 检测结果微小差异 | FP16 数值误差 | 使用 FP32 推理对比 |
| 模型结构不匹配 | 模型版本不同 | 重新导出统一版本 |
| S4000 不支持某些算子 | 算子兼容性 | 使用 ONNX 中间格式 |
| IoU 略低于阈值 | 预处理差异 | 检查 imgsz/normalize |
| 加载速度慢 | 文件过大 | 使用 ONNX 格式 |

## 扩展方向

- **ONNX 标准化**: 导出 ONNX 作为跨平台标准格式
- **TensorRT 加速**: NVIDIA 平台使用 TensorRT 引擎
- **模型版本管理**: 使用 MLflow 管理多平台模型版本
- **自动回归测试**: CI/CD 中集成跨平台验证
- **精度基准**: 建立各平台精度基准线
- **国产 GPU 适配**: 扩展到更多国产 GPU 平台

## 技能链路

- **gpu-benchmark**: 跨平台性能对比配合权重验证
- **model-quantization**: 量化后跨平台验证
- **yolo-video-inference**: 验证后部署推理
- **perf-monitor**: 验证过程性能监控

## 检查清单

- [ ] 训练和推理使用相同框架版本
- [ ] 测试图片集覆盖各类场景
- [ ] IoU 和置信度差异在阈值内
- [ ] 验证报告自动生成
- [ ] CI/CD 集成跨平台验证
- [ ] ONNX 格式备选方案已准备