Vector Assist – Übersicht

Vector Assist ist eine Cloud SQL for PostgreSQL-Erweiterung, die die Bereitstellung und Verwaltung Ihrer Cloud SQL-Vektor-Workloads vereinfacht. Es bietet ein deklaratives SQL-Framework, mit dem Sie produktionsreife Vektorsuchfunktionen wie das Generieren von Einbettungen, die Optimierung von Anfragen und die Indexerstellung einrichten können. Dieses Framework reduziert die Komplexität von Vektor-Arbeitslasten durch:

  • Vereinfachte Absichtserklärung: Anforderungen wie Tabelle, Textspalte oder Ziel-Recall werden mit SQL-Funktionen deklariert.
  • Best Practices automatisieren: Generiert optimierte SQL-Befehle, auch Empfehlungen genannt, um Ihre Vektor-Arbeitslast mit Ihrer definierten Vektorspezifikation und einem optimierten Auto-Tuning-Algorithmus einzurichten, der die optimale Indexkonfiguration berechnet.
  • Transparenz und Kontrolle: Für jede Empfehlung werden klare Erklärungen bereitgestellt, wenn Aufgaben automatisiert werden. So können Sie Empfehlungen in Ihrem eigenen Tempo überprüfen, ändern und anwenden.
  • Schnelles Prototyping: Sie können schnell eine gut abgestimmte Einrichtung für die Vektorsuche bereitstellen und so die Zeit vom Konzept bis zur Produktion verkürzen.
  • Fokus auf Nutzerfreundlichkeit: Vereinfacht die Komplexität der semantischen Suche und schließt die Lücke zwischen geschäftlichen und technischen Anforderungen.

Mit Vector Assist können Sie End-to-End-Anwendungen mit semantischen Suchfunktionen und vereinfachter Einrichtung erstellen.

So funktioniert die Vektorhilfe

Wenn Sie die Vektorunterstützung verwenden möchten, müssen Sie die Vektorspezifikationen definieren. Das Framework verwendet diese Vektorspezifikationen, auch als Vektorspezifikation bezeichnet, um die Schritte zu generieren, die zum Erstellen eines Vektorindex erforderlich sind. Vector Assist gibt die erforderlichen Schritte zum Bereitstellen Ihrer Vektorarbeitslast als Empfehlungen aus. Jedes Mal, wenn Sie die Vektorspezifikation ändern, werden die Empfehlungen von Vector Assist neu generiert.

Nachdem Sie den Vektorindex mit diesen empfohlenen Schritten erstellt haben, können Sie mit Vector Assist optimierte Suchanfragen generieren.

Spezifikation für die Vektorunterstützung

Das Einrichten der Spezifikation für den Vektorindex oder Vektorspezifikation ist der erste Schritt bei der Verwendung von Vector Assist. Eine Vektorspezifikation ist ein Objekt, in dem Sie die Absicht und die Anforderungen für Ihre Vektorarbeitslast definieren. Sie enthält alle erforderlichen Informationen, darunter:

  • Die Tabellen und relevanten Spalten (Text oder Vektor)
  • Einstellungen für das Einbettungsmodell (bei Verwendung der Einbettungserstellung)
  • Bevorzugter Indextyp, z. B. HNSW oder IVFFlat.
  • Recall für Suchanfragen ausrichten
  • Arbeitsspeicherbeschränkungen oder andere Leistungseinschränkungen

Sie definieren die Vektorspezifikation mit der Funktion vector_assist.define_spec und können sie jederzeit ändern. Das System weist jeder Spezifikation eine eindeutige ID zu und speichert sie in einer Tabelle mit dem Namen vector_assist.vector_specs.

Vector Assist leitet die Spezifikationseingaben und einen optimierten Algorithmus für die automatische Abstimmung ab, der die optimale Indexkonfiguration berechnet. Vector Assist verwendet diese Werte zwar, um den Entwicklungsprozess zu vereinfachen, Sie können sie aber trotzdem an Ihre Vorlieben anpassen.

Empfehlungen für Vektor-Assistenzfunktionen

Nachdem Sie die Vektorspezifikation definiert haben, verarbeitet Vector Assist Ihre Eingabe und generiert Empfehlungen. Diese Empfehlungen sind eine geordnete Liste nützlicher Schritte, in der Regel SQL-Befehle, die Sie ausführen müssen, um Ihre Vektorarbeitslast gemäß Ihren Spezifikationen bereitzustellen. Jede Empfehlung enthält:

  • Die SQL-Abfrage, die ausgeführt werden soll.
  • Eine detaillierte Erklärung dazu, was die Abfrage bewirkt und warum sie empfohlen wird.
  • Informationen zu potenziellen Kompromissen oder Kosten, z. B. geschätzte Indexgröße oder Build-Zeit.

Vector Assist speichert Empfehlungen in einer Tabelle mit dem Namen vector_assist.recommendation. Sie können sie einzeln oder als Ganzes überprüfen, ändern und anwenden.

Jedes Mal, wenn Sie die Vektorspezifikation für Ihre Arbeitslast ändern, werden die Empfehlungen von Vector Assist neu generiert, um den aktualisierten Spezifikationen zu entsprechen.

Beschränkungen

Wenn Sie Vector Assist mit Ihren Cloud SQL for PostgreSQL-Instanzen verwenden, gelten die folgenden Einschränkungen:

  • Vector Assist unterstützt nur PostgreSQL-Versionen 12 und höher.
  • Vector Assist unterstützt zwar alle pgvector-Versionen, wir empfehlen jedoch, die aktuelle Version zu verwenden, um eine optimale Leistung und Funktionsunterstützung zu erzielen. Weitere Informationen finden Sie im pgvector-Changelog.
  • Wenn Ihre Instanz die Erweiterung google_ml_integration zum Generieren von Einbettungen verwendet, gelten ihre Einschränkungen auch, wenn Sie Vector Assist verwenden. Weitere Informationen finden Sie unter Verwaltung von Modellendpunkten.
  • Vector Assist unterstützt nur die Indextypen HNSW und IVFFlat.
  • Vector Assist unterstützt nur Modelle für Texteinbettungen zum automatischen Generieren von Einbettungen und verwendet text_column_name als Eingabeparameter. Wenn für Ihre Vektorarbeitslast ein multimodales Einbettungsmodell erforderlich ist, verwenden Sie die Erweiterung google_ml_integration oder eine andere Erweiterung, um diese Einbettungen manuell zu generieren, bevor Sie die Vektorunterstützung verwenden, um die semantische Suche für diese Einbettungen zu aktivieren.

Nächste Schritte