Übersicht über die Verwaltung von Modellendpunkten

Auf dieser Seite wird beschrieben, wie Sie einen AI-Modellendpunkt registrieren und Vorhersagen mit der Modellendpunktverwaltung in Cloud SQL aufrufen. Informationen zur Verwendung von AI-Modellen in Produktionsumgebungen finden Sie unter Vektoreinbettungen generieren und verwalten.

Übersicht

Mit der Modellendpunktverwaltung können Sie einen Modellendpunkt registrieren, Metadaten für Modellendpunkte in Ihrer Cloud SQL-Instanz verwalten und dann mit SQL-Abfragen mit den Modellen interagieren. Sie können diese Modelle verwenden, um Vektoreinbettungen zu generieren oder Vorhersagen aufzurufen.

Mit der Modellendpunktverwaltung können Sie die folgenden Modelltypen registrieren:

  • Vertex AI-Modelle zur Texteinbettung.
  • Benutzerdefinierte Texteinbettungsmodelle, die in Netzwerken innerhalb von gehostet werden Google Cloud.
  • Generische Modelle mit einer JSON-basierten API. Beispiele für diese Modelle sind:

    • Das Modell gemini-flash aus dem Vertex AI Model Garden
    • Das Modell open_ai für OpenAI-Modelle
    • Modelle, die in Netzwerken innerhalb von gehostet werden Google Cloud

Funktionsweise

Mit der Modellendpunktverwaltung können Sie einen Modellendpunkt registrieren, der die folgenden Anforderungen erfüllt:

  • Die Modelleingabe und -ausgabe unterstützen das JSON-Format.
  • Sie können das REST-Protokoll verwenden, um das Modell aufzurufen.

Wenn Sie einen Modellendpunkt bei der Modellendpunktverwaltung registrieren, registriert die Modellendpunktverwaltung jeden Endpunkt mit einer eindeutigen Modell-ID als Referenz zum Modell. Sie können diese Modell-ID verwenden, um Modelle abzufragen:

  • Generieren Sie Einbettungen, um Text-Prompts in numerische Vektoren zu übersetzen. Sie können generierte Einbettungen als Vektordaten speichern, wenn Sie die Unterstützung für Vektoreinbettungen in Ihrer Instanz aktivieren. Weitere Informationen finden Sie unter Vektoreinbettungen in Ihrer Instanz aktivieren und deaktivieren.

  • Rufen Sie Vorhersagen auf, um ein Modell mithilfe von SQL innerhalb einer Transaktion aufzurufen.

Wenn Sie Remote-AI-Modelle mit Ihrer Cloud SQL Instanz registrieren und aufrufen möchten, muss Ihre Instanz mit der Wartungsversion MYSQL_VERSION.R20250531.01_14 oder höher installiert sein. Wenn auf Ihrer Instanz eine Wartungsversion vor MYSQL_VERSION.R20250531.01_14 ausgeführt wird, dann können Sie nur die folgenden Funktionen verwenden, wie in der Dokumentation zur Einbindung von Cloud SQL und Vertex AI beschrieben.

Informationen zum Upgrade Ihrer Instanz auf die Wartungsversion MYSQL_VERSION.R20250531.01_14 oder höher finden Sie unter Selfservice-Wartung. Nach dem Upgrade Ihrer Instanz können Sie die folgenden Funktionen verwenden:

Außerdem können Sie die folgenden Funktionen mit Ihrem registrierten Modellanbieter verwenden:

Erforderliche Berechtigungen für Datenbanknutzer

Wenn Sie Remote-AI-Modelle registrieren und aufrufen möchten, müssen Sie als MySQL-Datenbanknutzer angemeldet sein, dem die Berechtigungen SELECT und EXECUTE für mysql.* gewährt wurden.

Standardmäßig hat jeder Nutzer mit der Rolle cloudsqlsuperuser diese Berechtigungen oder kann einen Nutzer erstellen und die erforderlichen Berechtigungen gewähren.

Weitere Informationen zur Rolle cloudsqlsuperuser in Cloud SQL finden Sie unter MySQL 8.0-Nutzerberechtigungen und MySQL 8.4-Nutzerberechtigungen.

Wichtige Konzepte

Bevor Sie die Modellendpunktverwaltung verwenden, sollten Sie die Konzepte kennen, die für die Verbindung zu den Modellen und deren Verwendung erforderlich sind.

Modellanbieter

Der Modellanbieter ist der unterstützte Anbieter des Modell-Hostings. In der folgenden Tabelle sehen Sie den Wert für den Modellanbieter, den Sie je nach verwendetem Modellanbieter festlegen müssen:

Modellanbieter In der Funktion festlegen als…
Vertex AI (einschließlich Gemini) google
Anthropic anthropic
Hugging Face hugging_face
OpenAI open_ai
Andere Modelle,die außerhalb von Vertex AI gehostet werden,
Anthropic, Hugging Face und OpenAI
custom

Der Standardmodellanbieter ist custom.

Modelltypen

Modelltypen sind die Typen des AI-Modells. Wenn Sie einen Modellendpunkt registrieren, können Sie die Modelltypen text_embedding oder generic für den Endpunkt festlegen.

Wenn Sie Vertex AI als Modellanbieter verwenden, müssen Sie keinen Modellendpunkt registrieren, da die Endpunkte automatisch unterstützt werden. Standardmäßig verwenden Sie mit Vertex AI das Modell text-embedding-005.

Andere Modelle zur Texteinbettung
Für andere Modelle zur Texteinbettung müssen Sie Transformationsfunktionen erstellen, um die Eingabe- und Ausgabeformate zu verarbeiten, die vom Modell unterstützt werden. Optional können Sie die Funktion zum Generieren von HTTP-Headern verwenden, die benutzerdefinierte Header generiert, die für Ihr Modell erforderlich sind.

Der Modelltyp für diese Modelle ist text_embedding.

Generische Modelle
Die Modellendpunktverwaltung unterstützt auch die Registrierung aller anderen Modelltypen außer Modellen zur Texteinbettung. Verwenden Sie die mysql.ml_predict_row() Funktion, um Vorhersagen für generische Modelle aufzurufen. Sie können Metadaten für Modellendpunkte festlegen, z. B. einen Anfrageendpunkt und HTTP-Header, die für Ihr Modell spezifisch sind.
Sie können keine Transformationsfunktionen übergeben, wenn Sie einen generischen Modellendpunkt registrieren. Achten Sie darauf, dass die Eingabe für die Funktion im JSON-Format vorliegt, wenn Sie Vorhersagen aufrufen, und dass Sie die JSON-Ausgabe parsen, um die endgültige Ausgabe abzuleiten.
Der Modelltyp für diese Modelle ist generic. Da generic der Standardmodelltyp ist, ist das Festlegen des Modelltyps optional, wenn Sie Modellendpunkte für diesen Typ registrieren.
Mit Vertex AI bietet die Modellendpunktverwaltung vorregistrierte Unterstützung für das Modell gemini-2.5-flash.

Authentifizierungsmethoden

Sie können die Unterstützung für Vektoreinbettungen in Ihrer Cloud SQL for MySQL Instanz aktivieren und dann verschiedene Authentifizierungsmethoden festlegen, um auf Ihr Modell zuzugreifen. Das Festlegen dieser Methoden ist optional und nur erforderlich, wenn Sie sich authentifizieren müssen, um auf Ihr Modell zuzugreifen.

Für Vertex AI-Modelle wird das Cloud SQL-Dienstkonto zur Authentifizierung verwendet. Für andere Modelle kann der API-Schlüssel oder das Bearertoken, das als Secret in dem Secret Manager gespeichert ist, mit der mysql.ml_create_sm_secret_registration() SQL-Funktion verwendet werden.

In der folgenden Tabelle sind die Authentifizierungsmethoden aufgeführt, die Sie festlegen können:

Authentifizierungsmethode In der Funktion festlegen als… Modellanbieter
Cloud SQL-Dienst-Agent auth_type_cloudsql_service_agent_iam Vertex AI-Anbieter
Secret Manager auth_type_secret_manager Modelle, die außerhalb von Vertex AI gehostet werden

Vorhersagefunktionen

mysql.ml_embedding()
Ruft einen registrierten Texteinbettungsmodell-Endpunkt auf, um Einbettungen zu generieren. Es bietet integrierte Unterstützung für alle Einbettungsmodelle von Vertex AI.
Für Modelle zur Texteinbettung ohne integrierte Unterstützung, sind die Eingabe- und Ausgabeparameter für ein Modell eindeutig und müssen transformiert werden, damit die Funktion das Modell aufrufen kann. Erstellen Sie eine Transformationsfunktion für die Eingabe, um die Eingabe der Vorhersagefunktion in die modellspezifische Eingabe zu transformieren, und eine Transformationsfunktion für die Ausgabe, um die modellspezifische Ausgabe in die Ausgabe der Vorhersagefunktion zu transformieren.
mysql.ml_predict_row()
Ruft einen registrierten generischen Modellendpunkt auf, wenn der Endpunkt JSON-basierte APIs unterstützt, um Vorhersagen aufzurufen.

Transformationsfunktionen

Transformationsfunktionen ändern die Eingabe in ein Format, das das Modell versteht, und konvertieren die Modellantwort in das Format, das die Vorhersagefunktion erwartet. Die Transformationsfunktionen werden verwendet, wenn der Modellendpunkt text-embedding ohne integrierte Unterstützung registriert wird. Die Signatur der Transformationsfunktionen hängt von der Vorhersagefunktion für den Modelltyp ab.

Sie können keine Transformationsfunktionen verwenden, wenn Sie einen generic-Modellendpunkt registrieren.

Im Folgenden sehen Sie die Signaturen für die Vorhersagefunktion für Modelle zur Texteinbettung:

// define custom model specific input/output transform functions.
CREATE FUNCTION IF NOT EXISTS input_transform_function(model_id VARCHAR(100), input_text TEXT) RETURNS JSON DETERMINISTIC;

// the returned BLOB should be of type VECTOR
CREATE FUNCTION IF NOT EXISTS output_transform_function(model_id VARCHAR(100), response_json JSON) RETURNS BLOB DETERMINISTIC;

Weitere Informationen zum Erstellen von Transformationsfunktionen finden Sie unter Beispiel für Transformationsfunktionen.

Funktion zum Generieren von HTTP-Headern

Die Funktion zum Generieren von HTTP-Headern generiert die Ausgabe in JSON-Schlüssel/Wert-Paaren, die als HTTP-Header verwendet werden. Die Signatur der Vorhersagefunktion definiert die Signaturen der Funktion zum Generieren von Headern.

Im folgenden Beispiel sehen Sie die Signatur für die Vorhersagefunktion mysql.ml_embedding():

CREATE FUNCTION IF NOT EXISTS generate_headers(model_id VARCHAR(100), input TEXT) RETURNS JSON DETERMINISTIC;

Für die Vorhersagefunktion mysql.ml_predict_row() sieht die Signatur so aus:

CREATE FUNCTION IF NOT EXISTS generate_headers(model_id VARCHAR(100), input JSON) RETURNS JSON DETERMINISTIC;

Weitere Informationen zum Erstellen einer Funktion zum Generieren von Headern finden Sie unter Beispiel für eine Funktion zum Generieren von Headern.

Beschränkungen

  • Wenn Sie eine der Funktionen zur Modellregistrierung oder zur Secret-Verwaltung ausführen, werden alle offenen Transaktionen in der Sitzung implizit übernommen. Die Vorhersagefunktionen übernehmen Transaktionen nicht implizit.

  • Wenn Sie Ihre Datenbank mit mysqldump exportieren oder importieren, wird der Modellendpunktkatalog nicht exportiert.

  • Der Name einer Nutzerdatenbank, die Transformationsfunktionen enthält, darf keinen Punkt ('.') enthalten. Eine Datenbank mit dem Namen my.sql wird beispielsweise nicht unterstützt.

  • Die Modellendpunktverwaltung ist nur für Cloud SQL for MySQL-Version 8.0.36 und höher verfügbar.

Nächste Schritte