Multimodale Daten in BigQuery analysieren
In diesem Dokument werden die BigQuery-Funktionen beschrieben, mit denen Sie multimodale Daten analysieren können. Einige Funktionen sind in der Google Cloud Konsole und im bq-Befehlszeilentool verfügbar, andere über BigQuery DataFrames in Python. Viele dieser Funktionen können zusammen verwendet werden, um die Analyse und Transformation von multimodalen Daten zu vereinfachen.
Mit den Funktionen für multimodale Daten von BigQuery können Sie folgende Aufgaben ausführen:
- Unstrukturierte Daten mit
ObjectRef-Werten in Standardtabellen einbinden. - Mit unstrukturierten Daten in Analyse- und Transformationsworkflows mit
ObjectRefRuntime-Werten arbeiten. - Mit BigQuery ML generativen KI-Funktionen und Gemini-Modellen Text, Einbettungen und Skalarwerte aus multimodalen Daten generieren.
- Multimodale DataFrames in BigQuery DataFrames erstellen.
- Bilder transformieren und PDF-Dateien in Blöcke aufteilen mit
den BigQuery DataFrames
Series.BlobAccessor-Methoden. - Mit BigQuery DataFrames generativen KI-Methoden Text und Einbettungen aus multimodalen Daten generieren.
Eine Schritt-für-Schritt-Anleitung zur Verwendung der Google Cloud Konsole finden Sie unter Multimodale Daten mit SQL analysieren. Eine Schritt-für-Schritt-Anleitung zur Verwendung von BigQuery DataFrames in Python finden Sie unter Multimodale Daten mit BigQuery DataFrames in Python analysieren.
Vorteile
Die Funktionen für multimodale Daten von BigQuery bieten folgende Vorteile:
- Kompositionsfähigkeit: Mit `ObjectRef`-Werten können Sie strukturierte und unstrukturierte Daten
in derselben Standardtabellenzeile speichern und verwalten.
ObjectRefSie können beispielsweise Bilder für ein Produkt in derselben Zeile wie die übrigen Produktinformationen speichern. Mit Standard-SQL-Funktionen können Sie Spalten erstellen und aktualisieren, dieObjectRef-Werte enthalten. Außerdem können SieObjectRef-Werte als Ausgabe einer Transformationsaktion für ein Objekt erstellen. - Objektdaten in generativen KI-Prompts verwenden: Verwenden Sie
ObjectRefRuntimeWerte als Eingabe für generative KI-Funktionen. Sie können beispielsweise Einbettungen für Bild- und Textdaten aus derselben Tabelle generieren. Für die Generierung von Text und Skalarwerten können Sie in dem Prompt, den Sie an ein Modell senden, auch auf mehrere Objekte verweisen. Sie können beispielsweise einen Prompt erstellen, in dem das Modell aufgefordert wird, zwei Bilder von Tieren zu vergleichen und dann Text zurückzugeben, der angibt, ob sie dieselbe Tierart zeigen. - Reihenfolge von Blöcken beibehalten: Sie können Objekte in Blöcke aufteilen und die Blöcke dann als Array von
ObjectRefWerten in einer Standardtabellenspalte speichern, um ihre Reihenfolge beizubehalten. Sie können beispielsweise Bilder aus einem Video parsen und diese Bilder dann als Array vonObjectRef-Werten speichern, sodass die Bilder in derselben Reihenfolge bleiben, in der sie im Originalvideo zu sehen sind.
ObjectRef-Werte
Ein ObjectRef-Wert ist ein STRUCT-Wert, der das
ObjectRef-Format verwendet.
Sie können Cloud Storage-Objektmetadaten und einen
zugehörigen Autorisierer in einer
BigQuery-Standardtabelle
speichern, indem Sie eine STRUCT oder ARRAY<STRUCT> Spalte erstellen, die dieses Format verwendet.
Der Autorisiererwert gibt die
Cloud-Ressourcenverbindung
an, die BigQuery für den Zugriff auf das Cloud Storage-Objekt verwendet.
Verwenden Sie ObjectRef-Werte, wenn Sie unstrukturierte Daten in eine Standardtabelle einbinden müssen. In einer Produkttabelle können Sie beispielsweise Produktbilder in derselben Zeile wie die übrigen Produktinformationen speichern, indem Sie eine Spalte mit einem ObjectRef-Wert hinzufügen.
Erstellen und aktualisieren Sie ObjectRef-Werte mit den folgenden GoogleSQL-Funktionen:
OBJ.MAKE_REF: Erstellen Sie einenObjectRef-Wert, der Metadaten für ein Cloud Storage-Objekt enthält.OBJ.FETCH_METADATA: Rufen Sie Cloud Storage-Metadaten für einenObjectRef-Wert ab, der teilweise mituri- undauthorizer-Werten gefüllt ist.
Weitere Informationen finden Sie unter
Spalten in Tabellenschemas angeben.ObjectRef
ObjectRefRuntime-Werte
Ein ObjectRefRuntime-Wert ist ein JSON-Wert, der das
ObjectRefRuntime-Schema verwendet.
Ein ObjectRefRuntime-Wert enthält die Cloud Storage-Objektmetadaten
aus dem ObjectRef-Wert, der zum Erstellen verwendet wurde, einen zugehörigen Autorisierer
und Zugriffs-URLs. Mit den Zugriffs-URLs können Sie das Objekt in
Cloud Storage lesen oder ändern.
Verwenden Sie ObjectRefRuntime-Werte, um mit Objektdaten in Analyse- und Transformationsworkflows zu arbeiten. Die Zugriffs-URLs in ObjectRefRuntime-Werten laufen nach maximal 6 Stunden ab. Sie können aber auch eine kürzere Ablaufzeit konfigurieren. Wenn Sie ObjectRefRuntime-Werte im Rahmen Ihres Workflows irgendwo speichern, sollten Sie diese Daten regelmäßig aktualisieren. Wenn Sie Objektmetadaten speichern möchten, speichern Sie
ObjectRef Werte stattdessen und verwenden Sie sie dann, um ObjectRefRuntime
Werte zu generieren, wenn Sie sie benötigen. ObjectRef -Werte müssen nur aktualisiert werden, wenn die zugrunde liegenden Objekte in Cloud Storage geändert werden.
Erstellen Sie ObjectRefRuntime Werte mit der
OBJ.GET_ACCESS_URL Funktion.
Generative KI-Funktionen
Generieren Sie Text, Einbettungen und Skalarwerte basierend auf der ObjectRefRuntime-Eingabe mit den folgenden generativen KI-Funktionen und Gemini-Modellen:
AI.GENERATEAI.GENERATE_TEXTAI.GENERATE_TABLEAI.GENERATE_BOOLAI.GENERATE_DOUBLEAI.GENERATE_INTAI.GENERATE_EMBEDDINGAI.EMBEDAI.SIMILARITY
Mit multimodalen Daten in Python arbeiten
Sie können multimodale Daten in Python mit BigQuery DataFrames-Klassen und -Methoden analysieren.
Multimodale DataFrames
Erstellen Sie ein multimodales DataFrame, das strukturierte und unstrukturierte Daten integriert
mit den folgenden
Session
Methoden:
from_glob_pathmethod: Erstellen Sie ein multimodales DataFrame aus einem Cloud Storage-Bucket.read_gbq_object_tablemethod: Erstellen Sie ein multimodales DataFrame aus einer Objekttabelle.
Methoden zur Objekttransformation
Transformieren Sie Objektdaten mit den folgenden
Series.BlobAccessor
Methoden:
pdf_chunkMethode: Teilen Sie PDF-Objekte aus einem multimodalen DataFrame in Blöcke auf.Die folgenden Methoden zum Transformieren von Bildobjekten aus einem multimodalen DataFrame:
Generative KI-Methoden
Verwenden Sie die folgenden Methoden, um generative KI-Aufgaben für multimodale Daten auszuführen:
predictMethode derGeminiTextGeneratorKlasse: Generieren Sie Text basierend auf multimodalen Daten.predictMethode derMultimodalEmbeddingGeneratorKlasse: Generieren Sie Einbettungen basierend auf multimodalen Daten.
Objekttabellen
Wenn Sie auf der Zulassungsliste für die Vorschau multimodaler Daten stehen, enthalten alle neuen
Objekttabellen, die
Sie erstellen, eine ref-Spalte mit einem ObjectRef-Wert für das
jeweilige Objekt. Die Verbindung, die zum Erstellen der Objekttabelle verwendet wird, wird verwendet, um die authorizer-Werte in der ref-Spalte zu füllen. Mit der ref-Spalte können Sie ObjectRef-Werte in Standardtabellen füllen und aktualisieren.
Beschränkungen
Für die Funktionen für multimodale Daten von BigQuery gelten die folgenden Einschränkungen:
- Sie müssen alle Abfragen, die auf
ObjectRef-Werte verweisen, im selben Projekt wie die Tabelle ausführen, die dieObjectRef-Werte enthält. - In dem Projekt und der Region, in denen Sie
Abfragen ausführen, die auf
ObjectRefoderObjectRefRuntimeWerte verweisen, dürfen nicht mehr als 20 Verbindungen vorhanden sein. Wenn Sie die Abfragen beispielsweise inasia-east1inmyprojectausführen, dürfen inasia-east1inmyprojectnicht mehr als 20 Verbindungen vorhanden sein.
Kosten
Bei der Verwendung von multimodalen Daten fallen die folgenden Kosten an:
- Die Speicherung von Objektmetadaten als
ObjectRef-Werte in Standardtabellen trägt zu den BigQuery-Speicherkosten für die Tabelle bei. - Für Abfragen, die für
ObjectRef-Werte ausgeführt werden, fallen BigQuery-Compute-Kosten an. - Für neue Objekte, die Sie aus Objekttransformationen erstellen, fallen Cloud Storage-Kosten an.
- Für neue Daten, die Sie in BigQuery erstellen und speichern, fallen BigQuery-Speicherkosten an.
- Für die Verwendung von generativen KI-Funktionen fallen Vertex AI-Kosten an.
- Für die Verwendung von BigQuery Python-UDFs sowie von multimodalen DataFrames und Methoden zur Objekttransformation in BigQuery DataFrames fallen Python-UDF-Kosten an.
Weitere Informationen finden Sie auf den folgenden Preisseiten:
Nächste Schritte
- `ObjectRef`
ObjectRefcolumns in table schemas angeben. - Multimodale Daten mit SQL analysieren.
- Multimodale Daten mit BigQuery DataFrames in Python analysieren.
- Weitere Informationen zu generativer KI in BigQuery ML.
- Weitere Informationen zu BigQuery DataFrames.