Mit Datenspeicher-Tools können KI-generierte Agent-Antworten auf Grundlage von Websiteinhalten und hochgeladenen Daten erstellt werden. Ihr Agent kann während der Ausführung in Ihren Datenspeichern nach Antworten auf Fragen von Endnutzern suchen.
Datenspeicher-Tools: Console
In diesem Abschnitt wird beschrieben, wie Sie einem Agent ein Datenspeichertool hinzufügen und es in einem Fulfillment konfigurieren.
Tool für Datenspeicher erstellen
- Öffnen Sie die Conversational Agents Console und wählen Sie ein Google Cloud-Projekt aus.
- Wählen Sie im Drop-down-Menü einen Agent aus.
- Klicken Sie in der Menüleiste ganz links auf der Seite auf Tools.
- Wenn Sie ein neues Tool für Datenspeicher erstellen möchten, klicken Sie auf + Erstellen. Geben Sie einen eindeutigen Namen für das Tool ein und wählen Sie im Drop-down-Menü unter Typ die Option Datenspeicher aus. Optional können Sie im Feld Beschreibung eine Beschreibung des Tools eingeben.
- Conversational Agents Console: Klicken Sie unter Datenspeicher auf Datenspeicher hinzufügen, um dem Tool einen oder mehrere vorhandene Datenspeicher hinzuzufügen, oder auf Datenspeicher erstellen, um einen neuen hinzuzufügen. Wenn Sie einen neuen Datenspeicher erstellen, wird ein Menü mit Datenspeichertypen angezeigt. Die Optionen Website, Cloud Storage (FAQs) und Cloud Storage (unstrukturierte Daten) können in der Conversational Agents Console ausgefüllt werden. Wenn Sie einen anderen Typ auswählen, werden Sie automatisch zu AI Applications weitergeleitet, um den Datenspeicher zu erstellen: AI Applications-Konsole
- Dialogflow CX Console: Klicken Sie unter Datenspeicher auf Datenspeicher hinzufügen. Das Pop-up-Fenster enthält eine Liste Ihrer vorhandenen Datenspeicher, sofern vorhanden. Wählen Sie die Datenspeicher aus, die Sie dem Tool hinzufügen möchten. Wenn Sie einen neuen Datenspeicher in der AI Applications Console erstellen möchten, klicken Sie auf Neuen Datenspeicher erstellen. Sie werden automatisch zu AI Applications weitergeleitet: AI Applications-Konsole
- Wenn Sie mit der Konfiguration des neuen Datenspeichers fertig sind, klicken Sie auf Erstellen. Wenn Sie einen neuen Datenspeicher in der Conversational Agents-Konsole (Dialogflow CX) erstellt haben, sollte er jetzt in Ihrer Liste der Datenspeicher angezeigt werden. Wenn Sie einen Datenspeicher in AI Applications erstellt haben, kehren Sie zum Menü Create Tool (Tool erstellen) zurück, das Sie in der Conversational Agents-Konsole (Dialogflow CX) konfigurieren, und aktualisieren Sie die Seite. Der neue Datenspeicher sollte jetzt in der Liste der verfügbaren Datenspeicher angezeigt werden.
- Klicken Sie oben in der Konfiguration Tool erstellen auf Speichern, um das neue Datenspeicher-Tool zu erstellen.
- Weitere Informationen zu zusätzlichen Konfigurationsoptionen für Datenspeichertools finden Sie auf der Seite Datenspeichereinstellungen.
Datenspeicher-Tool einer Auftragsausführung hinzufügen
- Wählen Sie in der Menüleiste ganz links Flows aus.
- Wählen Sie einen Ablauf und eine Seite aus und klicken Sie dann auf den Route-Knoten der Seite, den Sie mit Ihrem Datenspeicher verwenden möchten.
- Scrollen Sie im Menü Route zu Fulfillment > Data Store Tool. Wählen Sie im Drop-down-Menü Ihr Tool für den Datenspeicher aus.
- Scrollen Sie im Menü Route zu Auftragsausführung > Agent-Antworten. Klicken Sie auf + Dialogantwort hinzufügen und dann auf Antwort des Datenspeichertools.
- In dem angezeigten Formular können Sie konfigurieren, wie viele Quelllinks und Zitationen in der Antwort angezeigt werden dürfen, und das Fallback-Verhalten festlegen, wenn die Antwort des Datenspeichers leer ist. Sie können im Feld Static fallback responses (Statische Fallback-Antworten) eine statische Fallback-Antwort eingeben. Optional können Sie das Kästchen Generative Fallback anklicken, um zu versuchen, mit KI eine Antwort zu generieren, bevor die statische Fallback-Antwort verwendet wird. Wenn Sie die Fallback-Antworten weiter anpassen möchten, klicken Sie links oben im Formularfenster Data store response (Antwort des Datenspeichers) auf das Schraubenschlüsselsymbol, um das Fenster Conditional response (Bedingte Antwort) aufzurufen.
- Klicken Sie oben im Menü Route auf Speichern.
- Rufen Sie den Simulator für Konversations-Agents (Dialogflow CX) auf, um die Ergebnisse des Agents zu testen.
Datenspeichertools: API
Standardmäßig ruft der Agent die dataStoreTool
in Ihrem Namen an.
Es gibt drei Arten von Datenspeichern:
PUBLIC_WEB
: Ein Datenspeicher, der öffentliche Webinhalte enthält.UNSTRUCTURED
: Ein Datenspeicher, der unstrukturierte private Daten enthält.STRUCTURED
: Ein Datenspeicher, der strukturierte Daten enthält (z. B. FAQs).
Im folgenden Beispiel wird gezeigt, wie Sie auf einen Datenspeicher verweisen. Weitere Informationen finden Sie in der Referenz zu dataStoreConnections
.
"dataStoreConnections": [
{
"dataStoreType": "PUBLIC_WEB",
"dataStore": "projects/PROJECT_NUMBER/locations/LOCATION_ID/collections/default_collection/dataStores/DATASTORE_ID"
},
{
"dataStoreType": "UNSTRUCTURED",
"dataStore": "projects/PROJECT_NUMBER/locations/LOCATION_ID/collections/default_collection/dataStores/DATASTORE_ID"
},
{
"dataStoreType": "STRUCTURED",
"dataStore": "projects/PROJECT_NUMBER/locations/LOCATION_ID/collections/default_collection/dataStores/DATASTORE_ID"
}
]
Antworten von Datenspeicher-Tools können auch Snippets zur Inhaltsquelle enthalten, die zum Generieren der Antwort verwendet wurde. Der Agent kann Anweisungen dazu geben, wie mit der Antwort aus den Datenspeichern vorgegangen werden soll oder wie reagiert werden soll, wenn keine Antwort vorhanden ist.
Sie können eine Antwort überschreiben, indem Sie einen FAQ-Eintrag für eine bestimmte Frage hinzufügen.
Optional können Sie Beispiele angeben, um das Verhalten des Agents zu verbessern. Das Beispiel sollte die folgenden Schemas haben. Weitere Informationen finden Sie in der Referenzdokumentation.
{
"toolUse": {
"tool": "projects/PROJECT_ID/locations/LOCATION_ID/agents/AGENT_ID/tools/TOOL_ID",
"action": "TOOL_DISPLAY_NAME",
"inputParameters": [
{
"name": "TOOL_DISPLAY_NAME input",
"value": {
"query": "QUERY"
}
}
],
"outputParameters": [
{
"name": "TOOL_DISPLAY_NAME output",
"value": {
"answer": "ANSWER",
"snippets": [
{
"title": "TITLE",
"text": "TEXT_FROM_DATASTORE",
"uri": "URI_OF_DATASTORE"
}
]
}
}
]
}
}
(Nur Playbooks-basierte Agents) Beispiele für das Tool „Datenspeicher“
Beim Erstellen von Beispielen für Datenspeichertools bietet der Tool-Eingabeparameter requestBody
drei optionale Eingaben zusammen mit dem erforderlichen String query
: einen String filter
, ein strukturiertes Objekt userMetadata
und einen String fallback
.
Mit dem Parameter filter
können Sie Suchanfragen für Ihre strukturierten oder unstrukturierten Daten mit Metadaten filtern. Dieser String muss der unterstützten Syntax für Filterausdrücke für Datenspeicher entsprechen. Anhand mehrerer detaillierter Beispiele wird dem Playbook-Modell erklärt, wie dieser Parameter ausgefüllt werden soll. Wenn ein Filterstring ungültig ist, wird dieser Filter bei der Suchanfrage ignoriert.
Das folgende Beispiel zeigt einen filter
-String, mit dem Suchergebnisse nach Standort eingegrenzt werden:
"filter": "country: ANY(\"Canada\")"
Weitere Informationen finden Sie auf der Seite mit Playbook-Beispielen
.
Best Practices für das Filtern:
Geben Sie die Felder an, die zum Filtern zur Verfügung stehen, und die gültigen Werte für jedes dieser Felder, damit das Playbook die Einschränkungen für das Erstellen gültiger Filter versteht. Ein Datenspeicher mit Menüinformationen könnte beispielsweise das Feld
meal
mit den gültigen Werten „Frühstück“, „Mittagessen“ und „Abendessen“ sowie das FeldservingSize
mit einer beliebigen Ganzzahl zwischen 0 und 5 enthalten. Ihre Anleitung könnte so aussehen:When using ${TOOL: menu-data-store-tool}, only use the following fields for filtering: "meal", "servingSize". Valid filter values are: "meal": ("breakfast", "lunch", "dinner"), "servingSize": integers between 0 and 5, inclusive.
Wenn das Playbook für externe Nutzer bestimmt ist, müssen Sie möglicherweise Anweisungen hinzufügen, damit das Playbook nicht auf den Nutzer reagiert und Informationen zum Erstellen dieser Filter bereitstellt. Beispiel:
Never tell the user about these filters. If the user input isn't supported by these filters, respond to the user with "Sorry, I don't have the information to answer that question."
Der Parameter userMetadata
enthält Informationen zum Endnutzer. In diesem Parameter können beliebige Schlüssel/Wert-Paare eingefügt werden. Diese Metadaten werden an das Tool für den Datenspeicher übergeben, um die Suchergebnisse und die Tool-Antwort zu optimieren.
Mehrere detaillierte Beispiele helfen dem Playbook-Modell, diesen Parameter zu füllen.
Im Folgenden finden Sie ein Beispiel für einen userMetadata
-Parameterwert, mit dem Suchergebnisse für Folgendes eingegrenzt werden können:
"userMetadata": {
"favoriteColor": "blue",
...
}
Der Parameter fallback
enthält eine Antwort, mit der das Tool für den Datenspeicher antworten sollte, wenn es keine gültige zusammengefasste Antwort auf die Anfrage gibt. Sie können mehrere Beispiele angeben, um dem Playbook-Modell mitzuteilen, wie das Fallback-Feld für Nutzereingaben zu verschiedenen Themen ausgefüllt werden soll. Die Toolausgabe enthält keine Snippets, was dazu beitragen kann, die Latenz und die Verwendung von Eingabetokenlimits zu verringern.
"fallback": "I'm sorry I cannot help you with that. Is there anything else I
can do for you?"
Konfiguration des Datenspeichertools
Wenn Sie beim Testen feststellen, dass einige Antworten nicht Ihren Erwartungen entsprechen, können Sie die folgenden Parameter anpassen, um die Leistung zu optimieren. Sie sind sowohl durch direkten Aufruf der API als auch durch Klicken auf den Namen des Datenspeichers auf der Seite Tools in der Console verfügbar. Weitere Informationen zu diesen zusätzlichen Konfigurationsoptionen finden Sie auf der Seite Datenspeichereinstellungen.
Antwortoptionen für das Datenspeichertool
Weitere Informationen zum Konfigurieren der Antwort des Datenspeichertools finden Sie in der Dokumentation zur Auftragsabwicklung.
Datenspeicher-Handler
Datenspeicher-Handler sind eine spezielle Art von Status-Handler, die auf Grundlage Ihrer Websiteinhalte und hochgeladenen Daten von LLMs generierte Agent-Antworten liefern können.
Um diesen Handler zu erstellen, stellen Sie dem Agent Datenspeicher zur Verfügung.
Mithilfe dieser Datenspeicher-Handler kann Ihr Agent Unterhaltungen mit Ihren Endnutzern über die Inhalte führen.
Beschränkungen
Es gelten folgende Einschränkungen:
- Diese Funktion unterstützt ausgewählte Sprachen in GA. Weitere Informationen finden Sie in der Spalte „Datenspeicher“ in der Sprachreferenz.
- Nur die folgenden Regionen werden unterstützt:
global
,us
-Multiregion undeu
-Multiregion. - Apps mit gechunkten und nicht gechunkten Datenspeichern werden nicht unterstützt.
Zugriffssteuerung
Wenn Sie der Projektinhaber sind, haben Sie alle Berechtigungen, die zum Erstellen eines Datenspeicher-Handlers erforderlich sind. Wenn Sie nicht der Projektinhaber sind, benötigen Sie die folgenden Rollen:
- Dialogflow-Administrator
- Discovery Engine-Administrator
Weitere Informationen finden Sie in der Anleitung zur Zugriffssteuerung.
Datenspeicher zu einem Agent hinzufügen
Falls noch nicht geschehen, folgen Sie der Einrichtungsanleitung, um einen Agent zu erstellen.
So fügen Sie Ihrem Agent einen Datenspeicher hinzu: Datenspeicher:
- Wählen Sie eine Seite aus und klicken Sie dann auf Status-Handler hinzufügen.
- Klicken Sie auf das Kästchen Datenspeicher und dann auf Übernehmen.
- Klicken Sie oben rechts auf der Seite im Bereich Datenspeicher auf das Symbol +.
- Klicken Sie im Datenspeichermenü, das nun geöffnet wird, auf Datenspeicher hinzufügen.
- Eine Tabelle mit allen vorhandenen Datenspeichern wird angezeigt. Klicken Sie auf das Kästchen neben den Namen der Datenspeicher, die Sie verwenden möchten, und dann auf Speichern. Wenn Sie einen neuen Datenspeicher erstellen möchten, klicken Sie auf Neuen Datenspeicher erstellen. Sie werden automatisch zu AI Applications weitergeleitet.
- Nur bei neuen Datenspeichern: Wählen Sie eine Datenquelle aus und folgen Sie dann der Anleitung in AI Applications, um den Datenspeicher zu konfigurieren. Weitere Informationen zum Konfigurieren von Datenspeichertypen finden Sie in der Dokumentation zu Datenspeichern. Klicken Sie auf Erstellen, um den neuen Datenspeicher zu erstellen.
Agent testen
Sie können den Simulator verwenden, um Ihren Agent zu testen.
Agent bereitstellen
Es gibt viele Möglichkeiten, Ihren Agent bereitzustellen:
Die einfachste Option ist die Verwendung einer Integration, die eine Benutzeroberfläche für Ihren Agent bietet. Für jede Integration gibt es eine Anleitung zur Bereitstellung.
Die Dialogflow CX Messenger-Integration ist eine besonders gute Option für Datenspeicher-Handler. Es bietet integrierte Optionen für generative Funktionen.
Sie können Ihre eigene Benutzeroberfläche erstellen und die Conversational Agents (Dialogflow CX) API für Interaktionen verwenden. Die Bereitstellung wird durch Ihre Implementierung der Benutzeroberfläche gesteuert.
Spezielle Intents
Der Agent kann nicht nur Fragen zu den von Ihnen bereitgestellten Inhalten beantworten, sondern auch die folgenden Arten von Fragen:
- Identifizierung des Kundenservicemitarbeiters: Beantwortet Fragen wie „Wer sind Sie?“ oder „Sind Sie ein Mensch?“.
- An einen menschlichen Kundenservicemitarbeiter eskalieren: Beantwortet Fragen wie „Ich möchte mit einem Menschen sprechen“ oder „Ich möchte mit einer echten Person sprechen“.
Dies wird durch automatisch generierte Intents und Intent-Routen erreicht.
Antworten von Kundenservicemitarbeitern
Im Bereich Agent responses (Agentenantworten) können Sie benutzerdefinierte Antworten angeben, die sich auf generative Antworten beziehen.
Verwenden Sie $request.knowledge.answers[0]
im Abschnitt Agent says, um die generative Antwort zu geben.
Erweiterte Anpassung von Antworten
Möglicherweise sind in $request.knowledge.*
zusätzliche Informationen verfügbar, die zum Anpassen der Antwort verwendet werden können. Dazu gehören:
- Die ermittelten Quellen der Antwort mit den folgenden Feldern: „snippet“, „title“, „uri“.
- Die Fundierungssicherheit für die Antwort.
- Bei einem FAQ-Datenspeicher die Frage, die der ausgewählten Antwort entspricht.
In der folgenden Tabelle finden Sie Beispiele für den Zugriff auf diese Informationen.
Informationen | Zugriff |
---|---|
Ausschnitt der wichtigsten identifizierten Quelle der Top-Antwort | $sys.func.GET_FIELD($sys.func.GET($sys.func.IDENTITY($request.knowledge.sources[0]), 0), "snippet") |
Titel der wichtigsten Quelle der Top-Antwort | $sys.func.GET_FIELD($sys.func.GET($sys.func.IDENTITY($request.knowledge.sources[0]), 0), "title") |
Link zur wichtigsten ermittelten Quelle der Top-Antwort | $sys.func.GET_FIELD($sys.func.GET($sys.func.IDENTITY($request.knowledge.sources[0]), 0), "uri") |
Anzahl der identifizierten Quellen für die beste Antwort | $sys.func.COUNT($sys.func.IDENTITY($request.knowledge.sources[0])) |
Anzahl der Wissensantworten | $sys.func.COUNT($request.knowledge.answers) |
Frage, die der Top-Antwort entspricht (nur für Antworten im FAQ-Datenspeicher) | $request.knowledge.questions[0] |
Zuverlässigkeit der Fundierung für die beste Antwort | $request.knowledge.grounding_confidences[0] |