from prompt_injection.evaluators.base import PromptEvaluator | |
from sentence_transformers import SentenceTransformer | |
import numpy as np | |
class MiniLMEmbeddingPromptEvaluator(PromptEvaluator): | |
def __init__(self) -> None: | |
super().__init__() | |
self.model=SentenceTransformer('sentence-transformers/all-MiniLM-L12-v2') | |
def eval_sample(self,sample): | |
try: | |
return self.model.encode([sample]) | |
except Exception as err: | |
return np.nan | |
def get_name(self): | |
return 'Embedding' |