from typing import Dict, List, Any from transformers import pipeline class EndpointHandler(): def __init__(self, path=""): self.pipeline = pipeline("automatic-speech-recognition", model=path) self.pipeline.model.config.forced_decoder_ids = self.pipeline.model.processor.get_decoder_prompt_ids(language="Chinese", task="transcribe") self.pipeline.model.generation_config.forced_decoder_ids = self.pipeline.model.config.forced_decoder_ids # just to be sure! def __call__(self, data: Dict[str, Any]) -> List[Dict[str, Any]]: """ data args: inputs (:obj: `str`) date (:obj: `str`) Return: A :obj:`list` | `dict`: will be serialized and returned """ # get inputs # run normal prediction inputs = data.pop("inputs",data) prediction = self.pipeline(inputs, return_timestamps=False) return prediction