🇩🇪 German Semantic V3b 🇩🇪
aari1995
Similitud de oraciones
Los sucesores de German_Semantic_STS_V2 están aquí y vienen con un montón de características nuevas e interesantes. Mientras que German_Semantic_V3 es muy intensivo en conocimiento, V3b está más enfocado en el rendimiento. No dude en proporcionar comentarios sobre el modelo y lo que le gustaría ver a continuación.
Como usar
Este modelo tiene algunas funcionalidades integradas que son bastante ocultas. Para aprovecharlo, use este código:
from sentence_transformers import SentenceTransformer
matryoshka_dim = 1024 # Qué tan grandes deben ser sus incrustaciones, elija entre: 64, 128, 256, 512, 768, 1024
model = SentenceTransformer("aari1995/German_Semantic_V3", trust_remote_code=True, truncate_dim=matryoshka_dim)
# model.truncate_dim = 64 # las dimensiones de truncamiento también se pueden cambiar después de cargar
# model.max_seq_length = 512 # opcionalmente, establezca su longitud máxima de secuencia más baja si su hardware es limitado
# Ejecutar inferencia
sentences = [
'Eine Flagge weht.',
'Die Flagge bewegte sich in der Luft.',
'Zwei Personen beobachten das Wasser.',
]
# Para incrustaciones FP16 (mitad de espacio, sin pérdida de calidad)
embeddings = model.encode(sentences, convert_to_tensor=True).half()
# Para incrustaciones FP32 (ocupa más espacio)
# embeddings = model.encode(sentences)
# Obtener las puntuaciones de similitud para las incrustaciones
similarities = model.similarity(embeddings, embeddings)
Funcionalidades
- Flexibilidad: Entrenado con longitud de secuencia flexible y truncamiento de incrustaciones, la flexibilidad es una característica central del modelo. Sin embargo, dimensiones más pequeñas traen una ligera reducción en la calidad.
- Longitud de la secuencia: Incrusta hasta 8192 tokens (16 veces más que V2 y otros modelos).
- Incrustaciones Matrioshka: El modelo está entrenado para tamaños de incrustación de 1024 hasta 64, lo que permite almacenar incrustaciones mucho más pequeñas con poca pérdida de calidad.
- Solo alemán: Este modelo es solo para alemán, tiene un amplio conocimiento cultural sobre Alemania y temas alemanes. Por lo tanto, también el modelo aprende de manera más eficiente gracias a su tokenizador, maneja mejor consultas más cortas y generalmente es más matizado en muchos escenarios.
- Errores tipográficos y mayúsculas: Este modelo se entrenó para ser robusto contra errores tipográficos menores y uso de mayúsculas, lo que lleva a un rendimiento de referencia ligeramente más débil y un aprendizaje durante el entrenamiento, pero a una mayor robustez de las incrustaciones.
- Función de agrupamiento: Cambio de agrupamiento medio hacia el uso del token CLS. Generalmente parece aprender mejor después de la preentrenamiento de la etapa 2 y permite más flexibilidad.
- Licencia: Apache 2.0
Casos de uso
- Flexibilidad en la longitud de secuencias y almacenamiento eficiente de incrustaciones.
- Robusto a errores tipográficos menores y uso de mayúsculas.
- Aplicaciones que requieren un conocimiento cultural profundo de Alemania y temas alemanes.
- Cálculo de similitud de oraciones y extracción de características.