上周排查一个线上问题,模型在测试集上精度正常,部署到产线却频繁漏检。折腾半天发现是推理脚本里一个不起眼的预处理参数被改动了——这让我意识到,很多人把detect.py当作黑盒调用,却不知细节里的魔鬼足以让整个项目翻车。今天咱们就逐行拆解这个最常用的推理脚本,把那些容易踩坑的地方彻底摊开讲明白。
一、环境与参数解析
importargparseimportosimportsysfrompathlibimportPathimporttorchimporttorch.backends.cudnnascudnn开头这几行导入很常规,但有个细节:torch.backends.cudnn的导入很多人会忽略。在固定种子的场景下,需要设置