Ascend NPU migration candidate for Stage 3 row 18.
| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
| 1 个月前 | ||
| 1 个月前 | ||
| 29 天前 | ||
| 30 天前 | ||
| 30 天前 | ||
| 30 天前 |
kha-white/manga-ocr-base Ascend NPU 迁移
本仓提供 manga-ocr-base 在昇腾 NPU 容器中的可复现 forward 入口。模型权重不进入仓库,运行时从本地目录离线加载。
环境
- Ascend 910,设备
npu:0 - 容器提供 CANN、PyTorch 和
torch_npu,本仓不覆盖平台栈 - 模型层完整依赖见
requirements.txt - 容器实测
transformers 4.57.6、safetensors 0.8.0、Pillow 12.2.0
python -m pip install -r requirements.txt
NPU 推理
python inference.py \
--model_path /path/to/manga-ocr-base \
--device npu:0 \
--output_json result.json
inference.py 只允许 npu:N,不会回退 CPU 或 CUDA。入口离线加载本地 VisionEncoderDecoderModel,对 8 个确定性合成图像样本运行真实 NPU forward,并检查:
- 模型、输入和输出均位于请求的 NPU
- 每个样本 logits 形状为
[1,4,6144] - 总计 196,608 个输出值,全部有限
exit_status=0
容器实测结果
真实 NPU 结果见 assets/npu_result.json:四个设备字段均为 npu:0,sample_count=8,total_output_value_count=196608,全部值有限且 exit_status=0。
双份真实截图
第一组:
第二组:
两张设备图来自同一真实推理进程 PID 138435 的不同时间点,显示完整命令、活动进程和 npu-smi;两张结果图显示同一次 NPU 运行的设备链、计数、有限值和退出状态。
说明
- 不提供模型权重。
模型定位
本仓是 manga-ocr-base 的 Ascend NPU 迁移实现。仓内只维护可公开复核的下载说明、模型层依赖、唯一推理入口、结构化运行报告和验收截图;模型职责与架构语义继承上游,不把测试输入或迁移仓包装成新的训练模型。
来源与版本
- 官方提交记录绑定的原始权重地址:https://ai.gitcode.com/hf_mirrors/kha-white/manga-ocr-base
- 公开迁移仓:https://gitcode.com/2301_78565107/manga-ocr-base
权重下载与选择理由
限制与复核边界
- 确定性输入只用于复现推理路径,不替代真实业务数据集。
- host 仅承担下载、配置、序列化和 JSON 后处理,不参与模型计算。
- 文档、注释或可插拔报告器可在阶段 1 修正;模型加载、预处理、forward、后处理语义或依赖栈发生实质变化时,必须转入阶段 2,并在最终版本连续完成两次真实全 NPU 复跑。
阶段1历史固定版本证据恢复
以下固定版本来自本迁移仓既有公开提交历史,不以当前上游 HEAD 代替当时实际使用版本。阶段1只恢复可追溯事实;阶段2仍需按实际下载结果生成逐文件 path/bytes/SHA256 清单。
- tracker 原始权重链接:https://ai.gitcode.com/hf_mirrors/kha-white/manga-ocr-base
- 固定 revision:
aa6573bd10b0d446cbf622e29c3e084914df9741
GIT_LFS_SKIP_SMUDGE=1 git clone --filter=blob:none --no-checkout "https://gitcode.com/hf_mirrors/kha-white/manga-ocr-base.git" ./weights/manga-ocr-base
git -C "./weights/manga-ocr-base" checkout --detach "aa6573bd10b0d446cbf622e29c3e084914df9741"
git -C "./weights/manga-ocr-base" lfs pull
静态收口与复现约束
- 模型定位:本仓是 $(@{active_id=91; workbook_row=92; record=92; model_name=manga-ocr-base; project_url=https://gitcode.com/2301_78565107/manga-ocr-base; source_url=https://ai.gitcode.com/hf_mirrors/kha-white/manga-ocr-base; screenshot_issue=无明显问题; needs_screenshot=False; required_runs=1; memory_class=unknown; planning_mib=58982; weight_bytes=0; repo_path=C:\Reina_desktop\program_and_contest\AscendEITP\outputs\019fdf75-c78d-7dc3-b97f-3cc6f64bef62\stage1-audit\repos\091-manga-ocr-base}.model_name) 的 Ascend NPU 迁移与复现仓,沿用上游任务、架构和 loader 语义;不重新训练、不用玩具网络替代真实模型。
- 固定身份:上游模型 $modelId,固定 revision 为
aa6573bd10b0d446cbf622e29c3e084914df9741;迁移仓不携带大权重。 - 核心权重:
pytorch_model.bin。inference.py 只允许对实际加载的核心权重做 SHA-256 门禁,不对代码、README、配置、输入、输出或测试清单设置 SHA 门禁。 - 下载顺序:download_model.py 依次尝试 GitCode → ModelScope → Hugging Face mirror,对每个核心文件记录真实成功 URL、失败来源、bytes、SHA-256 与 weight_scp=false;不使用 Hugging Face 官方站点。选择这一固定快照是因为它与赛事条目、loader 和当前推理入口直接对应,不能以同名或相似模型替代。
- 迁移边界:本轮只收口中文说明、下载辅助、依赖策略和审计签名;现有模型加载、设备放置、算子、前处理、orward 与输出逻辑保持不变。若这些核心逻辑后续变化,必须重新完成真实全 NPU 复跑。
- 依赖策略:保留平台 CANN、 orch、 orch_npu,模型层依赖从清华源安装到独立 pydeps,使用 --no-deps/NO_TORCH,禁止覆盖平台计算栈。
python -m pip install --no-deps --target ../pydeps -i https://pypi.tuna.tsinghua.edu.cn/simple -r requirements.txt
python download_model.py --output-dir ./model
PYTHONPATH=../pydeps python inference.py --model_path ./model --device npu:0 --output_json ./result.json
- 维护者:KousakaReina
- Generated-At:$ReviewedAt
- Reviewed-At:$ReviewedAt
- 静态签名状态:STATIC_ONLY。该状态不等于 Stage2 PASS;claims 中另行记录是否仍需动态 NPU 复现。





