Einbettungen aus Spanner in Vertex AI Vector Search exportieren

Mit der Vektorsuche in Vertex AI können Nutzer mithilfe von Vektoreinbettungen nach semantisch ähnlichen Elementen suchen. Mit dem Workflow für die Spanner-zu-Vertex AI-Vektorsuche können Sie Ihre Spanner-Datenbank in die Vektorsuche einbinden, um eine Suche nach Vektorähnlichkeiten für Ihre Spanner-Daten durchzuführen.

Das folgende Diagramm zeigt den gesamten Anwendungsworkflow, der zeigt, wie Sie die Vektorsuche für Ihre Spanner-Daten aktivieren und verwenden können:

Workflow für die Suche von Spanner zu Vektorsuche.

Dies ist der allgemeine Workflow:

  1. Vektoreinbettungen generieren und speichern.

    Sie können Vektoreinbettungen Ihrer Daten generieren und diese dann mit Ihren Betriebsdaten in Spanner speichern und verwalten. Mit der SQL-Funktion ML.PREDICT von Spanner können Sie Einbettungen generieren, um auf das Modell textembedding-gecko von Vertex AI zuzugreifen oder andere Einbettungsmodelle zu verwenden, die in Vertex AI bereitgestellt werden.

  2. Einbettungen mit der Vektorsuche synchronisieren

    Verwenden Sie den Workflow für die Spanner-zu-Vertex AI-Vektorsuche, der mithilfe von Workflows bereitgestellt wird, um Einbettungen in einen Vektorsuchindex zu exportieren und hochzuladen. Mit Cloud Scheduler können Sie diesen Workflow regelmäßig planen, um Ihren Index für die Vektorsuche mit den neuesten Änderungen an Ihren Einbettungen in Spanner auf dem neuesten Stand zu halten.

  3. Suchen Sie mit dem Vektorsuchindex nach einer Vektorähnlichkeit.

    Sie können den Index der Vektorsuche abfragen, um Ergebnisse für semantisch ähnliche Elemente zu finden. Sie können für Abfragen einen öffentlichen Endpunkt oder über VPC-Peering verwenden.

Anwendungsbeispiel

Ein illustrierter Anwendungsfall für die Vektorsuche ist ein Onlinehändler mit einem Inventar von Hunderttausenden von Artikeln. In diesem Szenario sind Sie Entwickler für einen Onlinehändler und möchten die Suche nach Vektorähnlichkeit in Ihrem Produktkatalog in Spanner verwenden, damit Ihre Kunden anhand ihrer Suchanfragen relevante Produkte finden können.

Führen Sie Schritt 1 und Schritt 2 des allgemeinen Workflows aus, um Vektoreinbettungen für Ihren Produktkatalog zu generieren, und synchronisieren Sie diese Einbettungen mit der Vektorsuche.

Stellen Sie sich nun vor, dass ein Kunde in Ihrer Anwendung nach „beste, schnell trocknende Sportshorts, die ich im Wasser tragen kann“ sucht. Wenn Ihre Anwendung diese Abfrage erhält, müssen Sie mit der SQL-Funktion ML.PREDICT von Spanner eine Einbettung der Anfrage für diese Suchanfrage generieren. Achten Sie darauf, dasselbe Einbettungsmodell zu verwenden, das zum Generieren der Einbettungen für Ihren Produktkatalog verwendet wurde.

Fragen Sie als Nächstes den Index der Vektorsuche nach Produkt-IDs ab, deren Einbettungen denen ähneln, die aus der Suchanfrage Ihres Kunden generiert wurden. Der Suchindex kann Produkt-IDs für semantisch ähnliche Artikel wie Wakeboarding-Shorts, Surfbekleidung und Badehosen empfehlen.

Nachdem die Vektorsuche diese ähnlichen Produkt-IDs zurückgegeben hat, können Sie bei Spanner die Produktbeschreibungen, die Anzahl der Produkte, den Preis und andere relevante Metadaten abfragen und sie dem Kunden anzeigen lassen.

Sie können auch Generative AI verwenden, um die von Spanner zurückgegebenen Ergebnisse zu verarbeiten, bevor sie Ihrem Kunden angezeigt werden. Sie können beispielsweise die großen generativen KI-Modelle von Google verwenden, um eine prägnante Zusammenfassung der empfohlenen Produkte zu generieren. Weitere Informationen finden Sie in dieser Anleitung zur Verwendung von generativer KI für personalisierte Empfehlungen in einer E-Commerce-Anwendung.

Nächste Schritte