hku-nlp/instructor-xl

hku-nlp
Similitud de oraciones

Este es un modelo de incrustación general: asigna cualquier fragmento de texto (por ejemplo, un título, una oración, un documento, etc.) a un vector de longitud fija en el tiempo de prueba sin más entrenamiento. Con instrucciones, las incrustaciones son específicas de dominio (por ejemplo, especializadas para ciencia, finanzas, etc.) y conscientes de la tarea (por ejemplo, personalizadas para clasificación, recuperación de información, etc.). El modelo es fácil de usar con la biblioteca sentence-transformers.

Como usar

# Instalar
```bash
git clone https://github.com/HKUNLP/instructor-embedding
cd sentence-transformers
pip install -e .
```python
# Calcular incrustaciones personalizadas
from sentence_transformers import SentenceTransformer
sentence = "3D ActionSLAM: wearable person tracking in multi-floor environments"
instruction = "Represent the Science title; Input:"
model = SentenceTransformer('hku-nlp/instructor-xl')
embeddings = model.encode([[instruction,sentence,0]])
print(embeddings)

# Calcular similitudes de oraciones
from sklearn.metrics.pairwise import cosine_similarity
sentences_a = [['Represent the Science sentence; Input: ','Parton energy loss in QCD matter',0], 
['Represent the Financial statement; Input: ','The Federal Reserve on Wednesday raised its benchmark interest rate.',0]
sentences_b = [['Represent the Science sentence; Input: ','The Chiral Phase Transition in Dissipative Dynamics', 0],
['Represent the Financial statement; Input: ','The funds rose less than 0.5 per cent on Friday',0]
embeddings_a = model.encode(sentences_a)
embeddings_b = model.encode(sentences_b)
similarities = cosine_similarity(embeddings_a,embeddings_b)
print(similarities)

Funcionalidades

Incrustaciones específicas de dominio
Consciente de la tarea
Fácil de usar con la biblioteca sentence-transformers

Casos de uso

Clasificación de textos
Recuperación de información
Incrustaciones personalizadas