Gesicht umarmen / all-MiniLM-L12-v2
Milvus Integrated
Aufgabe: Einbettung
Modalität: Text
Ähnlichkeitsmetrik: Beliebig (normalisiert)
Lizenz: Apache 2.0
Dimensionen: 384
Maximale Eingabe-Tokens: 256
Preis: Kostenlos
Einführung in das all-MiniLM-L12-v2 Einbettungsmodell
- all-MiniLM-L12-v2" ist ein Satz- und Kurzabsatz-Encoder, der einen Vektor ausgibt, der die semantischen Informationen des Eingabetextes erfasst.
- Das Modell basiert auf dem vortrainierten Microsoft/MiniLM-L12-H384-uncased Modell und wurde mit Hilfe eines kontrastiven Lernziels auf einem großen Datensatz mit über 1 Milliarde Satzpaaren feinabgestimmt.
- Es bildet Sätze und Absätze auf einen 384-dimensionalen dichten Vektorraum ab, der für Aufgaben wie [Information Retrieval] (https://zilliz.com/learn/what-is-information-retrieval), Clustering und [semantische Suche] (https://zilliz.com/glossary/semantic-search) verwendet werden kann.
Wie man Vektoreinbettungen mit dem all-MiniLM-L12-v2-Modell erstellt
Es gibt zwei primäre Möglichkeiten, Vektoreinbettungen zu erstellen:
- PyMilvus: das Python SDK für Milvus, das nahtlos das
Satz-Transformator-Modell integriert. - SentenceTransformer-Bibliothek: die Python-Bibliothek des
Sentence-Transformers.
Sobald die Vektoreinbettungen generiert sind, können sie in der Zilliz Cloud (einem vollständig verwalteten Vektordatenbankdienst, der von Milvus betrieben wird) gespeichert und für die semantische Ähnlichkeitssuche verwendet werden. Dies sind die vier wichtigsten Schritte:
- Anmelden für ein kostenloses Zilliz Cloud-Konto.
- Richten Sie einen serverlosen Cluster ein und erhalten Sie den Public Endpoint and API Key.
- Erstellen Sie eine Vektorsammlung und fügen Sie Ihre Vektoreinbettungen ein.
- Lassen Sie eine semantische Suche auf den gespeicherten Einbettungen laufen.
Vektoreinbettungen über PyMilvus generieren und in die Zilliz Cloud für die semantische Suche einfügen.
from pymilvus.model.dense import SentenceTransformerEmbeddingFunction
ef = SentenceTransformerEmbeddingFunction("sentence-transformers/all-MiniLM-L12-v2")
docs = [
"Künstliche Intelligenz wurde 1956 als akademische Disziplin gegründet.",
"Alan Turing war die erste Person, die substantielle Forschungen im Bereich der KI durchführte.",
"Geboren in Maida Vale, London, wuchs Turing in Südengland auf."
]
# Einbettungen für Dokumente generieren
docs_embeddings = ef(docs)
queries = ["Wann wurde die künstliche Intelligenz erfunden",
"Wo wurde Alan Turing geboren?"]
# Einbettungen für Abfragen generieren
abfrage_einbettungen = ef(abfragen)
# Verbindung zur Zilliz-Cloud mit öffentlichem Endpunkt und API-Schlüssel
client = MilvusClient(
uri=ZILLIZ_PUBLIC_ENDPOINT,
token=ZILLIZ_API_KEY)
COLLECTION = "Dokumente"
if client.has_collection(collection_name=COLLECTION):
client.drop_collection(collection_name=COLLECTION)
client.create_collection(
collection_name=COLLECTION,
dimension=ef.dim,
auto_id=True)
for doc, embedding in zip(docs, docs_embeddings):
client.insert(COLLECTION, {"text": doc, "vector": embedding})
results = client.search(
collection_name=COLLECTION,
data=query_embeddings,
output_fields=["text"])
Weitere Informationen finden Sie in unserer PyMilvus Embedding Model Dokumentation.
Erzeugen von Vektoreinbettungen mittels SentenceTransformer und Einfügen in die Zilliz Cloud für die semantische Suche
from sentence_transformers import SentenceTransformer
von pymilvus importieren MilvusClient
model = SentenceTransformer("sentence-transformers/all-MiniLM-L12-v2")
docs = [
"Künstliche Intelligenz wurde 1956 als akademische Disziplin gegründet.",
"Alan Turing war die erste Person, die substantielle Forschungen im Bereich der KI durchführte.",
"Geboren in Maida Vale, London, wuchs Turing in Südengland auf."
]
# Einbettungen für Dokumente generieren
docs_embeddings = model.encode(docs, normalize_embeddings=True)
queries = ["query: Wann wurde die künstliche Intelligenz gegründet",
"query: Wo wurde Alan Turing geboren?" ]
# Einbettungen für Abfragen generieren
abfrage_einbettungen = model.encode(abfragen, normalize_einbettungen=True)
# Verbindung zur Zilliz Cloud mit öffentlichem Endpunkt und API-Schlüssel
client = MilvusClient(
uri=ZILLIZ_PUBLIC_ENDPOINT,
token=ZILLIZ_API_KEY)
COLLECTION = "Dokumente"
if client.has_collection(collection_name=COLLECTION):
client.drop_collection(collection_name=COLLECTION)
client.create_collection(
collection_name=COLLECTION,
dimension=384,
auto_id=True)
for doc, embedding in zip(docs, docs_embeddings):
client.insert(COLLECTION, {"text": doc, "vector": embedding})
results = client.search(
collection_name=COLLECTION,
data=query_embeddings,
consistency_level="Strong",
output_fields=["text"])
Weitere Informationen finden Sie in der SentenceTransformer-Dokumentation.
- Einführung in das all-MiniLM-L12-v2 Einbettungsmodell
- Wie man Vektoreinbettungen mit dem all-MiniLM-L12-v2-Modell erstellt
Inhalte
Nahtlose KI-Workflows
Von Embeddings bis hin zu skalierbarer KI-Suche – Zilliz Cloud ermöglicht es Ihnen, Embeddings mit beispielloser Geschwindigkeit und Effizienz zu speichern, zu indizieren und abzurufen.
Zilliz Cloud kostenlos ausprobieren

