Was ist eine Vektordatenbank?

Informationen liegt in vielen Formen vor. Manche Informationen sind unstrukturiert – wie Textdokumente, Rich Media und Audio –, andere wiederum sind strukturiert – wie Anwendungsprotokolle, Tabellen und Grafiken. Innovationen in den Bereichen künstliche Intelligenz und Machine Learning (KI/ML) haben die Erstellung einer Art ML-Modell ermöglicht – Einbettungsmodelle. Einbettungen kodieren alle Arten von Daten in Vektoren, die die Bedeutung und den Kontext eines Assets erfassen. Auf diese Weise lassen sich ähnliche Assets finden, indem Sie nach benachbarten Datenpunkten suchen. Vektorsuchmethoden ermöglichen einzigartige Erlebnisse wie das Aufnehmen eines Fotos mit dem Smartphone und die Suche nach ähnlichen Bildern. 

Vektordatenbanken bieten die Möglichkeit, Vektoren als hochdimensionale Punkte zu speichern und abzurufen. Sie ermöglichen fügen zusätzliche Funktionen für die effiziente und schnelle Suche nach den nächsten Nachbarn im N-dimensionalen Raum. Sie werden in der Regel von k-Nearest Neighbor-Indizes (k-NN) unterstützt und mit Algorithmen wie Hierarchical Navigable Small World (HNSW) und Inverted File Index (IVF) erstellt. Vektor-Datenbanken bieten zusätzliche Funktionen wie Datenmanagement, Fehlertoleranz, Authentifizierung und Zugriffskontrolle sowie eine Abfrage-Engine. 

Warum sind Vektordatenbanken wichtig?

Ihre Entwickler können Vektoren, die durch Einbettungen generiert wurden, in eine Vektordatenbank indexieren. Dadurch finden sie ähnliche Assets, indem sie nach benachbarten Vektoren abfragen.

Vektordatenbanken bieten eine Methode zur Operationalisierung von Einbettungsmodellen. Die Anwendungsentwicklung ist produktiver mit Datenbankfunktionen wie Ressourcenmanagement, Sicherheitskontrollen, Skalierbarkeit, Fehlertoleranz und effizientem Informationsabruf unter Verwendung ausgeklügelter Abfragesprachen.

Vektordatenbanken ermöglichen es Entwicklern letztendlich, einzigartige Anwendungserlebnisse zu schaffen. So könnten Ihre Benutzer beispielsweise Fotos auf ihren Smartphones aufnehmen, um nach ähnlichen Bildern zu suchen. 

Entwickler können andere Arten von Modellen für Machine Learning verwenden, um die Extraktion von Metadaten aus Inhalten wie Bildern und gescannten Dokumenten zu automatisieren. Sie können Metadaten zusammen mit Vektoren indexieren, um eine Hybridsuche sowohl nach Schlüsselwörtern als auch nach Vektoren zu ermöglichen. Darüber hinaus können Entwickler auch semantisches Verständnis in ein Relevanzranking einfließen lassen, um die Suchergebnisse zu verbessern.

Innovationen in der generativen künstlichen Intelligenz (KI) haben neue Arten von Modellen wie ChatGPT eingeführt, mit denen Text generiert und komplexe Konversationen mit Menschen verwaltet werden können. Einige können mit mehreren Modalitäten arbeiten; einige Modelle ermöglichen es Benutzern beispielsweise, eine Landschaft zu beschreiben und darauf aufbauen ein Bild zu erzeugen, das der Beschreibung entspricht.

Generative Modelle sind jedoch anfällig für Halluzinationen, was beispielsweise dazu führen könnte, dass ein Chatbot Benutzer irreführt. Vektordatenbanken können generative KI-Modelle ergänzen. Sie können eine externe Wissensbasis für generative KI-Chatbots bereitstellen und sicherstellen, dass sie vertrauenswürdige Informationen bereitstellen. 

Wie werden Vektordatenbanken verwendet?

Vektordatenbanken werden in der Regel für Anwendungsfälle der Vektorsuche wie visuelle, semantische und multimodale Suche verwendet. Inzwischen werden sie mit generativen Textmodellen für künstliche Intelligenz (KI) kombiniert, um intelligente Agenten zu erstellen, die dialogorientierte Sucherlebnisse bieten. Sie können darüber hinaus verhindern, dass generative KI-Modelle halluzinieren, was dazu führen kann, dass Chatbots unsachliche, aber glaubwürdig klingende Antworten geben.

Der Entwicklungsprozess beginnt mit der Erstellung eines Einbettungsmodells, das einen Korpus wie Produktbilder in Vektoren codieren soll. Der Datenimportvorgang wird auch als Datenhydratation bezeichnet. Der Anwendungsentwickler kann jetzt die Datenbank verwenden, um nach ähnlichen Produkten zu suchen, indem er ein Produktbild codiert und den Vektor für die Suche nach ähnlichen Bildern verwendet.

Innerhalb des Modells ermöglichen die k-Nearest-Neighbor-Indizes (k-NN) das effiziente Abrufen von Vektoren und wenden eine Distanzfunktion wie den Kosinus an, um die Ergebnisse nach Ähnlichkeit zu ordnen. 

Wer verwendet Vektordatenbanken?

Vektordatenbanken sind für Entwickler gedacht, die auf der Vektorsuche basierende Erlebnisse erstellen möchten. Ein Anwendungsentwickler kann Open-Source-Modelle, Tools für automatisiertes Machine Learning (ML) und grundlegende Modellservices verwenden, um Einbettungen zu generieren und eine Vektordatenbank mit Daten zu versorgen. Dies erfordert minimales ML-Fachwissen.

Ein Team von Datenwissenschaftlern und Technikern kann fachmännisch abgestimmte Einbettungen erstellen und diese über eine Vektordatenbank operationalisieren. Auf diesem Wege können Sie Lösungen für künstliche Intelligenz (KI) schneller bereitstellen.

Betriebsteams profitieren von der Verwaltung von Lösungen in Form vertrauter Datenbank-Workloads. Sie können vorhandene Tools und Playbooks verwenden.

Was sind die Vorteile von Vektordatenbanken?

Vektordatenbanken ermöglichen Entwicklern Innovationen und die Erstellung einzigartiger Erlebnisse mit Hilfe der Vektorsuche. Sie können die Anwendungsentwicklung für künstliche Intelligenz (KI) beschleunigen und die Operationalisierung von KI-gestützten Anwendungsworkloads vereinfachen.

Vektordatenbanken bieten eine Alternative zum Aufbau auf bloßen k-Nearest Neighbor-Indizes (k-NN). Die Verwendung, Abstimmung und Umsetzung eines solchen Indexes erfordert ein hohes Maß an zusätzlichem Fachwissen und Technik.

Eine gute Vektordatenbank bietet Anwendungen eine Grundlage durch Funktionen wie Datenverwaltung, Fehlertoleranz, kritische Sicherheitsfunktionen und eine Abfrage-Engine. Diese Funktionen ermöglichen es Benutzern, ihre Workloads zu operationalisieren, um die Skalierung zu vereinfachen, eine hohe Skalierbarkeit aufrechtzuerhalten und Sicherheitsanforderungen zu erfüllen.

Funktionen wie die Abfrage-Engine und SDKs vereinfachen die Anwendungsentwicklung. Sie ermöglichen es Entwicklern außerdem, im Rahmen einer k-NN-Suche komplexere Abfragen (wie Suchen und Filtern) nach Metadaten durchzuführen. Darüber hinaus haben Sie auch die Möglichkeit, hybride Relevanzbewertungsmodelle zu verwenden, die traditionelle Termhäufigkeitsmodelle wie BM25 mit Vektorwerten kombinieren, um den Informationsabruf zu verbessern.

Wie kann AWS Ihre Anforderungen an Vektordatenbanken unterstützen?

Amazon Web Services (AWS) bietet viele Services für Ihre Vektordatenbankanforderungen:

Beginnen Sie mit Vektordatenbanken in AWS, indem Sie noch heute ein Konto erstellen.

Was sind die Herausforderungen von Vektordatenbanken?

Vektordatenbanken stehen vor vielen der gleichen Herausforderungen wie andere Datenbanktechnologien. Ihre Skalierbarkeit, Näherungsgenauigkeit, Latenzleistung und Wirtschaftlichkeit werden kontinuierlich verbessert.

Da es sich um eine relativ junge Technologie handelt, müssen viele Vektordatenbanken ihre Kernkompetenzen wie Sicherheit, Resilienz, Betriebsunterstützung und Diversifizierung der Workload-Unterstützung ausweiten. Dies wird umso wichtiger, je mehr sich die Anwendungen der künstlichen Intelligenz (KI) entwickeln und mehr als nur eine reine Vektorsuche erfordern. 

Nächste Schritte mit AWS

Zusätzliche produktbezogene Ressourcen ansehen
Kostenlose Angebote für Datenbank-Services in der Cloud anzeigen 
Registrieren Sie sich für ein kostenloses Konto

Sie erhalten sofort Zugriff auf das kostenlose Kontingent von AWS.

Registrieren 
Mit der Entwicklung in der Konsole starten

Starten Sie mit der Entwicklung in der AWS-Managementkonsole.

Anmelden