stella-base-zh-v2
infgrad
Similitud de oraciones
stella es un modelo de codificación de texto de propósito general, que incluye principalmente los siguientes modelos: stella-large-zh-v2, stella-base-zh-v2, stella-large-zh, y stella-base-zh. Este modelo está entrenado en una variedad de datos abiertos y utiliza métodos como el aprendizaje por contraste y la distilación de conocimiento para mejorar el rendimiento. Las características principales incluyen tamaños de modelo variados, longitudes de secuencia y capacidades de codificación en chino. Este modelo no requiere instrucción previa para la recuperación y ha sido evaluado en múltiples conjuntos de datos de texto largo y tareas clasificatorias.
Como usar
from sentence_transformers import SentenceTransformer
sentences = ["数据1", "数据2"]
model = SentenceTransformer('infgrad/stella-base-zh-v2')
print(model.max_seq_length)
embeddings_1 = model.encode(sentences, normalize_embeddings=True)
embeddings_2 = model.encode(sentences, normalize_embeddings=True)
similarity = embeddings_1 @ embeddings_2.T
print(similarity)
from transformers import AutoModel, AutoTokenizer
from sklearn.preprocessing import normalize
model = AutoModel.from_pretrained('infgrad/stella-base-zh-v2')
tokenizer = AutoTokenizer.from_pretrained('infgrad/stella-base-zh-v2')
sentences = ["数据1", "数据ABCDEFGH"]
batch_data = tokenizer(
batch_text_or_text_pairs=sentences,
padding="longest",
return_tensors="pt",
max_length=1024,
truncation=True,
)
attention_mask = batch_data["attention_mask"]
model_output = model(**batch_data)
last_hidden = model_output.last_hidden_state.masked_fill(~attention_mask[..., None].bool(), 0.0)
vectors = last_hidden.sum(dim=1) / attention_mask.sum(dim=1)[..., None]
vectors = normalize(vectors, norm="l2", axis=1, )
print(vectors.shape) # 2,768
Funcionalidades
- Modelo de codificación de texto de propósito general
- Tamaños de modelo variados (0.2GB a 0.65GB)
- Soporte para textos en chino
- Evaluación en conjuntos de datos de texto largo
- Métodos de entrenamiento avanzados como la distilación de conocimiento
- Uso fácil sin texto de prefijo necesario
- Capacidades de emparejamiento de oraciones
Casos de uso
- Emparejamiento de oraciones
- Recuperación y clasificación de textos
- Aplicaciones multilingües en chino
- Codificación de textos largos en evaluaciones de comprensión lectora