m3hrdadfi/distilbert-zwnj-wnli-mean-tokens

m3hrdadfi
Similitud de oraciones

Embeddings de oraciones con distilbert-zwnj-wnli-mean-tokens. Este modelo se utiliza para medir la similitud de oraciones, utilizando PyTorch y Transformers. Soporta la extracción de características y las inferencias de embeddings de texto.

Como usar

Uso (Sentence-Transformers)

pip install -U sentence-transformers

from sentence_transformers import SentenceTransformer

sentences = [
'اولین حکمران شهر بابل کی بود؟',
'در فصل زمستان چه اتفاقی افتاد؟',
'میراث کوروش'
]
model = SentenceTransformer('m3hrdadfi/distilbert-zwnj-wnli-mean-tokens')
embeddings = model.encode(sentences)
print(embeddings)

Uso (HuggingFace Transformers)

from transformers import AutoTokenizer, AutoModel
import torch

# Max Pooling - Tomar el valor máximo a lo largo del tiempo para cada dimensión.
def max_pooling(model_output, attention_mask):
    token_embeddings = model_output[0]  # El primer elemento de model_output contiene todas las embeddings de tokens
    input_mask_expanded = attention_mask.unsqueeze(-1).expand(token_embeddings.size()).float()
    token_embeddings[input_mask_expanded == 0] = -1e9  # Establecer tokens de relleno en un valor negativo grande
    return torch.mean(token_embeddings, 1)[0]

# Oraciones para las cuales queremos embeddings
sentences = [
'اولین حکمران شهر بابل کی بود؟',
'در فصل زمستان چه اتفاقی افتاد؟',
'میراث کوروش'
]

# Cargar modelo desde HuggingFace Hub
tokenizer = AutoTokenizer.from_pretrained('m3hrdadfi/distilbert-zwnj-wnli-mean-tokens')
model = AutoModel.from_pretrained('m3hrdadfi/distilbert-zwnj-wnli-mean-tokens')

# Tokenizar oraciones
encoded_input = tokenizer(sentences, padding=True, truncation=True, return_tensors='pt')

# Calcular embeddings de tokens
with torch.no_grad():
    model_output = model(**encoded_input)

# Realizar el pooling. En este caso, max pooling.
sentence_embeddings = max_pooling(model_output, encoded_input['attention_mask'])

print("Embeddings de oraciones:")
print(sentence_embeddings)

Preguntas

Publique un problema en Github desde AQUÍ.

Funcionalidades

Transformers
PyTorch
sentence-transformers
extracción de características
inferencias de embeddings de texto
Endpoints de inferencia

Casos de uso

Medición de la similitud de oraciones
Extracción de características de texto
Generación de embeddings para inferencias de texto