spladev2-camembert-base-mmarcoFR
antoinelouis
Similitud de oraciones
Este es un modelo SPLADE-max para francés que puede ser utilizado para búsqueda semántica. El modelo mapea consultas y pasajes a vectores dispersos de 32k dimensiones que se utilizan para calcular la relevancia a través de la similitud coseno.
Como usar
Para comenzar a utilizar el modelo, instale primero la librería:
pip install -U transformers
Luego, puede usar el modelo de la siguiente manera:
import torch
from torch.nn.functional import relu, normalize
from transformers import AutoTokenizer, AutoModel
queries = ["Ceci est un exemple de requête.", "Voici un second exemple."]
passages = ["Ceci est un exemple de passage.", "Et voilà un deuxième exemple."]
tokenizer = AutoTokenizer.from_pretrained('antoinelouis/spladev2-camembert-base-mmarcoFR')
model = AutoModel.from_pretrained('antoinelouis/spladev2-camembert-base-mmarcoFR')
q_input = tokenizer(queries, padding=True, truncation=True, return_tensors='pt')
p_input = tokenizer(passages, padding=True, truncation=True, return_tensors='pt')
with torch.no_grad():
q_output = model(**q_input)
p_output = model(**p_input)
q_activations = torch.amax(torch.log1p(relu(q_output.logits * q_input['attention_mask'].unsqueeze(-1))), dim=1)
p_activations = torch.amax(torch.log1p(relu(p_output.logits * p_input['attention_mask'].unsqueeze(-1))), dim=1)
q_activations = normalize(q_activations, p=2, dim=1)
p_activations = normalize(p_activations, p=2, dim=1)
similarity = q_activations @ p_activations.T
print(similarity)
Funcionalidades
- Transformers
- Safetensors
- Camembert
- Rellenar máscara
- Recuperación de pasajes
- Compatibilidad con AutoTrain
- Inferencia de representaciones de texto
- Compatibilidad con endpoints
Casos de uso
- Búsqueda semántica
- Recuperación de pasajes relevantes
- Evaluación de la relevancia de documentos en función de consultas basadas en similitud coseno