Dialogflow CX lässt sich in mehrere Git-Anbieter (GitHub, GitLab, Bitbucket und andere) einbinden. Mit dieser Integration können Sie Ihren Agenten ganz einfach in JSON exportieren , um ihn an einen Git-Anbieter zu senden, und ihn von einem Git-Anbieter abrufen, um ihn wiederherzustellen. Das exportierte JSON-Format, das an einen Git-Anbieter gesendet wird, entspricht dem Inhalt der erweiterten ZIP-Datei des exportierten Agenten.
Mit dieser Funktion können Sie die Quellcodeverwaltung eines Git-Anbieters nutzen, z. B.:
- Überprüfungen von Agentenänderungen mit Tools zur Codeprüfung
- Untersuchen von Agentenunterschieden mit Tools zum Vergleichen von Dateien
- Zusammenführungen
Beschränkungen
Es gelten folgende Einschränkungen:
- [Nur alte Version der Integration] Bei GitHub APIs ist die Anzahl der Dateien begrenzt, die in einem einzelnen Commit aktualisiert werden können. Wenn die Anzahl der Dateien 500 übersteigt, können Sie möglicherweise keine Daten von Dialogflow CX an GitHub senden. In solchen Fällen können Sie den Agenten als ZIP-Datei exportieren und die Git CLI auf Ihrem Computer verwenden, um die Agentendateien an GitHub zu senden. Diese Einschränkung wird in einer späteren Version von Dialogflow CX behoben.
- Selbst gehostete private GitHub-Repositories werden nicht unterstützt, da Dialogflow CX nicht auf diese Repositories zugreifen kann.
- Das Git-Repository darf keine anderen Dateien als die vom Agentenexport exportierten Agentendateien enthalten. Alle anderen Dateien im Repository werden bei jedem Push entfernt.
Konfiguration
Um diese Funktion zu konfigurieren, müssen Sie ein Zugriffstoken von Ihrem Git-Anbieter abrufen, es in Secret Manager speichern und die Secret-Ressource für Dialogflow CX bereitstellen:
Zugriffstoken
So rufen Sie ein Zugriffstoken von Ihrem Git-Anbieter ab:
GitHub
Sie müssen ein persönliches GitHub-Token abrufen. Wenn Sie ein detailliertes persönliches Zugriffstoken verwenden, benötigen Sie die folgenden Berechtigungen:
- Repository Permissions > Contents: Lesen und Schreiben
- Repository Permissions > Metadata: Nur lesen (sollte nach Auswahl der Berechtigung „Contents“ automatisch ausgewählt werden)
GitLab
Sie müssen ein persönliches GitLab-Zugriffstoken abrufen.
Bitbucket
Sie müssen ein Bitbucket-Zugriffstoken abrufen.
Secret Manager
Nachdem Sie ein Zugriffstoken erhalten haben, müssen Sie ein Secret für Ihr Token erstellen:
Dialogflow CX-Konfiguration
So konfigurieren Sie diese Integration für Dialogflow CX:
- Gewähren Sie dem Dialogflow-Dienst-Agenten die Berechtigung für den Zugriff auf das Zugriffstoken-Secret in Secret Manager.
Weisen Sie dem Dienstkonto
gcp-sa-dialogflow.iam.gserviceaccount.comin Ihrem Agentenprojekt die RolleSecret Manager Secret Accessorzu. Weitere Informationen finden Sie unter Zugriff auf Secret Manager-Secrets gewähren. - Öffnen Sie die Konfiguration der Git-Integration:
- Conversational Agents-Konsole
- Öffnen Sie die Einstellungen, indem Sie rechts oben auf das Symbol „Einstellungen“ klicken.
- Scrollen Sie nach unten und klicken Sie auf Git-Integration hinzufügen.
- Dialogflow CX-Konsole
- Klicken Sie auf den Tab Verwalten.
- Klicken Sie im Bereich Testen und Bereitstellung auf Git.
- Klicken Sie auf Neu erstellen.
- Conversational Agents-Konsole
- Geben Sie die Konfigurationsdetails an:
- Geben Sie Folgendes ein:
- Anzeigename für die GitHub-Verbindung.
- Git-Repository-URL (z. B.:
https://github.com/<path-to-repo>.git). - Fügen Sie Git-Zweige hinzu, mit denen Ihr Agent interagieren soll. Sie können einen Zweig als Standardzweig festlegen, indem Sie auf das Sternsymbol daneben klicken.
- Zugriffstoken-Secret, d. h. die Secret-Version, die Sie im Format
projects/*/secrets/*/versions/*für eine bestimmte Version oderprojects/*/secrets/*/versions/latestfür die neueste Version erstellt haben.
- Klicken Sie auf Verbinden.
- Es kann eine Minute dauern, bis der Git-Dienst bereit ist. In der Konsole werden Benachrichtigungen angezeigt.
- Geben Sie Folgendes ein:
Push und Wiederherstellung
Nach der Konfiguration können Sie Ihren Agenten per Push an Git senden oder von Git abrufen.
Mit der Schaltfläche Push können Sie Ihren Agenten exportieren und einen Commit an den Git-Zweig senden, der im Drop-down-Menü „Git-Zweig“ ausgewählt ist. Dieser Commit besteht aus dem gesamten Agenten und nicht aus bestimmten Änderungen. Alle vorhandenen Dateien im Repository werden gelöscht.
Nutzer mit der Rolle Dialogflow-Leser können Daten per Push an Git-Repositories senden. Um unerwünschte Push-Vorgänge zu verhindern, konfigurieren Sie diese Agenten mit schreibgeschützten persönlichen Zugriffstokens.
Mit der Schaltfläche Wiederherstellen können Sie Ihre Agentendaten aus dem Git-Zweig abrufen, der im Drop-down-Menü „Git-Zweig“ ausgewählt ist, und Ihren Dialogflow CX-Agenten aus diesen Daten wiederherstellen. Dadurch wird Ihr Agent auf dieselbe Weise überschrieben wie bei jeder anderen Agentenwiederherstellung.
Anwendungsbeispiel
Das folgende Beispiel veranschaulicht, wie diese Funktion von mehreren Personen verwendet werden kann, um verschiedene Agentenänderungen für einen Produktionsagenten vorzuschlagen.
Angenommen, Ihr Agent verwendet die folgenden Git-Zweige:
- Prod: Zweig für Ihren Produktionsagenten
- Dev1: Zweig für die Agentenentwicklung
- Dev2: Ein weiterer Zweig für die Agentenentwicklung
Nutzer 1 möchte Agentenänderungen vorschlagen und führt die folgenden Schritte aus:
- Exportieren Sie den Produktionsagenten in einen neuen Agenten.
- Nehmen Sie die gewünschten Änderungen an dieser Agentenkopie vor.
- Testen Sie die Änderungen.
- Senden Sie den geänderten Agenten per Push an den Zweig Dev1.
- Erstellen Sie eine Zusammenführungsanfrage für den Zweig Prod.
Nutzer 2 möchte Agentenänderungen vorschlagen und führt die folgenden Schritte aus:
- Exportieren Sie den Produktionsagenten in einen neuen Agenten.
- Nehmen Sie die gewünschten Änderungen an dieser Agentenkopie vor.
- Testen Sie die Änderungen.
- Senden Sie den geänderten Agenten per Push an den Zweig Dev2.
- Erstellen Sie eine Zusammenführungsanfrage für den Zweig Prod.
Nutzer 3 prüft die Zusammenführungsanfragen beider Nutzer und führt die folgenden Schritte aus:
- Konflikte lösen.
- Genehmigte Änderungen werden übernommen.
- Der Git-Produktionszweig wird für den Dialogflow CX-Produktionsagenten wiederhergestellt.