Sprachanpassung

Wenn Sie eine Anfrage zur Intent-Erkennung ausführen, können Sie optional phrase_hints angeben, um dem Erkennungsmodul Hinweise zu geben. Diese Hinweise können in einem bestimmten Unterhaltungsstatus bei der Erkennung helfen.

Automatische Sprachanpassung

Das Feature zur automatischen Sprachanpassung verbessert die Genauigkeit der Spracherkennung Ihres Agents, indem automatisch der Unterhaltungsstatus verwendet wird, um relevante Entitäten und Trainingsformulierungen als Sprachkontexthinweise für alle Anfragen zur Intent-Erkennung zu übergeben. Diese Funktion ist standardmäßig deaktiviert.

Automatische Sprachanpassung aktivieren oder deaktivieren

So aktivieren oder deaktivieren Sie die automatische Sprachanpassung:

Console

  1. Öffnen Sie die Dialogflow CX-Konsole.
  2. Wählen Sie Ihr GCP-Projekt aus.
  3. Wählen Sie den Agent aus.
  4. Klicken Sie auf Agent-Einstellungen.
  5. Klicken Sie auf den Tab Sprache und IVR.
  6. Aktivieren oder deaktivieren Sie die Option Automatische Sprachanpassung aktivieren.
  7. Klicken Sie auf Speichern.

API

Siehe die Methoden get und patch/update für den Typ Agent.

Wählen Sie ein Protokoll und eine Version für die Agent-Referenz aus:

Protokoll V3 V3beta1
REST Agent-Ressource Agent-Ressource
RPC Agent-Oberfläche Agent-Oberfläche
C++ AgentsClient Nicht verfügbar
C# AgentsClient Nicht verfügbar
Go AgentsClient Nicht verfügbar
Java AgentsClient AgentsClient
Node.js AgentsClient AgentsClient
PHP Nicht verfügbar Nicht verfügbar
Python AgentsClient AgentsClient
Ruby Nicht verfügbar Nicht verfügbar

Agent-Design für Verbesserungen der Spracherkennung

Wenn die automatische Sprachanpassung aktiviert ist, können Sie Ihren Agent so erstellen, dass Sie ihn zu Ihrem Nutzen verwenden können. In den folgenden Abschnitten wird erläutert, wie die Spracherkennung durch bestimmte Änderungen an den Trainingsformulierungen und Entitäten Ihres Agents verbessert werden kann.

Trainingssätze

  • Wenn Sie Trainingsformulierungen mit einer Formulierung wie „stuffy nose“ definieren, wird eine ähnlich klingende Nutzeräußerung zuverlässig als „stuffy nose“ und nicht als „stuff he knows“ erkannt.
  • Wenn Sie einen erforderlichen Parameter haben, der bei Dialogflow Eingabeaufforderungen zur Formularausfüllung erzwingt, wird die automatische Sprachanpassung vorwiegend die zu füllende Entität berücksichtigen.

In allen Fällen berücksichtigt die automatische Sprachanpassung lediglich die Spracherkennung, ohne sie zu beschränken. Beispiel: Auch wenn Dialogflow einen Nutzer zur Eingabe eines erforderlichen Parameters auffordert, können Nutzer weiterhin andere Intents auslösen, z. B. einen Intent der obersten Ebene „Mit Mitarbeiter sprechen“.

Systementitäten

Wenn Sie eine Trainingsformulierung definieren, in der die Systementität @sys.number verwendet wird und der Endnutzer „Ich möchte zwei“ auf Englisch ausspricht („I want two“), kann dies in der englischen Sprache als „to“, „too“, „2“ oder „two“ erkannt werden.

Wenn die automatische Sprachanpassung aktiviert ist, verwendet Dialogflow bei der Spracherkennung die Entität @sys.number als Hinweis. Der Parameter wird mit größerer Wahrscheinlichkeit als „2“ extrahiert.

Benutzerdefinierte Entitäten

  • Wenn Sie eine benutzerdefinierte Entität für Produkt- oder Dienstleistungsnamen definieren, die von Ihrem Unternehmen angeboten werden, und der Endnutzer diese Begriffe in einer Äußerung erwähnt, werden sie eher erkannt. Die Trainingsformulierung „I love Dialogflow“, wobei „Dialogflow“ als @product-Entität annotiert ist, gibt der automatischen Sprachanpassung vor, sich an „I love Dialogflow“, „I love Cloud Speech“ und anderen Einträgen in der @product-Entität zu orientieren.

  • Es ist besonders wichtig, dass Sie präzise Entitätssynonyme definieren, wenn Sie Dialogflow zur Spracherkennung verwenden. Angenommen, Sie haben zwei @product-Entitätseinträge, „Dialogflow“ und „Dataflow“. Ihre Synonyme für „Dialogflow“ sind beispielsweise „Dialogflow“, „dialogue flow“, „dialogue builder“, „Speaktoit“, „speak to it“, „API.ai“, „API dot AI“. Diese Synonyme sind gut, da sie die gängigsten Varianten abdecken. Sie müssen „the dialogue flow builder“ nicht hinzufügen, da dies von „dialogue flow“ bereits abgedeckt ist.

  • Nutzeräußerungen mit aufeinanderfolgenden, aber separaten Zahlenentitäten können mehrdeutig sein. Beispiel: „I want two sixteen packs“ könnten 2 Pakete mit 16 Sets oder 216 Mengen bedeuten. Durch die Sprachanpassung lassen sich solche Fälle eindeutig unterscheiden, wenn Sie Entitäten mit buchstabierten Werten einrichten:
    • Definieren Sie eine quantity-Entität mit folgenden Einträgen:
      zero
      one
      ...
      twenty
    • Definieren Sie eine product- oder size- Entität mit folgenden Einträgen:
      sixteen pack
      two ounce
      ...
      five liter
    • In der Sprachanpassung werden nur Entitätssynonyme verwendet. Sie können also eine Entität mit dem Referenzwert 1 und dem einzelnen Synonym one definieren, um die Auftragsausführungslogik zu vereinfachen.

RegExp-Entitäten

RegExp-Entitäten können bei korrekter Konfiguration und ordnungsgemäßem Testen die automatische Sprachanpassung für alphanumerische und Ziffernsequenzen wie „ABC123“ oder „12345“ auslösen.

Wenn Sie diese Sequenzen über Sprache erkennen möchten, müssen Sie alle vier der folgenden Anforderungen erfüllen:

1. Regexp-Eingabeanforderung

Jeder reguläre Ausdruck lässt sich zum Extrahieren von Entitäten aus Texteingaben verwenden, aber nur bestimmte Ausdrücke geben der automatischen Sprachanpassung vor, vorwiegend buchstabierte alphanumerische oder Ziffernsequenzen zu berücksichtigen.

In der RegExp-Entität muss mindestens ein Eintrag allen folgenden Regeln entsprechen:

  • Sollte mit einigen alphanumerischen Zeichen übereinstimmen, z. B. \d, \w, [a-zA-Z0-9]
  • Darf keine Leerzeichen,   oder \s enthalten, wobei \s* und \s? zulässig sind
  • Sollte keine Erfassungs- oder Nicht-Erfassungsgruppen () enthalten
  • Sollte keine Sonderzeichen oder Satzzeichen wie ` ~ ! @ # $ % ^ & * ( ) - _ = + , . < > / ? ; ' : " [ ] { } \ | enthalten

Dieser Eintrag kann Zeichensätze [] und Wiederholungsquantifizierer wie *, ?, + und {3,5} enthalten.

Beispiele

2. Anforderung an die Parameterdefinition

Markieren Sie die RegExp-Entität als erforderlichen Formularparameter, damit er während des Ausfüllens des Formulars erfasst werden kann. Dadurch kann die automatische Sprachanpassung stark auf die Sequenzerkennung ausgerichtet werden, anstatt zu versuchen, einen Intent und eine Sequenz gleichzeitig zu erkennen. Andernfalls könnte „Wo ist mein Paket für ABC123“ als „Wo ist mein Paket 4ABC123“ falsch erkannt werden.

3. Anforderung an die Annotation von Trainingsformulierungen

Verwenden Sie die Regexp-Entität nicht für eine Intent-Annotation für Trainingsformulierungen. Dadurch wird der Parameter beim Ausfüllen des Formulars aufgelöst.

4. Testanforderung

Weitere Informationen finden Sie unter Sprachanpassung testen.

Beispiele

Beispielsweise löst eine RegExp-Entität mit einem einzelnen Eintrag ([a-zA-Z0-9]\s?){5,9} nicht die Sprachsequenzerkennung aus, da sie eine Erfassungsgruppe enthält. Um das Problem zu beheben, fügen Sie einfach einen weiteren Eintrag für [a-zA-Z0-9]{5,9} hinzu. Nun profitieren Sie von der Sequenzerkennung, wenn Sie „ABC123“ abgleichen, aber die NLU ordnet noch Eingaben wie „ABC 123“ zu, dank der ursprünglichen Regel, die Leerzeichen zulässt.

Die folgenden Beispiele für reguläre Ausdrücke passen sich für alphanumerische Sequenzen an:

^[A-Za-z0-9]{1,10}$
WAC\d+
215[2-8]{3}[A-Z]+
[a-zA-Z]\s?[a-zA-Z]\s?[0-9]\s?[0-9]\s?[0-9]\s?[a-zA-Z]\s?[a-zA-Z]

Die folgenden Beispiele für reguläre Ausdrücke passen sich für Ziffernsequenzen an:

\d{2,8}
^[0-9]+$
2[0-9]{7}
[2-9]\d{2}[0-8]{3}\d{4}
Problemumgehung mit regulären Ausdrücken

Die integrierte Unterstützung einer automatischen Sprachanpassung für RegExp-Entitäten variiert je nach Sprache. Unter Sprachklassen-Tokens finden Sie die unterstützten Sprachen $OOV_CLASS_ALPHANUMERIC_SEQUENCE und $OOV_CLASS_DIGIT_SEQUENCE.

Ist Ihre Sprache nicht aufgeführt, können Sie diese Einschränkung umgehen. Wenn Sie beispielsweise möchten, dass eine Mitarbeiter-ID, bei der auf drei Buchstaben drei Ziffern folgen, richtig erkannt wird, können Sie den Agent mit den folgenden Entitäten und Parametern erstellen:

  • Definieren Sie eine digit-Entität, die (mit Synonymen) 10 Entitätseinträge enthält:
    0, 0
    1, 1
    ...
    9, 9
  • Definieren Sie eine letter-Entität, die (mit Synonymen) 26 Entitätseinträge enthält:
    A, A
    B, B
    ...
    Z, Z
  • Definieren Sie eine employee-id-Entität, die einen einzigen Entitätseintrag (ohne Synonyme) enthält:
    @letter @letter @letter @digit @digit @digit
  • Verwenden Sie @employee-id als Parameter in einer Trainingsformulierung.
.

Manuelle Sprachanpassung

Mit der manuellen Sprachanpassung können Sie Sprachanpassungsformulierungen für einen Ablauf oder eine Seite manuell konfigurieren. Außerdem werden implizite Sprachkontexte überschrieben, die durch die automatische Sprachanpassung generiert werden, wenn diese aktiviert ist.

Die Einstellungen für die Sprachadaptierung auf Ablauf- und Seitenebene haben eine hierarchische Beziehung. Das bedeutet, dass eine Seite standardmäßig die Einstellungen für die Sprachadaptierung von der Ablaufebene erbt. Die detailliertere Seitenebene überschreibt immer die Ablaufebene, wenn die Seite eine benutzerdefinierte Einstellung hat.

Die Einstellungen für die Sprachadaptierung, den Ablauf und die Seite können unabhängig voneinander aktiviert werden. Wenn die Einstellung zur Anpassung auf Flow-Ebene nicht aktiviert ist, können Sie auf Seitenebene Anpassen auswählen, um die manuelle Sprachadaptierung für diese Seite zu aktivieren. Wenn Sie die manuelle Sprachanpassung in den Einstellungen auf Ablaufebene deaktivieren, sind Seiten im Ablauf, für die Anpassen ausgewählt ist, nicht betroffen.

Die Einstellung auf Flussebene und die Einstellung auf Seitenebene können jedoch nicht unabhängig voneinander deaktiviert werden. Wenn für einen Ablauf die manuelle Sprachanpassung aktiviert ist, können Sie sie für eine Seite im Ablauf nicht über die Option Anpassen deaktivieren. Wenn Sie also eine gemischte Verwendung von manueller und automatischer Sprachanpassung für Seiten innerhalb eines Ablaufs wünschen, sollten Sie die manuelle Sprachanpassung nicht auf Ablaufebene aktivieren, sondern stattdessen nur Anpassungseinstellungen auf Seitenebene verwenden. In der Tabelle unten sehen Sie, welche Kombination aus Flow- und Seiteneinstellung Sie für Ihren Fall der Anpassung verwenden sollten.

Ziel-Effekt Empfohlene Verwendung von Anpassungseinstellungen
Automatische Anpassung für einen Flow deaktivieren Der Ablauf ist aktiviert, es sind aber keine Wortgruppen festgelegt. Die Seiten im Ablauf verwenden standardmäßig die Ablauf-Einstellung.
Automatische Anpassung für eine Seite deaktivieren Der Ablauf ist deaktiviert und die Seite ist aktiviert (Anpassen ausgewählt), aber es gibt keine Wortgruppen.
Manuelle Sprachanpassung nur für alle Seiten in einem Flow verwenden Flow aktiviert. Seiten anpassen, für die andere Wortgruppen als für den Ablauf verwendet werden müssen
Automatische und manuelle Anpassung in einem Flow kombinieren Workflow deaktiviert. Passen Sie die Seiten an, auf die Sie manuelle Anpassungen anwenden möchten.
Automatische Sprachanpassung nur für alle Seiten in einem Flow verwenden Workflow deaktiviert.

Manuelle Sprachanpassung aktivieren oder deaktivieren

So aktivieren oder deaktivieren Sie die manuelle Sprachanpassung auf Flow- oder Seitenebene:

Ablauf-Einstellungen

  1. Öffnen Sie die Dialogflow CX-Konsole.
  2. Wählen Sie Ihr GCP-Projekt aus.
  3. Bewegen Sie den Mauszeiger im Abschnitt Abläufe über den Ablauf.
  4. Klicken Sie auf die Schaltfläche „Optionen“ .
  5. Wählen Sie im Drop-down-Menü Ablaufeinstellungen aus.
  6. Klicken Sie das Kästchen Manuelle Sprachanpassung aktivieren an oder heben Sie die Auswahl auf.
  7. Wortgruppensätze in der Wortgruppensatztabelle bearbeiten, hinzufügen oder löschen
  8. Klicken Sie auf Speichern.

Seiteneinstellungen

  1. Öffnen Sie die Dialogflow CX-Konsole.
  2. Wählen Sie Ihr GCP-Projekt aus.
  3. Bewegen Sie den Mauszeiger im Abschnitt Seiten über die Seite.
  4. Klicken Sie auf die Schaltfläche „Optionen“ .
  5. Wählen Sie im Drop-down-Menü Seiteneinstellungen aus.
  6. Ablaufebene verwenden ist standardmäßig ausgewählt. In diesem Fall werden Anpassungsformulierungen auf Ablaufebene für diese Seite wiederverwendet. Sie können Anpassen auswählen, um Anpassungsformulierungen zu konfigurieren, die sich von den Einstellungen auf Flow-Ebene unterscheiden. Auch wenn die manuelle Sprachanpassung auf Ablaufebene deaktiviert ist, können Sie sie für eine Seite in diesem Ablauf über die Option Anpassen aktivieren und konfigurieren.
  7. Wortgruppensatz in der Tabelle „Anpassungswortgruppensatz“ bearbeiten, hinzufügen oder löschen
  8. Klicken Sie auf Speichern.

Manuelle Konfiguration von Wortgruppensätzen zur Verbesserung der Spracherkennung

1. Wörter und Wortgruppen

In einem Anpassungs-Wortgruppensatz können Sie einzelne Wörter oder Wortgruppen mit mehreren Wörtern mit optionalen Verweisen auf Sprachklassentokens definieren. Sie können beispielsweise Formulierungen wie „gute Rate“, „Die Sendungsnummer lautet $OOV_CLASS_ALPHANUMERIC_SEQUENCE“ oder „$FULLPHONENUM“ hinzufügen. Die bereitgestellten Wortgruppen erhöhen die Wahrscheinlichkeit, dass sie transkribiert werden, im Vergleich zu anderen phonetisch ähnlichen Wortgruppen. Wenn Sie eine Wortgruppe mit mehreren Wörtern ohne Optimierung hinzufügen, wird der Bias sowohl auf die gesamte Wortgruppe als auch auf die zusammenhängenden Teile innerhalb der Wortgruppe angewendet. Im Allgemeinen sollte die Anzahl der Wortgruppen gering gehalten werden. Fügen Sie nur Wortgruppen hinzu, die die Spracherkennung ohne Sprachanpassung nur schwer richtig erkennen kann. Wenn Speech-to-Text einen Ausdruck bereits richtig erkennen kann, müssen Sie ihn nicht in den Einstellungen für die Sprachanpassung hinzufügen. Wenn Sie auf einer Seite oder in einem Ablauf einige Formulierungen sehen, die von Speech-to-Text häufig falsch erkannt werden, können Sie die richtigen Formulierungen den entsprechenden Anpassungseinstellungen hinzufügen.

Beispiel für die Korrektur von Erkennungsfehlern

Hier ist ein Beispiel dafür, wie Sie die Sprachanpassung verwenden können, um Probleme bei der Spracherkennung zu beheben. Angenommen, Sie entwickeln einen Agenten für den Verkauf von Smartphones und der Nutzer sagt nach der ersten Frage des Agenten „Wobei kann ich dir helfen?“ entweder etwas, das die Begriffe „Smartphones verkaufen“ oder „Smartphone“ enthält. Wie können wir die Sprachanpassung verwenden, um die Erkennungsgenauigkeit für beide Wortgruppen zu verbessern?

Wenn Sie beide Formulierungen in die Anpassungseinstellungen aufnehmen, kann Speech-to-Text trotzdem verwirrt sein, da sie ähnlich klingen. Wenn Sie nur eine der beiden Formulierungen angeben, kann es passieren, dass Speech-to-Text die eine Formulierung als die andere erkennt. Um die Genauigkeit der Spracherkennung für beide Formulierungen zu verbessern, müssen Sie Speech-to-Text mehr Kontextinformationen zur Verfügung stellen, damit das System unterscheiden kann, wann „sell phones“ und wann „cell phone“ erkannt werden soll. Beispielsweise wird „sell phones“ (Handys verkaufen) häufig in Äußerungen wie „how to sell phones“ (wie verkaufe ich Handys), „want to sell phones“ (ich möchte Handys verkaufen) oder „do you sell phones“ (verkaufen Sie Handys) verwendet, während „cell phone“ (Mobiltelefon) in Äußerungen wie „purchase cell phone“ (Mobiltelefon kaufen), „cell phone bill“ (Mobiltelefonrechnung) und „cell phone service“ (Mobilfunkdienst) verwendet wird. Wenn Sie dem Modell diese genaueren Wortgruppen anstelle der kurzen Originalwortgruppen „cell phone“ und „sell phones“ zur Verfügung stellen, lernt Speech-to-Text, dass „sell phone“ als Verbphrase eher nach Wörtern wie „how to“, „want to“ und „do you“ folgt, während „cell phone“ als Nomenphrase eher nach Wörtern wie „purchase“ folgt oder von Wörtern wie „bill“ oder „service“ gefolgt wird. Als Faustregel für die Konfiguration von Anpassungsformulierungen gilt daher, dass es in der Regel besser ist, präzisere Formulierungen wie „how to sell phones“ (wie verkaufe ich Smartphones) oder „do you sell phones“ (verkaufen Sie Smartphones) anzugeben, als nur „sell phone“ (Smartphone verkaufen).

2. Sprachklassentokens

Neben Wörtern in natürlicher Sprache können Sie auch Verweise auf Sprachklassen-Tokens in einen Ausdruck einbetten. Tokens für Wortarten stellen gängige Konzepte dar, die in der Regel einem bestimmten Format folgen. Bei der Hausnummer in einer Adresse wie „123 Main Street“ würden Nutzer normalerweise die numerische Form „123“ und nicht die ausgeschriebene Version „einhundertdreiundzwanzig“ erwarten. Wenn Sie bestimmte Formatierungen in den Transkriptionsergebnissen erwarten, insbesondere für alphanumerische Sequenzen, sehen Sie sich die Liste der unterstützten Klassentokens an, um zu prüfen, welche Tokens für Ihre Sprache und Ihren Anwendungsfall verfügbar sind.

Wenn die Seite bereits Intent-Routen oder Parameter mit Verweisen auf Systementitäten enthält, finden Sie hier eine Referenztabellen für die Zuordnungen zwischen gängigen Systementitäten und Sprachklassentokens:

Systementitäten Sprachklassentokens
@sys.date $MONTH $DAY $YEAR
@sys.date-time $MONTH $DAY $YEAR
@sys.date-period $MONTH $DAY $YEAR
@sys.time $TIME
@sys.time-period $TIME
@sys.age $OPERAND
@sys.number $OPERAND
@sys.number-integer $OPERAND
@sys.cardinal $OPERAND
@sys.ordinal $OPERAND
@sys.percentage $OPERAND
@sys.duration $OPERAND
@sys.currency-name $MONEY
@sys.unit-currency $MONEY
@sys.phone-number $FULLPHONENUM
@sys.zip-code $POSTALCODE oder $OOV_CLASS_POSTALCODE
@sys.address $ADDRESSNUM $STREET $POSTALCODE
@sys.street-address $ADDRESSNUM $STREET $POSTALCODE
@sys.temperature $OOV_CLASS_TEMPERATURE
@sys.number-sequence $OOV_CLASS_DIGIT_SEQUENCE
@sys.flight-number $OOV_CLASS_ALPHANUMERIC_SEQUENCE

3. Optimierungswert

Wenn das Hinzufügen von Wortgruppen ohne den Optimierungswert keine ausreichende Tendenz zur Sprachanpassung bewirkt, können Sie den Optimierungswert verwenden, um die Tendenz zur Sprachanpassung weiter zu verstärken.

Wenn der Wert größer als 0 und höchstens 20 ist, wird durch das Boosten zusätzlicher Bias angewendet. Wenn „boost“ leer oder 0 ist, wird durch den Standard-Biasing-Effekt die gesamte Wortgruppe und die fortlaufenden Teile innerhalb der Wortgruppe erkannt. Mit der nicht optimierten Formulierung „Bist du bereit, Smartphones zu verkaufen?“ wird diese Formulierung und auch ähnliche Formulierungen wie „Ich verkaufe Smartphones“ und „Hallo, bist du bereit?“ erkannt.

Wenn ein positiver Boost angewendet wird, ist der Bias-Effekt stärker, er gilt aber nur für die genaue Wortgruppe. Eine verstärkte Phrase wie Smartphones verkaufen hilft beispielsweise dabei, „Kannst du Smartphones verkaufen?“ zu erkennen, aber nicht „Verkaufst du Smartphones?“.

Aus diesen Gründen erzielen Sie die besten Ergebnisse, wenn Sie Wortgruppen mit und ohne Optimierung angeben.

Durch höhere Optimierungswerte lässt sich die Zahl der falsch-negativen Ergebnisse möglicherweise verringern. Solche Ergebnisse liegen vor, wenn ein Wort oder eine Wortgruppe in den Audiodaten vorkommt, aber von Speech-to-Text nicht richtig erkannt wird (Unterbias). Durch die Optimierung kann aber auch die Wahrscheinlichkeit von falsch-positiven Ergebnissen erhöht werden. Das sind Ergebnisse, bei denen das Wort oder die Wortgruppe in der Transkription vorkommt, obwohl es nicht in den Audiodaten enthalten ist (Overbiasing). In der Regel müssen Sie Ihre Bias-Formulierungen optimieren, um einen guten Kompromiss zwischen den beiden Bias-Problemen zu finden.

Weitere Informationen zum Optimieren des Boost-Werts für Wortgruppen in Cloud Speech

Wann die automatische oder manuelle Sprachanpassung verwendet werden sollte

Wenn Sie sich nicht sicher sind, ob die Sprachanpassung die Qualität der Spracherkennung für Ihren Agenten verbessern wird (keine klaren Muster für Transkriptionsfehler), sollten Sie zuerst die automatische Sprachanpassung ausprobieren, bevor Sie auf die manuelle Sprachanpassung zurückgreifen. Für differenziertere Entscheidungen sollten Sie die folgenden Faktoren berücksichtigen, um zwischen automatischer und manueller Sprachanpassung zu wählen:

1. Formular ausfüllen

Die automatische Sprachanpassung funktioniert sehr gut mit Formularausfüllen, da sie ABNF-Grammatikkontext für die Formularparameter verwendet und Grammatikregeln basierend auf ihren Entitätstypen erzwingt. Da die manuelle Sprachanpassung noch keine ABNF-Grammatiken unterstützt, wird die automatische Sprachanpassung für eine Seite zum Ausfüllen von Formularen im Allgemeinen der manuellen Sprachanpassung vorgezogen. Bei Seiten mit nur Systementitätsparametern und einfachen Regexp-Entitäten, die von Sprachklassentokens unterstützt werden, können Sie auch die manuelle Sprachanpassung verwenden, um einen ähnlichen Bias-Effekt wie bei der automatischen Sprachanpassung zu erzielen, ohne Regexp-Entitäten abstimmen zu müssen.

2. Komplexität von Seiten- oder Ablaufübergängen

Bei einer einfachen Seite oder einem einfachen Ablauf mit wenigen Intent-Routen werden durch die automatische Sprachanpassung wahrscheinlich repräsentative Bias-Formulierungen generiert und die Leistung ist angemessen.

Wenn eine Seite oder ein Ablauf jedoch eine große Anzahl von Intent-Routen hat (bei einer Seite berücksichtigen Sie bitte auch die Anzahl der Routen auf Ablaufebene) oder wenn einer der Intents zu lange oder zu kurze unwichtige Trainingsformulierungen enthält (z. B. ein ganzer Satz oder ein einzelnes Wort mit nur einer oder zwei Silben), ist es sehr wahrscheinlich, dass das Sprachanpassungsmodell mit diesen Formulierungen nicht gut funktioniert. Deaktivieren Sie zuerst die Sprachanpassung für die komplexen Seiten mit offenem Ende, indem Sie die manuelle Sprachanpassung mit leeren Phrasengruppen aktivieren (leere Anpassungsüberschreibung). Prüfen Sie danach, ob es spezielle eindeutige Formulierungen gibt, die Speech-to-Text noch zur Verfügung gestellt werden müssen, um die Erkennungsqualität zu verbessern.

Ein weiteres Symptom dieses Problems ist, dass bei aktivierter automatischer Sprachanpassung eine Vielzahl von Problemen mit Unter- oder Überbias auftreten. Ähnlich wie oben müssen Sie zuerst testen, ob die Sprachadaptierung für die jeweilige Seite deaktiviert ist. Wenn nach dem Deaktivieren der Sprachanpassung weiterhin fehlerhaftes Verhalten auftritt, können Sie die zu korrigierenden Formulierungen in den Einstellungen für die Sprachanpassung hinzufügen und bei Bedarf sogar Boost-Werte hinzufügen, um die Bias-Effekte weiter zu verstärken.

Sprachanpassung testen

Wenn Sie die Sprachanpassungsfunktionen Ihres Agents für eine bestimmte Trainingsformulierung oder einen bestimmten Entitätsabgleich testen, sollten Sie nicht direkt mit der ersten Sprachäußerung eines Gesprächs beginnen. Sie sollten für die gesamte Unterhaltung vor dem Abgleich, den Sie testen möchten, nur Sprach- oder Ereigniseingaben verwenden. Das Verhalten Ihres Agents bei solchen Tests ähnelt dem Verhalten in tatsächlichen Produktionskonversationen.

Beschränkungen

Es gelten folgende Einschränkungen:

  • Die Sprachanpassung ist nicht für alle Sprachmodelle und Sprachkombinationen verfügbar. Auf der Seite zur Sprachunterstützung für Cloud Speech können Sie prüfen, ob die Modellanpassung für Ihr Sprachmodell und Ihre Sprachkombination verfügbar ist.
  • Derzeit werden bei der manuellen Sprachanpassung noch keine benutzerdefinierten Klassen oder ABNF-Grammatik unterstützt. Sie können die automatische Sprachanpassung aktivieren oder eine Laufzeitanfrage zum Erkennen der Intention verwenden, um diese Anpassungsfunktionen zu nutzen.

  • Derselbe Boost-Wert kann sich bei verschiedenen Sprachmodellen und Sprachen unterschiedlich auswirken. Seien Sie daher vorsichtig, wenn Sie sie manuell für Agents konfigurieren, die mehrere Sprachen oder Sprachmodelle verwenden. Derzeit gilt die manuelle Sprachanpassung für alle Sprachen in einem Agent. Bei mehrsprachigen Agents sollten daher nur sprachunabhängige Formulierungen verwendet oder jede Sprache in einen separaten Agent aufgeteilt werden. Da das standardmäßige Verhalten bei der Gewichtung (keine oder 0 Gewichtung) in der Regel für alle Sprachen und Modelle gut funktioniert, müssen Sie keine sprachspezifischen Gewichtungswerte konfigurieren, es sei denn, für Ihren Anwendungsfall ist eine stärkere Gewichtung erforderlich. Weitere Informationen zum Optimieren des Boost-Werts

  • Das Erkennen langer Zeichensequenzen ist schwierig. Die Anzahl der Zeichen, die in einem einzelnen Durchgang erfasst werden, hängt direkt von der Qualität des Audio-Inputs ab. Wenn Sie alle Richtlinien für Regexp-Entitäten befolgt und versucht haben, relevante Sprachklassen-Tokens in den manuellen Einstellungen für die Sprachanpassung zu verwenden, und es Ihnen immer noch nicht gelingt, die gesamte Sequenz in einem einzigen Turn zu erfassen, können Sie einige alternative Formulierungen in Erwägung ziehen:
    • Wenn Sie die Sequenz anhand einer Datenbank validieren, sollten Sie Querverweise für andere erfasste Parameter wie Datumsangaben, Namen oder Telefonnummern erstellen, um unvollständige Übereinstimmungen zu ermöglichen. Fragen Sie einen Nutzer beispielsweise nicht nur nach seiner Bestellnummer, sondern auch nach seiner Telefonnummer. Wenn der Webhook nun die Datenbank nach dem Bestellstatus abfragt, kann er sich zuerst auf die Telefonnummer verlassen und dann die am besten übereinstimmende Bestellung für dieses Konto zurückgeben. Dies könnte dazu führen, dass Dialogflow „ABC“ falsch als „AVC“ erkennt, aber dennoch den korrekten Bestellstatus für den Nutzer zurückgibt.
    • Bei extra langen Sequenzen sollten Sie vielleicht einen Ablauf entwerfen, der Endnutzer dazu veranlasst, eine Pause zu machen, sodass der Bot die Eingabe bestätigen kann.