一次asr服务性能优化记录
最近一直在负责小宇宙asr系统的开发上线,第一版已经上线,实际性能表现在2分半处理完4小时的单集。但是第一版的实现方式是在nodejs里直接执行python transcribe脚本,这就导致了模型会在每次执行脚本的时候重复加载到显存里,浪费资源,不仅如此,因为前置还有语言检测步骤,这一步也需要重复加载whisper模型到显存,为了不让语言检测和transcribe两个步骤重复加载的模型在并发时显存溢出,
所以设置的并发数远远低于预期值。于是为了解决这个问题,我决定对python部分做一次重构,具体实现思路很简单,用FastAPI把python部分变成http服务,在python服务启动时就把asr模型加载好,之后在接口里通过已经加载好的模型直接推理即可。第一版代码很简单: