Vereinfachte Stammdatenverwaltung: Abgleichen & Mit generativer KI kombinieren

1. Übersicht

Was ist Master Data Management?

Beim Stammdatenmanagement (Master Data Management, MDM) geht es darum, eine einzige, zuverlässige Quelle der Wahrheit für die wichtigsten Daten Ihres Unternehmens zu schaffen. Stellen Sie sich eine sorgfältig organisierte Bibliothek vor, in der jedes Buch (Datenpunkt) richtig beschriftet, auf dem neuesten Stand und leicht zu finden ist.

Stammdaten stellen die wichtigsten, grundlegenden Geschäftseinheiten dar, die für die Abläufe eines Unternehmens unerlässlich sind. Hier sind die wichtigsten Elemente von Stammdaten:

  • Geschäftseinheiten:Entitäten wie Kunden, Produkte, Lieferanten, Standorte und Mitarbeiter, die die Nomen sind, um die sich Ihr Unternehmen dreht
  • Kennungen:Eindeutige Kennungen, die dafür sorgen, dass jede Einheit eindeutig ist und systemübergreifend nachverfolgt werden kann.
  • Attribute: Die Merkmale, die jede Einheit beschreiben, z. B. die Adresse eines Kunden oder der Preis eines Produkts.

Um Stammdaten besser zu verstehen, vergleichen wir sie mit Transaktionsdaten. Transaktionsdaten erfassen einzelne Ereignisse wie einen Kauf oder eine Lieferung. Stammdaten liefern den Kontext für diese Ereignisse, indem sie die beteiligten Einheiten definieren. Eine Verkaufstransaktion ist beispielsweise mit den Stammdaten für den Kunden, das Produkt und den Vertriebsmitarbeiter verknüpft.

Die Implementierung eines robusten MDM ist zwar für strategische Entscheidungen unerlässlich, kann aber komplex und ressourcenintensiv sein. Hier kommt die transformative Kraft generativer KI ins Spiel, insbesondere von Modellen wie Gemini 1.0 Pro, Gemini 1.0 Pro Vision und Gemini 1.5 Pro.

2. Ziel

In diesem Codelab wird gezeigt, wie Gemini 1.0 Pro die Verwaltung von Stammdatenanwendungen wie Anreicherung und Deduplizierung für die im öffentlichen BigQuery-Dataset verfügbaren citibike_stations-Daten vereinfacht.

Lernmittel

  1. Öffentliches BigQuery-Dataset bigquery-public-data.new_york_citibike.
  2. Gemini-Funktionsaufruf (eine Java Cloud-Funktion, die die Adressinformationen mithilfe der Reverse Geocoding API für die mit den citibike_stations-Daten verfügbaren Koordinaten abruft).
  3. Vertex AI Embeddings API und Vektorsuche in BigQuery zum Identifizieren von Duplikaten.

Aufgaben

  1. Sie erstellen ein BigQuery-Dataset für den Anwendungsfall. In diesem Dataset erstellen Sie eine Landing-Tabelle mit Daten aus der Tabelle bigquery-public-data.new_york_citibike.citibike_stations des öffentlichen Datasets.
  2. Sie stellen die Cloud Functions-Funktion bereit, die Gemini-Funktionsaufrufe für die Adressstandardisierung enthält.
  3. Sie speichern die angereicherten Adressdaten in den Landing-Tabellen (aus den beiden Quellen, die für diese Demonstration bereitgestellt werden).
  4. Sie rufen die Vertex AI Embeddings API aus BigQuery für die Adressdaten auf.
  5. Sie verwenden BigQuery Vector Search, um doppelte Datensätze zu identifizieren.

Das folgende Diagramm zeigt den Datenfluss und die Schritte, die für die Implementierung erforderlich sind.

Allgemeiner Ablauf des Anwendungsfalls

3. Voraussetzungen

  • Ein Browser, z. B. Chrome oder Firefox
  • Google Cloud-Projekt mit aktivierter Abrechnungsfunktion.

4. Hinweis

  1. Wählen Sie in der Google Cloud Console auf der Seite zur Projektauswahl ein Google Cloud-Projekt aus oder erstellen Sie eines.
  2. Die Abrechnung für das Cloud-Projekt muss aktiviert sein. So prüfen Sie, ob die Abrechnung für ein Projekt aktiviert ist .
  3. Sie verwenden Cloud Shell, eine Befehlszeilenumgebung, die in Google Cloud ausgeführt wird und in der bq vorinstalliert ist. Klicken Sie oben in der Google Cloud Console auf „Cloud Shell aktivieren“.

Bild der Schaltfläche „Cloud Shell aktivieren“

  1. Sobald die Verbindung mit der Cloud Shell hergestellt ist, prüfen Sie mit dem folgenden Befehl, ob Sie bereits authentifiziert sind und für das Projekt schon Ihre Projekt-ID eingestellt ist:
gcloud auth list
  1. Führen Sie den folgenden Befehl in Cloud Shell aus, um zu bestätigen, dass der gcloud-Befehl Ihr Projekt kennt.
gcloud config list project
  1. Wenn Ihr Projekt nicht festgelegt ist, verwenden Sie den folgenden Befehl, um es festzulegen:
gcloud config set project <YOUR_PROJECT_ID>
  1. Rufen Sie den Gemini for Google Cloud Marketplace auf, um die API zu aktivieren. Sie können auch den folgenden Befehl im Cloud Shell-Terminal verwenden:
gcloud services enable cloudaicompanion.googleapis.com --project PROJECT_ID
  1. Achten Sie darauf, dass die APIs für BigQuery, BigQuery Connection, Cloud Functions, Cloud Run, Vertex AI und Cloud Build aktiviert sind. Alternativ zum gcloud-Befehl können Sie die Konsole über diesen Link verwenden.

Informationen zu gcloud-Befehlen und deren Verwendung finden Sie in der Dokumentation.

5. BigQuery-Dataset und externe Verbindung erstellen

Erstellen wir zuerst ein Dataset und eine Cloud-Ressourcenverbindung.

Ein Dataset in BigQuery ist ein Container für alle Tabellen und Objekte Ihrer Anwendung.

So erstellen Sie ein Dataset:

  1. Rufen Sie in der Google Cloud Console die BigQuery-Seite auf.
  2. Wählen Sie im Bereich Explorer das Projekt aus, in dem Sie das Dataset erstellen möchten.
  3. Maximieren Sie die Option Aktionen (das Symbol mit den drei vertikalen Punkten) und klicken Sie auf Dataset erstellen.

Bild des Menüs „Aktionen“ und der Option „Dataset erstellen“

  1. Geben Sie im Feld Dataset-ID den Wert mdm_gemini ein.
  2. Legen Sie den Standorttyp auf Multi-region fest und übernehmen Sie den Standardwert US(multiple regions in United States..
  3. Klicken Sie auf Dataset erstellen.
  4. Prüfen Sie, ob das Dataset erstellt wurde und im Bereich Explorer unter Ihrer Projekt-ID aufgeführt ist.

Für die Interaktion mit Ihrer Cloud Functions-Funktion ist eine BigQuery-Verbindung erforderlich. Zum Erstellen einer Remote-Funktion müssen Sie eine BigQuery-Verbindung herstellen. In diesem Codelab verwenden wir die BigLake-Verbindung, um über die Cloud Functions-Funktion auf das Modell in BigQuery zuzugreifen. BigLake-Verbindungen dienen dazu, die externe Datenquelle zu verbinden. Sie stellen gleichzeitig eine detaillierte BigQuery-Zugriffssteuerung und Sicherheit bereit, in unserem Fall die Vertex AI Gemini Pro API.

So erstellen Sie die BigLake-Verbindung:

  1. Klicken Sie auf der BigQuery-Seite im Bereich Explorer auf Hinzufügen.

BigQuery-Konsole mit hervorgehobenem Button „HINZUFÜGEN“ zum Hinzufügen einer externen Verbindung

  1. Klicken Sie auf Verbindungen zu externen Datenquellen.
  2. Wählen Sie in der Liste „Verbindungstyp“ die Option Vertex AI-Remote-Modelle, Remote-Funktionen und BigLake (Cloud-Ressource) aus.
  3. Geben Sie im Feld Verbindungs-ID den Namen der Verbindung als gemini-bq-conn ein.
  4. Legen Sie den Standorttyp auf Multi-region fest und übernehmen Sie den Standardwert US(multiple regions in United States..
  5. Klicken Sie auf Verbindung erstellen.
  6. Klicken Sie auf Zur Verbindung und kopieren Sie dann die Dienstkonto-ID im Bereich Verbindungsinformationen.

Screenshot der Verbindungsinformationen

  1. Rufen Sie die Seite IAM & Verwaltung auf und klicken Sie auf Zugriff erlauben.
  2. Fügen Sie die Dienstkonto-ID in das Feld Neue Hauptkonten ein.
  3. Wählen Sie die Rolle Vertex AI user aus der Rollenliste aus und klicken Sie auf Speichern.

Zugriff auf Dienstkonto gewähren – Screenshot

Sie haben das Dataset und die BigQuery-Verbindung erfolgreich erstellt.

6. Gemini-Funktionsaufrufe bereitstellen (Java-Cloud Functions-Funktion)

So stellen Sie die Java Cloud Functions-Funktion bereit, die Gemini-Funktionsaufrufe enthält:

  1. Klonen Sie das GitHub-Repository über das Cloud Shell-Terminal mit dem folgenden Befehl:
git clone https://github.com/AbiramiSukumaran/GeminiFunctionCalling
  1. Ersetzen Sie die Platzhalter YOUR_API_KEY und YOUR_PROJECT_ID durch Ihre Werte.

Im Blogbeitrag erfahren Sie, dass bei der Implementierung von Funktionsaufrufen die Reverse Geocoding API verwendet wird. Hier finden Sie eine Anleitung zum Erstellen eines eigenen API_KEY.

  1. Wechseln Sie im Cloud Shell-Terminal zum neu geklonten Projektverzeichnis GeminiFunctionCalling und führen Sie die folgende Anweisung aus, um die Cloud Functions-Funktion zu erstellen und bereitzustellen:
gcloud functions deploy gemini-fn-calling --gen2 --region=us-central1 --runtime=java11 --source=. --entry-point=cloudcode.helloworld.HelloWorld --trigger-http

Antworten Sie mit „y“, wenn Sie gefragt werden, ob Sie nicht authentifizierte Aufrufe zulassen möchten. Idealerweise richten Sie die Authentifizierung für Ihre Unternehmensanwendungen gemäß Empfehlung ein. Da es sich jedoch um eine Demo-App handelt, fahren wir ohne Authentifizierung fort.

Die Ausgabe ist eine REST-URL im folgenden Format:

https://us-central1-YOUR_PROJECT_ID.cloudfunctions.net/gemini-fn-calling

  1. Testen Sie diese Cloud-Funktion, indem Sie den folgenden Befehl im Terminal ausführen:
gcloud functions call gemini-fn-calling --region=us-central1 --gen2 --data '{"calls":[["40.714224,-73.961452"]]}'

Antwort auf einen Prompt für eine Zufallsstichprobe:

 '{"replies":["{ \"DOOR_NUMBER\": \"277\", \"STREET_ADDRESS\": \"Bedford Ave\", \"AREA\":
 null, \"CITY\": \"Brooklyn\", \"TOWN\": null, \"COUNTY\": \"Kings County\", \"STATE\":
 \"NY\", \"COUNTRY\": \"USA\", \"ZIPCODE\": \"11211\", \"LANDMARK\": null}}```"]}'

Die Anfrage- und Antwortparameter dieser Cloud Functions-Funktion sind so implementiert, dass sie mit dem Aufruf von Remote-Funktionen in BigQuery kompatibel sind. Sie kann direkt aus BigQuery-Daten verwendet werden. Wenn Ihre Dateneingabe (Breiten- und Längengraddaten) in BigQuery gespeichert ist, können Sie die Remote-Funktion für die Daten aufrufen und die Funktionsantwort direkt in BigQuery speichern oder verarbeiten.

  1. Führen Sie die folgende DDL in BigQuery aus, um eine Remote-Funktion zu erstellen, die diese bereitgestellte Cloud-Funktion aufruft:
CREATE OR REPLACE FUNCTION
 `mdm_gemini.MDM_GEMINI` (latlng STRING) RETURNS STRING
 REMOTE WITH CONNECTION `us.gemini-bq-conn`
 OPTIONS (
   endpoint = 'https://us-central1-YOUR_PROJECT_ID.cloudfunctions.net/gemini-fn-calling', max_batching_rows = 1
 );

Testabfrage für die Verwendung der neuen Remote-Funktion:

SELECT mdm_gemini.MDM_GEMINI(latlong) from mdm_gemini.CITIBIKE_STATIONS limit 1;

Wenn die Testabfrage, die die neue Remote-Funktion verwendet, die in BigQuery erstellt wurde, aufgrund eines Cloud Functions-Berechtigungsproblems fehlschlägt, rufen Sie Cloud Functions in der Google Cloud Console auf und suchen Sie nach der bereitgestellten Cloud Functions-Funktion mit dem Namen gemini-fn-calling. Rufen Sie den Tab „Berechtigungen“ auf, fügen Sie „allUsers“ als Hauptkonto hinzu und weisen Sie die Rolle „Cloud Functions-Aufrufer“ zu, damit alle Nutzer auf die Cloud Functions zugreifen können (nur weil es sich um eine Demo-App handelt).

7. Problemumgehung ausprobieren

Wenn Sie den erforderlichen API_KEY für den Ansatz zum Aufrufen der Funktion „Reverse Geocoding“ nicht haben oder die Cloud-Funktion aus irgendeinem Grund nicht bereitgestellt wurde, können Sie alternativ Folgendes tun:

  1. Laden Sie die Datei CITIBIKE_STATIONS.csv aus dem Repository in Ihren Cloud Shell-Projektordner herunter und wechseln Sie in diesen Ordner.
  2. Exportieren Sie die Daten aus der CSV-Datei in Ihr neues BigQuery-Dataset mdm_gemini. Verwenden Sie dazu den folgenden Befehl im Cloud Shell-Terminal:
bq load --source_format=CSV --skip_leading_rows=1 mdm_gemini.CITIBIKE_STATIONS ./CITIBIKE_STATIONS.csv \ name:string,latlng:string,capacity:numeric,num_bikes_available:numeric,num_docks_available:numeric,last_reported:timestamp,full_address_string:string

8. Tabelle erstellen und Adressdaten anreichern

Schritt 1: Tabelle erstellen

Wichtig:Wenn Sie den Workaround verwendet haben, können Sie diesen Schritt überspringen, da Sie die Tabelle bereits erstellt haben müssen.

Wenn Sie den Workaround noch nicht verwendet haben, führen Sie die folgende DDL im BigQuery-SQL-Editor aus:

CREATE TABLE mdm_gemini.CITIBIKE_STATIONS as (
select  name, latitude || ',' || longitude as latlong, capacity, num_bikes_available, num_docks_available,last_reported,
'' as full_address_string
from bigquery-public-data.new_york_citibike.citibike_stations) ;

Jetzt reichern wir die Adressdaten an, indem wir die Remote-Funktion für die in der Tabelle verfügbaren Breiten- und Längengradkoordinaten aufrufen. Legen Sie die folgenden Bedingungen für die Daten fest:

  • Im Jahr 2024 gemeldet
  • Anzahl der verfügbaren Fahrräder > 0
  • Kapazität > 100

Führen Sie die folgende Abfrage aus:

update `mdm_gemini.CITIBIKE_STATIONS`
set full_address_string = `mdm_gemini.MDM_GEMINI`(latlong)
where EXTRACT(YEAR FROM last_reported) = 2024 and num_bikes_available > 0 and capacity > 100;

Schritt 2: Zweite Quelle für die Standortdaten der Fahrradstation erstellen

Überspringen Sie diesen Schritt nicht, auch wenn Sie die Tabelle mit der Problemumgehung erstellt haben.

In diesem Schritt erstellen Sie eine zweite Quelle für die Standortdaten der Fahrradstationen für dieses Codelab. Damit soll gezeigt werden, dass mit MDM Daten aus mehreren Quellen zusammengeführt und die „Golden Truth“ ermittelt wird.

Führen Sie die folgenden DDLs im BigQuery-SQL-Editor aus, um die zweite Quelle für Standortdaten mit zwei Datensätzen zu erstellen. Nennen wir diese Tabelle mdm_gemini.CITIBIKE_STATIONS_SOURCE2 und fügen wir zwei Datensätze ein.

CREATE TABLE mdm_gemini.CITIBIKE_STATIONS_SOURCE2 (name STRING(55), address STRING(1000), embeddings_src ARRAY<FLOAT64>);

insert into mdm_gemini.CITIBIKE_STATIONS_SOURCE2 VALUES ('Location broadway and 29','{ "DOOR_NUMBER": "1593", "STREET_ADDRESS": "Broadway", "AREA": null, "CITY": "New York", "TOWN": null, "COUNTY": "New York County", "STATE": "NY", "COUNTRY": "USA", "ZIPCODE": "10019", "LANDMARK": null}', null);

insert into mdm_gemini.CITIBIKE_STATIONS_SOURCE2 VALUES ('Allen St & Hester','{ "DOOR_NUMBER": "36", "STREET_ADDRESS": "Allen St", "AREA": null, "CITY": "New York", "TOWN": null, "COUNTY": "New York County", "STATE": "NY", "COUNTRY": "USA", "ZIPCODE": "10002", "LANDMARK": null}', null);

9. Einbettungen für Adressdaten generieren

Einbettungen sind hochdimensionale numerische Vektoren, die eine bestimmte Entität darstellen, z. B. einen Text oder eine Audiodatei. Modelle für maschinelles Lernen (ML) verwenden Einbettungen, um semantische Informationen zu solchen Einheiten zu codieren und so die Analyse und den Vergleich zu erleichtern. Eine gängige Operation in Clustering-, Klassifizierungs- und Empfehlungsmodellen ist beispielsweise das Messen der Distanz zwischen Vektoren in einem Einbettungsbereich, um Elemente zu finden, die semantisch am ähnlichsten sind. Mit der Vertex AI Texteinbettungs-API können Sie mit Generative AI in Vertex AI eine Texteinbettung erstellen. Texteinbettungen sind numerische Darstellungen von Text, die Beziehungen zwischen Wörtern und Formulierungen erfassen. Weitere Informationen zu Vertex AI Text Embeddings

  1. Führen Sie die folgende DDL aus, um ein Remote-Modell für die Vertex AI API für Texteinbettungen zu erstellen:
CREATE OR REPLACE MODEL `mdm_gemini.CITIBIKE_STATIONS_ADDRESS_EMB`
REMOTE WITH CONNECTION `us.gemini-bq-conn`
OPTIONS (ENDPOINT = 'textembedding-gecko@latest');
  1. Nachdem das Remote-Einbettungsmodell bereit ist, generieren wir Einbettungen für die erste Quelle und speichern sie mit der folgenden Abfrage in einer Tabelle:
CREATE TABLE `mdm_gemini.CITIBIKE_STATIONS_SOURCE1` AS (
SELECT *
FROM ML.GENERATE_EMBEDDING(
 MODEL `mdm_gemini.CITIBIKE_STATIONS_ADDRESS_EMB`,
 ( select name, full_address_string as content from `mdm_gemini.CITIBIKE_STATIONS`
 where full_address_string is not null )
  )
);

Anstatt eine neue Tabelle zu erstellen, können Sie das Ergebnis-Feld für die Einbettungen auch in derselben Tabelle mdm_gemini.CITIBIKE_STATIONS speichern, die Sie zuvor erstellt haben.

  1. Führen Sie die folgende Abfrage aus,um Einbettungen für Adressdaten in der Tabelle CITIBIKE_STATIONS_SOURCE2 zu generieren:
update `mdm_gemini.CITIBIKE_STATIONS_SOURCE2` a set embeddings_src =
(
SELECT  ml_generate_embedding_result
FROM ML.GENERATE_EMBEDDING(
 MODEL `mdm_gemini.CITIBIKE_STATIONS_ADDRESS_EMB`,
 ( select name, address as content from `mdm_gemini.CITIBIKE_STATIONS_SOURCE2` ))
where name = a.name) where name is not null;

Dadurch sollten Einbettungen für die zweite Quelle erstellt werden. Das Einbettungsfeld wurde in derselben Tabelle CITIBIKE_STATIONS_SOURCE2 erstellt.

  1. Führen Sie die folgende Abfrage aus, um die für die Quelldatentabellen 1 und 2 generierten Einbettungen zu visualisieren:
select name,address,embeddings_src from `mdm_gemini.CITIBIKE_STATIONS_SOURCE2`;
select name,content,ml_generate_embedding_result from `mdm_gemini.CITIBIKE_STATIONS_SOURCE1`;

Führen wir nun eine Vektorsuche durch, um Duplikate zu identifizieren.

10. Vektorsuche ausführen, um doppelte Adressen zu kennzeichnen

In diesem Schritt suchen Sie in der Spalte ml_generate_embedding_result der Tabelle mdm_gemini.CITIBIKE_STATIONS_SOURCE1 nach den beiden besten Einbettungen, die mit jeder Datenzeile in der Spalte embeddings_src der Tabelle mdm_gemini.CITIBIKE_STATIONS_SOURCE2 übereinstimmen.

Führen Sie dazu die folgende Abfrage aus:

select query.name name1,base.name name2,
/* (select address from mdm_gemini.CITIBIKE_STATIONS_SOURCE2 where name = query.name) content1, base.content content2, */
distance
from VECTOR_SEARCH(
 TABLE mdm_gemini.CITIBIKE_STATIONS_SOURCE1,
 'ml_generate_embedding_result',
 (SELECT * FROM mdm_gemini.CITIBIKE_STATIONS_SOURCE2),
 'embeddings_src',
 top_k => 2
) where query.name <> base.name
order by distance desc;

Tabelle, die abgefragt wird : mdm_gemini.CITIBIKE_STATIONS_SOURCE1 für das Feld ml_generate_embedding_result

Tabelle, die als Basis verwendet wird : mdm_gemini.CITIBIKE_STATIONS_SOURCE2 für das Feld embeddings_src

top_k: gibt die Anzahl der zurückzugebenden nächsten Nachbarn an. Der Standardwert ist 10. Ein negativer Wert wird als unendlich behandelt. Das bedeutet, dass alle Werte als Nachbarn gezählt und zurückgegeben werden.

distance_type::Gibt den Messwerttyp an, der zum Berechnen der Entfernung zwischen zwei Vektoren verwendet werden soll. Die unterstützten Distanztypen sind euklidisch und Kosinus. Der Standardwert ist Euclidean.

Das Ergebnis der Abfrage sieht so aus:

Ergebnismenge

Wie Sie sehen, werden hier die beiden nächsten Nachbarn (also die ähnlichsten Duplikate) für die beiden Zeilen in CITIBIKE_STATIONS_SOURCE2 aus CITIBIKE_STATIONS_SOURCE1 aufgeführt. Da distance_type nicht angegeben ist, wird davon ausgegangen, dass es sich um Euklidisch handelt. Der Abstand wird als die Abstände in den TEXT-Werten der Adressen zwischen den beiden Quellen gelesen. Der niedrigste Wert entspricht den ähnlichsten Adresstexten.

Legen wir distance_type mit der folgenden Anfrage auf Cosine fest:

select query.name name1,base.name name2,
/* (select address from mdm_gemini.CITIBIKE_STATIONS_SOURCE2 where name = query.name) content1, base.content content2, */
distance
from VECTOR_SEARCH(
 TABLE mdm_gemini.CITIBIKE_STATIONS_SOURCE1,
 'ml_generate_embedding_result',
 (SELECT * FROM mdm_gemini.CITIBIKE_STATIONS_SOURCE2),
 'embeddings_src',
 top_k => 2,distance_type => 'COSINE'
) where query.name <> base.name
order by distance desc;

Das Ergebnis der Abfrage sieht so aus:

Ergebnismenge 2

Beide Abfragen (beider Distanztypen) werden nach absteigender Entfernung sortiert. Das bedeutet, dass die Ergebnisse in der Reihenfolge abnehmender Entfernung aufgeführt werden sollen. Bei der zweiten Anfrage ist die Reihenfolge der Entfernungen jedoch umgekehrt. Haben Sie eine Idee, warum?

Ja!! Das ist richtig! Bei der Kosinus-Ähnlichkeit bedeutet eine größere Zahl eine größere Ähnlichkeit und eine kleinere Distanz. Bei der euklidischen Distanz bedeutet eine größere Zahl einen größeren Abstand zwischen den Werten.

Weitere Informationen zu MDM und Tipps zum Verständnis des Unterschieds und der Anwendungen von euklidischer und Kosinus-Distanz finden Sie in diesem Blog.

11. Bereinigen

So vermeiden Sie, dass Ihrem Google Cloud-Konto die in diesem Beitrag verwendeten Ressourcen in Rechnung gestellt werden:

  1. Wechseln Sie in der Google Cloud Console zur Seite Ressourcen verwalten.
  2. Wählen Sie in der Projektliste das Projekt aus, das Sie löschen möchten, und klicken Sie auf Löschen.
  3. Geben Sie im Dialogfeld die Projekt-ID ein und klicken Sie auf Beenden, um das Projekt zu löschen.
  4. Wenn Sie Ihr Projekt behalten möchten, überspringen Sie die oben genannten Schritte und löschen Sie die Cloud-Funktion. Rufen Sie dazu Cloud Functions auf, wählen Sie in der Liste der Funktionen die Funktion aus, die Sie löschen möchten, und klicken Sie auf Löschen.

12. Glückwunsch

Glückwunsch! Sie haben gezeigt, wie sich mit Gemini 1.0 Pro und Funktionsaufrufen einige MDM-Aktivitäten in vereinfachte, aber leistungsstarke, deterministische und zuverlässige generative KI-Funktionen umwandeln lassen. Jetzt, da Sie das wissen, können Sie andere Möglichkeiten zur Implementierung desselben Anwendungsfalls oder anderer MDM-Funktionen finden. Gibt es Datasets, die Sie validieren könnten, Informationslücken, die Sie schließen könnten, oder Aufgaben, die mit strukturierten Aufrufen automatisiert werden könnten, die in Ihre generativen KI-Antworten eingebettet sind? Weitere Informationen finden Sie in der Dokumentation zu Vertex AI, BigQuery-Remote-Funktionen, Cloud Functions, Embeddings und Vektorsuche. Hier finden Sie das GitHub-Repository für dieses Projekt. Lassen Sie uns wissen, was Sie mit diesem Wissen entwickeln.