from ts.torch_handler.base_handler import BaseHandler
import torch
class MyHandler(BaseHandler):
def __init__(self):
# 初始化实例,看具体情况重写
# self.model = None
# self.mapping = None
# self.device = None
# self.initialized = False
# self.context = None
# self.manifest = None
# self.map_location = None
# self.explain = False
# self.target = 0
......
def initialize(self,context):
# 初始化模型及其它相关参数,看具体情况重写
......
def preprocess(self, data):
# 前处理,关键步骤,一般情况下都需要重写
......
def inference(self, model_input):
# 推理,看具体情况重写
......
def postprocess(self, inference_output):
# 后处理,关键步骤,一般情况下都需要重写
......
def handle(self, data, context):
# 服务流程,看具体情况重写
......
1 .使用docker安装torchserve
docker pull pytorch/torchserve:latest
torchserve需要提供一个.mar文件,简而言之,该文件只是把你的模型和所有依赖打包在一起,要进行打包,首先需要导出经过训练的模型。
有三种方法可以导出torchserve的模型,其中最好用的方法是trace模型并存储结果,这样就不需要向torchserve添加任何额外的文件。