from typing import Dict, List, Any | |
from transformers import AutoModel, AutoTokenizer | |
class EndpointHandler: | |
def __init__(self, path="."): | |
self.tokenizer = AutoTokenizer.from_pretrained(path) | |
self.model = AutoModel.from_pretrained(path, trust_remote_code=True) | |
self.model.eval() | |
def __call__(self, data: Dict[str, Any]) -> List[Dict[str, Any]]: | |
""" | |
data args: | |
inputs (:obj: `str` | `PIL.Image` | `np.array`) | |
kwargs | |
Return: | |
A :obj:`list` | `dict`: will be serialized and returned | |
""" | |
# return self.pipeline(data['inputs']) | |
return self.model.predict([data['inputs']], self.tokenizer, output_style='json') | |