1. Einführung
In diesem Codelab erstellen Sie mit Vertex AI Search eine universelle No-Code-Helpdesk-App für Mitarbeiter.
Stellen Sie sich vor, Sie arbeiten bei Cymbal, einem globalen Einzelhandelsunternehmen. Mitarbeiter haben oft Fragen wie „Was sind die Richtlinien für die Buchung von Geschäftsreisen?“ oder „Wie viele Sneaker haben wir auf Lager?“.
Normalerweise müssen Sie sich in völlig unterschiedlichen Systemen anmelden, um diese Antworten zu finden. Neben der Arbeit mit verschiedenen Systemen müssen Sie auch eine große Anzahl unstrukturierter HR-Daten lesen oder komplexe SQL-Prompts für strukturierte Finanzdaten ausführen, um Antworten auf Ihre Fragen zu erhalten.
In diesem Codelab erstellen Sie eine einzelne, einheitliche App, die mit diesen Datasets verbunden ist. So können Mitarbeiter mithilfe der Retrieval-Augmented Generation-Funktionen (RAG) von Vertex AI konversationelle, fundierte Antworten auf ihre Fragen erhalten.
Aufgaben
In diesem Codelab führen Sie die folgenden Schritte aus:
- Datenquellen einrichten. Erstellen Sie einen Cloud Storage-Bucket für unstrukturierte HR-Dokumente und ein BigQuery-Dataset für strukturierte Finanzdaten.
- Datenspeicher konfigurieren. Erstellen Sie Vertex AI Search-Datenspeicher, die mit Ihren Cloud Storage- und BigQuery-Datenquellen verbunden sind.
- App verbinden : Erstellen Sie eine Vertex AI Search-App und verknüpfen Sie beide Datenspeicher damit.
- App testen : Interagieren Sie mit der einheitlichen Suchoberfläche, um fundierte Antworten zu erhalten, die Informationen aus beiden Datenspeichern zusammenführen.
- Nächste Schritte. Optionen zum Optimieren des generativen KI-Modells und zum Bereitstellen Ihrer Such-App prüfen.

Voraussetzungen
- Ein Webbrowser wie Chrome.
- Google Cloud-Projekt mit aktivierter Abrechnungsfunktion.
- Git ist auf Ihrem lokalen Computer installiert.
Dieses Codelab richtet sich an Entwickler aller Erfahrungsstufen.
2. Hinweis
Erstellen Sie ein Google Cloud-Projekt und aktivieren Sie die erforderlichen APIs.
- Wählen Sie in der Google Cloud Console auf der Seite der Projektauswahl ein Google Cloud-Projekt aus oder erstellen Sie eines.
- Die Abrechnung für das Cloud-Projekt muss aktiviert sein. So prüfen Sie, ob die Abrechnung für ein Projekt aktiviert ist.
Erforderliche IAM-Rollen
In diesem Codelab wird davon ausgegangen, dass Sie die Rolle Projekteigentümer für Ihr Google Cloud-Projekt haben.
APIs aktivieren
- Klicken Sie in der Google Cloud Console auf Cloud Shell aktivieren: Wenn Sie Cloud Shell noch nie verwendet haben, wird ein Bereich angezeigt, in dem Sie auswählen können, ob Sie Cloud Shell in einer vertrauenswürdigen Umgebung mit oder ohne Boost starten möchten. Wenn Sie aufgefordert werden, Cloud Shell zu autorisieren, klicken Sie auf Autorisieren.
- Aktivieren Sie in Cloud Shell alle erforderlichen APIs:
gcloud services enable \ discoveryengine.googleapis.com \ aiplatform.googleapis.com \ bigquery.googleapis.com \ storage.googleapis.com
3. GitHub-Repository klonen
Um zu zeigen, wie die Suche in der Cymbal-Helpdesk-App für Mitarbeiter funktioniert, benötigen Sie einige Beispieldateien. In diesem Abschnitt klonen Sie ein GitHub-Repository auf Ihren lokalen Computer, um diese Dateien zu erhalten. Sie laden diese Dateien in späteren Schritten über die Cloud Console-Oberfläche in Google Cloud hoch.
- Klonen Sie in einem Terminal auf Ihrem lokalen Computer das Repository
next-26-sessions:git clone https://github.com/GoogleCloudPlatform/next-26-sessions.git - Wechseln Sie zum Verzeichnis des heruntergeladenen Repositorys:
cd next-26-sessions/BRK1-063-the-knowledge-source/cymbal-employee-helpdesk - Sehen Sie sich die heruntergeladenen Dateien in diesem Verzeichnis an. Es gibt zwei Ordner:
HRundFinance.- HR. Dieser Ordner enthält eine Reihe unstrukturierter Dateien wie
.doc-,.txt- und.html-Dateien. Sie laden die HR-Dateien in einen Cloud Storage-Bucket hoch. - Finance. Dieser Ordner enthält zwei
.jsonl-Dateien. Sie laden diese Dateien in ein BigQuery-Dataset hoch.
- HR. Dieser Ordner enthält eine Reihe unstrukturierter Dateien wie
4. Cloud Storage-Bucket für unstrukturierte Dateien erstellen
In diesem Abschnitt erstellen Sie einen Cloud Storage-Bucket und laden die Dokumente im Ordner HR hoch, die Sie im Abschnitt GitHub-Repository klonen heruntergeladen haben. Unstrukturierte Daten wie die HR-Dokumente in diesem Beispiel folgen keinem vordefinierten Format und können Textdateien, Dokumente oder Multimedia-Inhalte enthalten.
- Rufen Sie in der Cloud Console die Seite Buckets auf.
- Klicken Sie auf Erstellen.
- Geben Sie auf der Seite Bucket erstellen den Namen eines Buckets ein. Der Name muss global eindeutig sein. Beispiel:
cymbal-app-hr-12. - Behalten Sie die Standardoptionen bei.
- Klicken Sie auf Erstellen.Der Bucket wird erstellt und die Seite Bucket-Details wird angezeigt. Wenn die Seite Bucket-Details nicht angezeigt wird, klicken Sie auf den gerade erstellten Bucket.
- Klicken Sie auf der Seite Bucket-Details auf Hochladen > Ordner hochladen und wählen Sie dann den Ordner
HRaus, den Sie im Abschnitt GitHub-Repository klonen heruntergeladen haben. - Bestätigen Sie den Upload.

- Klicken Sie auf der Seite Bucket-Details auf den Ordner
HR, um die Liste der Dateien aufzurufen.
5. BigQuery-Dataset für strukturierte Dateien erstellen
In diesem Abschnitt erstellen Sie ein BigQuery-Dataset und laden die Dokumente im Ordner Finance, die Sie im Abschnitt GitHub-Repository klonen heruntergeladen haben, in eine neue Tabelle. Strukturierte Daten wie die Finanzdokumente in diesem Beispiel folgen einem vordefinierten Format, z. B. Datensätzen in einer Datenbank.
- Rufen Sie in der Cloud Console die BigQuery auf.
- Klicken Sie im Bereich Explorer auf den Namen Ihres Projekts und dann auf das Dreipunkt-Menü Aktionen ansehen > Dataset erstellen.

- Geben Sie im Bereich Dataset erstellen
cymbal_financeals Dataset-ID ein. - Wählen Sie für Speicherort der Daten die Option
US (multiple regions in United States)aus. - Behalten Sie die Standardoptionen bei und klicken Sie auf Dataset erstellen.
- Maximieren Sie im Bereich Explorer Ihr Projekt und klicken Sie auf das Dataset
cymbal_finance. - Klicken Sie im Bereich mit den Dataset-Details auf Tabelle erstellen.
- Gehen Sie auf der Seite Tabelle erstellen im Abschnitt Quelle so vor:
- Wählen Sie unter Tabelle erstellen aus die Option Hochladen aus.
- Klicken Sie unter Datei auswählen auf Durchsuchen, wechseln Sie zum heruntergeladenen Ordner
Financeund wählen Siecymbal_employee_finance.jsonlaus. - Wählen Sie für Dateiformat den Eintrag JSONL (durch Zeilenumbruch getrenntes JSON) aus.
- Geben Sie im Abschnitt Ziel
employee_financeals Tabelle ein. - Wählen Sie im Abschnitt Schema das Kästchen Automatisch erkennen aus.
- Behalten Sie die anderen Standardeinstellungen bei und klicken Sie auf Tabelle erstellen.
- Wiederholen Sie die Schritte 7 bis 11, um Daten in eine neue Tabelle zu laden. Wählen Sie in Schritt 8b
product_inventory.jsonlaus und geben Sie in Schritt 9product_inventoryals Tabelle ein.Wenn die Tabellen nicht im Bereich mit den Dataset-Details angezeigt werden, klicken Sie auf Aktualisieren. - Wenn Sie das Dataset und die beiden Tabellen erfolgreich erstellt haben, sollte es so aussehen wie in der folgenden Abbildung:

6. Vertex AI Search-Anwendung erstellen
- Rufen Sie in der Cloud Console die Seite Vertex AI Search auf.
- Klicken Sie auf der Kachel Benutzerdefinierte Suche (allgemein) auf Erstellen.
- Achten Sie auf der Seite Such-App-Konfiguration darauf, dass die Optionen Funktionen der Enterprise-Version und Generative Antworten ausgewählt sind.
- Geben Sie der App den Namen
cymbal-employee-portal. - Geben Sie
Cymbal Corpals Name des Unternehmens ein. - Behalten Sie
globalals Standort Ihrer App bei. - Klicken Sie auf Weiter.
7. Datenspeicher erstellen und verbinden
Auf der Seite Datenspeicher erstellen Sie Datenspeicher, die Sie mit Ihrer App verbinden. Sie müssen drei Datenspeicher erstellen: einen für unstrukturierte HR-Daten und zwei für strukturierte Finanzdaten.
Datenspeicher für unstrukturierte Daten erstellen
- Klicken Sie auf der Seite Datenspeicher auf Datenspeicher erstellen.
- Wählen Sie unter Datenquelle auswählen die Option Cloud Storage aus.
- Gehen Sie im Bereich Daten aus Cloud Storage importieren zu Import unstrukturierter Daten (Dokumentsuche und RAG) und wählen Sie Dokumente aus.
- Behalten Sie die Option Häufigkeit der Synchronisierung als Einmal bei.
- Klicken Sie unter Ordner oder Datei für Import auswählen auf Ordner.
- Geben Sie im Feld
gs://...den Namen des Buckets ein, den Sie im Abschnitt Cloud Storage-Bucket für unstrukturierte Dateien erstellen erstellt haben. Wenn der Name des Buckets beispielsweisecymbal-app-hr-12ist, geben Siecymbal-app-hr-12/HRein.Durch die Aufnahme aus dem OrdnerHRwird sichergestellt, dass nur die HR-Dokumente in diesem Datenspeicher enthalten sind. - Klicken Sie auf Weiter.
- Geben Sie
cymbal-hrals Namen des Datenspeichers ein. - Klicken Sie auf Weiter.
- Behalten Sie die Option für die Allgemeine Preisgestaltung bei.
- Klicken Sie auf Erstellen.
Nachdem Sie auf Erstellen geklickt haben, kehren Sie zur Seite Datenspeicher zurück.
Datenspeicher für strukturierte Daten erstellen
Sie erstellen zwei Datenspeicher für strukturierte Daten aus BigQuery: einen für Finanzinformationen von Mitarbeitern und einen für den Produktbestand.
Datenspeicher für Finanzdaten von Mitarbeitern erstellen
- Klicken Sie auf der Seite Datenspeicher noch einmal auf Datenspeicher erstellen.
- Wählen Sie unter Datenquelle auswählen die Option BigQuery aus.
- Wählen Sie unter Import strukturierter Daten die Option BigQuery-Tabelle mit eigenem Schema aus.
- Behalten Sie die Option Häufigkeit der Synchronisierung als Einmal bei.
- Klicken Sie unter Tabelle für Import auswählen auf Durchsuchen. Wählen Sie im daraufhin geöffneten Dialogfeld Pfad auswählen die Tabelle
employee_financeaus dem Datasetcymbal_financein Ihrem Projekt aus. Möglicherweise werden Tabellen mit ähnlichen Namen aus anderen Projekten angezeigt. Wählen Sie daher die Tabelle aus Ihrem Projekt aus. - Klicken Sie auf Weiter.
- Prüfen Sie die Seite Schema prüfen und Schlüsselattribute zuweisen.
- Klicken Sie auf Weiter.
- Geben Sie
cymbal-financeals Namen des Datenspeichers ein. - Klicken Sie auf Weiter.
- Behalten Sie die Option für die Allgemeine Preisgestaltung bei.
- Klicken Sie auf Erstellen.
Nachdem Sie auf Erstellen geklickt haben, kehren Sie zur Seite Datenspeicher zurück.
Datenspeicher für Produktbestandsdaten erstellen
- Klicken Sie auf der Seite Datenspeicher noch einmal auf Datenspeicher erstellen.
- Wählen Sie unter Datenquelle auswählen die Option BigQuery aus.
- Wählen Sie unter Import strukturierter Daten die Option BigQuery-Tabelle mit eigenem Schema aus.
- Behalten Sie die Option Häufigkeit der Synchronisierung als Einmal bei.
- Klicken Sie unter Tabelle für Import auswählen auf Durchsuchen. Wählen Sie im daraufhin geöffneten Dialogfeld Pfad auswählen die Tabelle
product_inventoryaus dem Datasetcymbal_financein Ihrem Projekt aus. - Klicken Sie auf Weiter.
- Prüfen Sie die Seite Schema prüfen und Schlüsselattribute zuweisen.
- Klicken Sie auf Weiter.
- Geben Sie
cymbal-inventoryals Namen des Datenspeichers ein. - Klicken Sie auf Weiter.
- Behalten Sie die Option für die Allgemeine Preisgestaltung bei.
- Klicken Sie auf Erstellen.
Nachdem Sie auf Erstellen geklickt haben, kehren Sie zur Seite Datenspeicher zurück.
8. Datenspeicher mit Ihrer App verbinden
In der Liste auf der Seite Datenspeicher sollten jetzt drei Datenspeicher angezeigt werden: cymbal-hr (unstrukturiert), cymbal-finance (strukturiert) und cymbal-inventory (strukturiert). So verbinden Sie diese Datenspeicher mit Ihrer App:
- Wählen Sie auf der Seite Datenspeicher alle drei gerade erstellten Datenspeicher aus:
cymbal-hr,cymbal-financeundcymbal-inventory. Achten Sie darauf, dass Sie alle drei Datenspeicher ausgewählt haben, bevor Sie fortfahren. - Klicken Sie auf Weiter.
- Behalten Sie die Option für die Allgemeine Preisgestaltung bei.
- Klicken Sie auf Erstellen.
9. Cymbal-Mitarbeiterportal-App testen
- Klicken Sie in der App
cymbal-employee-portalauf Vorschau. - Geben Sie im Feld Hier suchen die folgende Frage ein:
What are the stipends that I get as an employee of Cymbal located in London? - Geben Sie eine Frage zum Produktbestand ein:
How many units of sneakers do we have in stock? - Geben Sie eine weitere Frage ein:
What is the stipend for an executive in Cymbal?
Die Such-App hat Informationen aus mehreren Quellen abgerufen, um die Antwort zu formulieren. Um diese Fragen zu beantworten, hat die App sowohl die strukturierten Finanzdaten in BigQuery als auch die unstrukturierten HR-Dokumente in Cloud Storage durchsucht.
Dies zeigt, wie leistungsstark Vertex AI Search ist, um Antworten aus verschiedenen Datenformaten und unterschiedlichen Datenspeichern in einer einzigen, zusammenhängenden Erfahrung zu synthetisieren.
Sie können das KI-Modell auch so optimieren, dass es noch genauere und domainspezifischere Antworten liefert. Weitere Informationen zum Anpassen der generativen Erfahrung finden Sie in der Dokumentation Antworten und Follow-ups erhalten.
10. Optionen zum Bereitstellen Ihrer App
Die Bereitstellung der Anwendung für Endnutzer geht über den Rahmen dieses Codelabs hinaus. Es ist jedoch hilfreich zu wissen, wie sich dies auf ein reales Szenario übertragen lässt. Sie haben mehrere Möglichkeiten, Ihre Vertex AI Search-App in die Arbeitsabläufe Ihres Unternehmens einzubinden:
- Vorgefertigtes Web-Widget. Sie können eine sofort einsatzbereite Such- oder Chat-Oberfläche direkt in das vorhandene Intranet oder die Webseiten Ihres Unternehmens einbetten. Verwenden Sie dazu ein
script-Tag in HTML. Dies ist der schnellste Weg, Ihre App für Nutzer bereitzustellen. - Benutzerdefinierte API-Integration. Wenn Sie die vollständige Kontrolle über die Nutzererfahrung haben möchten, können Sie die Vertex AI Search REST APIs oder Clientbibliotheken (z. B. Python, Node.js oder Java) verwenden, um ein benutzerdefiniertes Frontend von Grund auf neu zu erstellen.
11. Bereinigen
Um laufende Gebühren für Ihr Google Cloud-Konto zu vermeiden, löschen Sie die Ressourcen, die während dieses Codelabs erstellt wurden:
- Rufen Sie in der Cloud Console die Seite **Vertex AI Search** auf.
- Klicken Sie auf Vorhandene Anwendungen ansehen.
- Klicken Sie für die App
cymbal-employee-portalauf das Dreipunkt-Menü Mehr und dann auf Löschen. - Folgen Sie der Anleitung auf dem Bildschirm, um das Löschen zu bestätigen.
- Klicken Sie im linken Navigationsbereich der Console auf Datenspeicher, um die Datenspeicher zu löschen.
- Löschen Sie die Datenspeicher
cymbal-hr,cymbal-financeundcymbal-inventory:- Klicken Sie für den
cymbal-hrDatenspeicher auf das Dreipunkt-Menü Mehr und dann auf Löschen. - Folgen Sie der Anleitung auf dem Bildschirm, um das Löschen zu bestätigen.
- Klicken Sie für den
cymbal-financeDatenspeicher auf das Dreipunkt-Menü Mehr und dann auf Löschen. - Folgen Sie der Anleitung auf dem Bildschirm, um das Löschen zu bestätigen.
- Klicken Sie für den
cymbal-inventoryDatenspeicher auf das Dreipunkt-Menü Mehr und dann auf Löschen. - Folgen Sie der Anleitung auf dem Bildschirm, um das Löschen zu bestätigen.
- Klicken Sie für den
- Rufen Sie die Seite Buckets auf und löschen Sie den erstellten Bucket (z. B.
cymbal-app-hr-12). - Rufen Sie die BigQuery Seite auf und löschen Sie das
cymbal_financeDataset.
12. Glückwunsch
Mission abgeschlossen! Sie haben mit Vertex AI Search eine einheitliche Unternehmenssuche erstellt.
Indem Sie die Lücke zwischen Ihren unstrukturierten Unternehmensdaten in Cloud Storage und strukturierten Datensätzen aus BigQuery geschlossen haben, haben Sie ein leistungsstarkes Tool für komplexe Geschäftsanalysen erstellt – und das alles, ohne eine einzige Zeile Machine-Learning-Code zu schreiben.
Das haben Sie gelernt
- Aufnahme:So nehmen Sie unstrukturierte Dokumente aus Cloud Storage und strukturierte Daten aus BigQuery in Vertex AI Search auf.
- Abfragen mehrerer Datenspeicher. So fragen Sie eine Such-App mit mehreren Datenspeichern ab, um einheitliche Antworten aus strukturierten und unstrukturierten Daten zu synthetisieren.
- Optimierung und Anpassung. So optimieren Sie die generativen KI-Modelle, um genauere, domainspezifische Antworten zu erhalten.
- Bereitstellungsoptionen. Die verschiedenen Möglichkeiten, diese Analysefunktion mithilfe vorgefertigter Widgets oder benutzerdefinierter APIs in reale Anwendungen einzubinden.