File size: 770 Bytes
b9a2f5d
bee946d
f2c3585
 
8b5c988
 
 
713ed0a
8b5c988
 
 
 
 
 
 
 
 
 
97be557
b9a2f5d
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
from sentence_transformers import SentenceTransformer, util
from typing import Dict, List, Any
from torch.nn import Embedding, Linear
from torch.quantization import quantize_dynamic
    
class EndpointHandler():
    def __init__(self, path=""):
        self.model = SentenceTransformer('sentence-transformers/multi-qa-MiniLM-L6-cos-v1')

    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
        """
        sentences = data.pop("inputs",data)
        embeddings = self.model.encode(sentences, batch_size=100, device="cuda")
        return embeddings.tolist()