Customer Experience Insights bietet zwei regelbasierte Funktionen zur Verbesserung der Konversationsverarbeitung:
- Regeln für automatisches Labeling:Schlüssel-Wert-Labels werden basierend auf definierten Bedingungen automatisch auf Unterhaltungen angewendet.
- Korrelationsregeln:Definieren Sie, wie zusammengehörige Gesprächssegmente verknüpft werden, um vollständige Ansichten der Kundeninteraktion zu erstellen.
Für beide Regeltypen wird die Common Expression Language (CEL) verwendet, um flexible und dynamische Regeldefinitionen zu ermöglichen. CEL ist sowohl für die automatische Kennzeichnung als auch für Korrelationsregeln von grundlegender Bedeutung. Sie können diese Regeln mit der API oder der CX Insights-Konsole konfigurieren.
Regeln für automatisches Labeling
Mit Regeln für das automatische Labeling werden Unterhaltungen beim Import automatisch mit benutzerdefinierten Schlüssel/Wert-Labels angereichert. Diese Labels verbessern die Filterung, Kategorisierung und Integration mit anderen Analysen und Workflows. Sie können die folgenden Aktionen mit Regeln für die automatische Kennzeichnung ausführen:
- Gespräche nach Thema, Kundentyp, Produkt oder Ergebnis kategorisieren
- Extrahieren Sie wichtige Datenpunkte aus Konversationsmetadaten oder Dialogflow-Parametern wie
callId-,isAuthenticated- undintent-Namen in Labels. - Markieren Sie Unterhaltungen, die besondere Aufmerksamkeit erfordern, z. B.
high_escalation_risk.
Labels
Jede Regel für das automatische Labeling definiert ein Label und enthält geordnete Bedingungsnachrichten. Für jedes Label werden die folgenden CEL-Ausdrücke verwendet:
- Bedingung: Wertet aus, ob eine Unterhaltung wahr oder falsch ist. Eine leere Bedingung wird standardmäßig als „true“ ausgewertet.
- Wert: Gibt den Stringwert für ein Label zurück, wenn die Bedingung zutrifft.
Der Wert des Labels wird durch den ersten übereinstimmenden LabelingCondition bestimmt.
Regeln konfigurieren
So konfigurieren Sie Regeln für die automatische Kennzeichnung über die API oder die CX Insights Console:
API
Verwenden Sie den Vorgang
Create, um eineAutoLabelingRulezu konfigurieren. Beispiel für einen Anfragetext:{ "displayName": "$DISPLAY_NAME", "labelKey": "$UNIQUE_KEY_NAME", "labelKeyType": LABEL_KEY_TYPE_CUSTOM "conditions": [ { "condition": "conversation.turn_count > 10 && conversation.duration > "60s"", "value": "'long_call'" }, { "condition": "conversation.agent_id == "agent_007"", "value": "'special_agent'" } ], "active": true }Curl-Befehl, wenn die Anfrage in
auto_labeling_rule.jsongespeichert ist:curl-X POST
-H "Authorization: Bearer $(gcloud auth --impersonate-service-account=$SA_EMAIL print-access-token)"
-H "Content-Type: application/json; charset=utf-8"
-d @auto_labeling_rule.json
"https://$ENDPOINT/v1/projects/$PROJECT/locations/$LOCATION/autoLabelingRules?auto_labeling_rule_id=$RULE_ID"Geben Sie einen Namen für die Regel im folgenden Format ein:
projects/[project-id]/locations/[location-id]/autoLabelingRules/[auto_labeling_rule]. Die[auto_labeling_rule]-ID ist dielabel_keyfür benutzerdefinierte Regeln.
Sie können auch einen der folgenden Vorgänge mit Regeln für die automatische Kennzeichnung verwenden. Eine automatische Labeling-Regel kann maximal 100 Labels pro Unterhaltung mit maximal 256 Zeichen pro Eintrag enthalten.
Get.curl -X GET
-H "Authorization: Bearer $(gcloud auth --impersonate-service-account=$SA_EMAIL print-access-token)"
-H "Content-Type: application/json; charset=utf-8" \ "https://$ENDPOINT/v1/projects/$PROJECT/locations/$LOCATION/autoLabelingRules/$RULE_ID"List.curl -X GET
-H "Authorization: Bearer $(gcloud auth --impersonate-service-account=$SA_EMAIL print-access-token)"
-H "Content-Type: application/json; charset=utf-8" \ "https://$ENDPOINT/v1/projects/$PROJECT/locations/$LOCATION/autoLabelingRules"Update. Geben Sie je nach den zu aktualisierenden Feldern denupdate_maskan.curl -X PATCH
-H "Authorization: Bearer $(gcloud auth --impersonate-service-account=$SA_EMAIL print-access-token)"
-H "Content-Type: application/json; charset=utf-8"
-d @update_payload.json \ "https://$ENDPOINT/v1/projects/$PROJECT/locations/$LOCATION/autoLabelingRules/$RULE_ID?update_mask=displayName,active"TestAutoLabelingRule. Ihre Nutzlast sollte die zu testende Regel und eine Beispielkonversation enthalten, anhand derer die Regel ausgewertet wird. Beispiel:{ "conversation": { "agentId": "agent_007", "turnCount": 15, "duration": "75s" /# Add other conversation fields relevant to the rule }, "autoLabelingRule": { "displayName": "Test Rule", "labelKey": "test_category", "conditions": [ { "condition": "conversation.turn_count > 10 && conversation.duration > "60s"", "value": "'long_call_test'" } ], "active": true } }
Console
- Rufen Sie die CX Insights Console auf, melden Sie sich an und wählen Sie Ihr Projekt aus. CX Insights-Konsole
- Klicken Sie auf die EinstellungenEinstellungen > Regeln für die automatische Kennzeichnung.
- Geben Sie CEL-Ausdrücke mit einem Monaco-Editor ein.
- Klicken Sie auf Speichern.
CEL-Beispiele
- Label nach Agent-ID:
label_key: "agent_category" conditions { condition: "conversation.agent_id == '007'" value: "'special_agent'" } conditions { condition: "conversation.agent_id.startsWith('team_a')" value: "'tier_1_support'" } conditions { condition: "" // Default value: "'standard'" } - Negative Stimmung kennzeichnen:
label_key: "needs_review" conditions { // This example assumes sentiment scores are present in the conversation's latest_analysis condition: "has(conversation.latest_analysis.analysis_result.call_analysis_metadata.sentiments) && conversation.latest_analysis. analysis_result.call_analysis_metadata.sentiments.exists(s, s. sentiment_data.score < -0.5)" value: "'true'" } - Dialogflow-Parameter extrahieren:
label_key: "df_session_outcome" conditions { condition: "" // Always try to extract value: "conversation.runtime_annotations.map(a, a.dialogflow_interaction.detect_intent_response_v3.query_result.parameters).filter(p, has(p.outcome)).map(p, p.outcome).first_element_or_empty_string()" }
Automatische Labels in Filtern für Analyseregeln verwenden
Mit Regeln für das automatische Labeling können Labels angewendet werden, mit denen gesteuert wird, welche Unterhaltungen von den Hauptanalyseregeln verarbeitet werden. Im Feld conversation_filter einer Analyseregel kann mit der Labelzuordnung auf Labels verwiesen werden.
Beispiel:
// AnalysisRule to run detailed analysis on conversations labeled 'needs_review: true'
display_name: "Detailed Analysis for Reviewed Conversations"
conversation_filter: "labels.needs_review = \"true\""
annotator_selector: {
run_summarization_annotator: true
// ... other annotators
}
analysis_percentage: 1.0
active: true
Korrelationsregeln
Mit Korrelationsregeln wird definiert, wie Customer Experience Insights zusammengehörige Gesprächssegmente identifiziert und verknüpft. Ein Unterhaltungssegment stellt einen einzelnen Teil einer Unterhaltung dar, wie er aufgenommen wurde, z. B. eine Dialogflow-Sitzung oder eine einzelne Agent-Interaktion. Eine vollständige Unterhaltung ist eine vollständige, verknüpfte Unterhaltung, die aus einem oder mehreren Segmenten besteht. Standardmäßig werden alle neuen Unterhaltungen als Segmente gestartet. Mit Korrelationsregeln können Sie einen vollständigen Verlauf der Kundeninteraktion erstellen, auch wenn diese mehrere Kundenservicemitarbeiter, Kanäle oder Sitzungen umfasst.
Korrelationsregeln bieten die folgenden Vorteile für die Analyse von Kundenservice-Unterhaltungen.
- Einheitliches Transkript:Sie können ein einzelnes, chronologisches Transkript aufrufen, in dem Äußerungen aus mehreren Quellen kombiniert werden, z. B. aus einer Chatbot-Sitzung und einem anschließenden Anruf bei einem Kundenservicemitarbeiter.
- Channelübergreifende Analyse:Verknüpfen Sie Interaktionen über verschiedene Kanäle hinweg, z. B. Chat und Sprache, um Sentiment-Trends und die Entwicklung von Themen während einer gesamten Konversation zu analysieren.
- Messwertgenauigkeit:Berechnen Sie Messwerte wie die gesamte Bearbeitungszeit oder die Lösungsrate für die gesamte Interaktion und nicht nur für einzelne Teile.
- Kontext für Kundenservicemitarbeiter:Kundenservicemitarbeitern den vollständigen Verlauf der bisherigen automatisierten Interaktionen zur Verfügung stellen.
Korrelationsprozess
Wenn Korrelationsregeln mit mehreren Konversationssegmenten übereinstimmen, werden sie in CX Insights gruppiert. CX Insights erstellt dann einen neuen Eintrag für die gesamte Unterhaltung mit einer eigenen eindeutigen Unterhaltungs-ID. In CX Insights wird die Korrelations-ID einer vollständigen Unterhaltung auf den gemeinsamen Schlüssel festgelegt, der die Segmente verknüpft, und der Typ auf FULL. In CX Insights wird die Korrelations-ID der ursprünglichen Segmente auf den gemeinsamen Schlüssel und ihr Typ auf SEGMENT festgelegt. Wenn ein Segment mit keinem anderen Segment korreliert ist, werden ihm in CX Insights sowohl der Korrelationstyp SEGMENT als auch FULL zugewiesen.
Nachrichten verknüpfen
Mit Korrelationsregeln werden zusammengehörige Gesprächssegmente aus verschiedenen Quellen und Kanälen verknüpft. CX Insights geht so vor, um Unterhaltungssegmente zu verknüpfen:
- Nach Join-Schlüssel gruppieren:CX Insights wertet einen CEL-Join-Schlüssel-Ausdruck aus, um eine gemeinsame Kennung aus der Konversation zu extrahieren, z. B.
callId. Unterhaltungen mit demselben Join-Schlüssel sind potenzielle Kandidaten für die Verknüpfung. Join-Schlüssel müssen spezifisch sein. Wenn ein Schlüssel mit mehr als 20 Unterhaltungen übereinstimmt, wird die Korrelation möglicherweise abgelehnt, um Leistungsprobleme zu vermeiden. - Mit Einschränkungen verfeinern:Der CEL-Einschränkungsausdruck ist eine optionale boolesche Prüfung, die paarweise zwischen Kandidaten ausgewertet wird. Mit diesem Ausdruck lässt sich bestätigen, ob zwei Segmente mit einem gemeinsamen Schlüssel tatsächlich verknüpft werden sollten. Diese Prüfung ist bidirektional. Sie kann also Segment A umfassen, das mit Segment B verknüpft ist, und Segment B, das mit Segment A verknüpft ist.
- Transitive Verknüpfung:Die Verknüpfung ist transitiv. Wenn Unterhaltung A mit Unterhaltung B und Unterhaltung B mit Unterhaltung C verknüpft ist, werden A, B und C in einer einzigen
FULL-Unterhaltungsgruppe zusammengeführt.
Eine zusammengeführte Unterhaltung kann maximal fünf Segmente enthalten.
Korrelationsregeln konfigurieren
Sie können Korrelationsregeln entweder über die API oder die CX Insights-Konsole konfigurieren.
API
- Führen Sie den folgenden Code aus, um eine
CorrelationConfigeinzurichten.curl -X PATCH
-H "Authorization: Bearer $(gcloud auth --impersonate-service-account=$SA_EMAIL print-access-token)"
-H "Content-Type: application/json; charset=utf-8"
-d @update_corr_config.json
"https://$ENDPOINT/v1/projects/$PROJECT/locations/$LOCATION/correlationConfig?update_mask=fullConversationConfig" - Geben Sie der Regel einen Namen im folgenden Format:
projects/{project-id}/locations/{location-id}/correlationConfig. - Sehen Sie sich das Ergebnis im Feld
Conversation.CorrelationInfoan.
Sie können die folgenden Vorgänge mit Korrelationsregeln verwenden.
GetCorrelationConfig.curl-X GET
-H "Authorization: Bearer $(gcloud auth --impersonate-service-account=$SA_EMAIL print-access-token)"
-H "Content-Type: application/json; charset=utf-8"
"https://$ENDPOINT/v1/projects/$PROJECT/locations/$LOCATION/correlationConfig"UpdateCorrelationConfig. Beispiel für eine Anforderung im Textkörper, wenn sie in einerupdated_corr_config.jsongespeichert ist:{ "fullConversationConfig": { "correlationRules": [ { "joinKeyExpression": "conversation.labels.uui", "active": true } ] } }TestCorrelationConfig. Ihre Nutzlast sollte neben der zu testenden Korrelationsregel auch die Details der Beispielunterhaltung enthalten. Beispiel:{ "correlationConfig": { "fullConversationConfig": { "correlationRules": [ { "joinKeyExpression": "conversation.agent_id", "active": true } ] } }, "filter": "agent_id="agent_007"", "maxSampleCount": 100 }
Console
- Rufen Sie die CX Insights Console auf, melden Sie sich an und wählen Sie Ihr Projekt aus. CX Insights-Konsole
- Klicken Sie auf die EinstellungenEinstellungen > Korrelationskonfiguration.
- Klicken Sie auf Speichern.
Administratoren können CorrelationRule-Einträge in der CorrelationConfig definieren und verwalten. Sie können Ihre Korrelationsregeln testen, indem Sie Unterhaltungen auswählen. Die Testergebnisse werden einem Dataset zur Überprüfung hinzugefügt.
CEL-Beispiel
Link von callId aus Dialogflow:
join_key_expression:
// Extracts 'callId' from Dialogflow parameters, falls back to conversation name.
default(conversation.runtime_annotations.map(a,
a.dialogflow_interaction.detect_intent_response_v3.query_result.parameters)
.filter(p, has(p.callId))
.map(p, p.callId)
.first_element_or_empty_string(), conversation.name)
Analyse auf Segment- und Unterhaltungsebene
Mit CX Insights können Sie Unterhaltungen auf verschiedenen Granularitätsebenen analysieren, einschließlich segment- und unterhaltungsbezogener Analysen für alle Funktionen.
- Rufen Sie die CX Insights Console auf, melden Sie sich an und wählen Sie Ihr Projekt aus. CX Insights-Konsole
- Klicken Sie auf EinstellungenEinstellungen und wählen Sie die gewünschte Analysegranularität aus. Ihre Auswahl gilt für zukünftige Analysen und kann rückwirkend angewendet werden. Dabei können zusätzliche Kosten anfallen.
- Klicken Sie auf Speichern.
Auf den Seiten Conversation Hub und Quality AI in der Konsole werden Daten auf Unterhaltungs- und Segmentebene verglichen und die Multisegmentstruktur verknüpfter Unterhaltungen angegeben.
Messwerte und Analysen filtern
Mit den folgenden Filtern können Sie bestimmte Analyseebenen in der API oder der Console anvisieren.
Ansicht auf Segmentebene
Ziel dieser Ansicht ist es, bestimmte Teile einer Interaktion zu analysieren, z. B. den Zug eines einzelnen Kundenservicemitarbeiters. Verwenden Sie den Parameter correlation_info.correlation_types:SEGMENT, um die Ansicht auf Segmentebene zu filtern.
Vollständige Konversationsansicht
In dieser Ansicht können Sie den gesamten Kaufprozess analysieren, unabhängig davon, ob er aus verknüpften oder eigenständigen Unterhaltungen besteht. Mit dem Parameter correlation_info.correlation_types:FULL können Sie die vollständige Unterhaltung filtern.