内容概况
服务器上训练好模型后,需要将模型部署到线上,接受请求、完成推理并且返回结果。
保存模型结构和参数最简单的是torch.save保存为checkpoint,但一般用于训练时记录过程,训练中断可以从上一次继续训练。
模型部署的常见流水线是【深度学习框架】-》【中间表示】-》【推理引擎】。线上推理可以将模型转为onnx文件并(常用的中间表示)用onnxruntime进行推理;可以用多卡GPU部署(nlp中转onnx挺多坑,如自定义layer、部署不同机器时等)。
Pytorch框架自带对ONNX的支持,只需要构造一组随机的输入,并对模型调用。
服务框架:
nlp需要预处理输入文本:flask+gunicorn
搜广推:数值进 数值出 tensorflow serving
CV:可以试试OpenMMLag中的模型部署推理引擎
增强模型的上线性能:
响应时间和响应错误率
nlp模型的特征工程可以用多进程改进
多卡GPU部署;将单条处理改为批处理:利用service_streamer库牺牲一定时延,将一定时间的一个批次送进模型处理
内容概况
服务器上训练好模型后,需要将模型部署到线上,接受请求、完成推理并且返回结果。
保存模型结