Ich spiele nur mit einigen der Beispielprogramme herum, die auf der Website für Hugging-Face-Satztransformatoren https aufgeführt sind ://www.sbert.net/docs/sentence_transformer ... odels.html und mir ist aufgefallen, dass die Zeile von sent_transformers import SentenceTransformer einen großen Zeitengpass darstellt, selbst wenn sie nicht ausgeführt wird zum ersten Mal.
Warum ist das so? Ist die Bibliothek nicht bereits in der virtuellen Umgebung installiert, sodass der Import nicht so lange dauern sollte?
Zum Beispiel habe ich Folgendes geschrieben:
Code: Select all
import time
start_time = time.time()
from sentence_transformers import SentenceTransformer
end_time = time.time()
print(f"Execution time: {end_time - start_time} seconds")
model = SentenceTransformer("multi-qa-mpnet-base-cos-v1")
end_time = time.time()
print(f"Execution time: {end_time - start_time} seconds")
query_embedding = model.encode("How big is London")
passage_embeddings = model.encode([
"London is known for its financial district",
"London has 9,787,426 inhabitants at the 2011 census",
"The United Kingdom is the fourth largest exporter of goods in the world",
])
similarity = model.similarity(query_embedding, passage_embeddings)
# => tensor([[0.4659, 0.6142, 0.2697]])
print(similarity)
end_time = time.time()
print(f"Execution time: {end_time - start_time} seconds")
Code: Select all
Execution time: 117.6684799194336 seconds
Execution time: 127.67643761634827 seconds
tensor([[0.4656, 0.6142, 0.2697]])
Execution time: 128.92580246925354 seconds
Mache ich etwas falsch oder ist das so? nur eine Tatsache dieser Bibliothek? (Was die Installation angeht, habe ich gerade pip install -U sent-transformers ausgeführt, wobei meine virtuelle Umgebung ganz normal aktiviert war, wie auf der Website beschrieben.)