Sentence Similarity
sentence-transformers
PyTorch
Transformers
English
t5
text-embedding
embeddings
information-retrieval
beir
text-classification
language-model
text-clustering
text-semantic-similarity
text-evaluation
prompt-retrieval
text-reranking
feature-extraction
English
Sentence Similarity
natural_questions
ms_marco
fever
hotpot_qa
mteb
Eval Results (legacy)
Instructions to use retrainai/instructor-xl with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- sentence-transformers
How to use retrainai/instructor-xl with sentence-transformers:
from sentence_transformers import SentenceTransformer model = SentenceTransformer("retrainai/instructor-xl") sentences = [ "That is a happy person", "That is a happy dog", "That is a very happy person", "Today is a sunny day" ] embeddings = model.encode(sentences) similarities = model.similarity(embeddings, embeddings) print(similarities.shape) # [4, 4] - Transformers
How to use retrainai/instructor-xl with Transformers:
# Load model directly from transformers import AutoTokenizer, AutoModel tokenizer = AutoTokenizer.from_pretrained("retrainai/instructor-xl") model = AutoModel.from_pretrained("retrainai/instructor-xl") - Notebooks
- Google Colab
- Kaggle
| from typing import Dict, List, Any | |
| from InstructorEmbedding import INSTRUCTOR | |
| class EndpointHandler: | |
| def __init__(self, path=""): | |
| # load model on gpu | |
| self.model = INSTRUCTOR(path, device="cuda") | |
| def __call__(self, data: Dict[str, Any]) -> List[List[float]]: | |
| """ | |
| data args: | |
| inputs (:obj: `str`) | |
| Return: | |
| A :obj:`list` | `dict`: will be serialized and returned | |
| """ | |
| # get inputs | |
| inputs: dict = data.pop("inputs", data) | |
| texts = inputs.pop("texts", None) | |
| instruction = inputs.pop("instruction", None) | |
| if not texts or not instruction: | |
| raise ValueError("Please provide texts and instruction") | |
| # make sure texts is a list | |
| if not isinstance(texts, list): | |
| texts = [texts] | |
| instructions = [[instruction, text] for text in texts] | |
| embeddings = self.model.encode(instructions) | |
| return embeddings.tolist() | |