Gnartiel/vietnamese-sbert

Gnartiel
Similitud de oraciones

Este es un modelo de sentence-transformers: Mapea oraciones y párrafos a un espacio vectorial denso de 768 dimensiones y se puede usar para tareas como agrupación o búsqueda semántica en el idioma vietnamita.

Como usar

Uso (Sentence-Transformers)

Usar este modelo es fácil si tienes sentence-transformers instalado:

pip install -U sentence-transformers

Luego puedes usar el modelo así:

from sentence_transformers import SentenceTransformer
sentences = ["Cô giáo đang ăn kem", "Chị gái đang thử món thịt dê"]

model = SentenceTransformer('keepitreal/vietnamese-sbert')
embeddings = model.encode(sentences)
print(embeddings)

Uso (HuggingFace Transformers)

Sin sentence-transformers, puedes usar el modelo de la siguiente manera: primero, pasas tu entrada a través del modelo transformer, luego debes aplicar la operación de pooling adecuada sobre los embeddings de las palabras contextualizadas.

from transformers import AutoTokenizer, AutoModel
import torch

#Mean Pooling - Tener en cuenta la máscara de atención para un promedio correcto
def mean_pooling(model_output, attention_mask):
    token_embeddings = model_output[0]  # El primer elemento de model_output contiene todos los embeddings de los tokens
    input_mask_expanded = attention_mask.unsqueeze(-1).expand(token_embeddings.size()).float()
    return torch.sum(token_embeddings * input_mask_expanded, 1) / torch.clamp(input_mask_expanded.sum(1), min=1e-9)

# Oraciones para las que queremos embeddings de oraciones
sentences = ['Cô giáo đang ăn kem', 'Chị gái đang thử món thịt dê']

# Cargar modelo desde HuggingFace Hub
tokenizer = AutoTokenizer.from_pretrained('keepitreal/vietnamese-sbert')
model = AutoModel.from_pretrained('keepitreal/vietnamese-sbert')

# 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 pooling. En este caso, mean pooling
sentence_embeddings = mean_pooling(model_output, encoded_input['attention_mask'])

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

Funcionalidades

Modelo de sentence-transformers
Mapeo de oraciones y párrafos a un espacio vectorial denso
Vector espacio de 768 dimensiones
Uso para agrupación
Uso para búsqueda semántica
Compatibilidad con AutoTrain
Usable para inferencias de text embedding
Compatible con PyTorch
Compatible con Transformers

Casos de uso

Agrupación de oraciones
Búsqueda semántica en vietnamita
Extracción de características
Inferencia de embeddings de texto

Recibe las últimas noticias y actualizaciones sobre el mundo de IA directamente en tu bandeja de entrada.