Sprachanpassung

Wenn Sie eine Anfrage zur Intent-Erkennung stellen, können Sie optional phrase_hints angeben, um der Spracherkennung Hinweise zu liefern. 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 Console.
  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. Schalten Sie Automatische Sprachanpassung aktivieren ein oder aus.
  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-Schnittstelle Agent-Schnittstelle
C++ AgentsClient Nicht verfügbar
C# AgentsClient Nicht verfügbar
Einfach loslegen (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 Dialogflow zu Aufforderungen zum Ausfüllen von Formularen zwingt, bestimmt die automatische Sprachanpassung stark die ausgefüllte Entität.

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“ sagt, kann dies 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 für Produkt- oder Dienstleistungsnamen, die von Ihrem Unternehmen angeboten werden, eine benutzerdefinierte Entität definieren und der Endnutzer diese Begriffe in einer Äußerung erwähnt, werden sie mit höherer Wahrscheinlichkeit 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 die automatische Sprachanpassung für alphanumerische Zeichen und Ziffernfolgen wie "ABC123" oder "12345" auslösen, wenn sie ordnungsgemäß konfiguriert und getestet wurden.

Damit diese Sequenzen gesprochen werden, müssen alle vier der folgenden Anforderungen implementiert werden:

1. Regexp-Eintrag ist erforderlich

Es kann zwar jeder reguläre Ausdruck verwendet werden, um Entitäten aus Texteingaben zu extrahieren, aber nur bestimmte Ausdrücke weisen die automatische Sprachanpassung an, bei der Spracherkennung aus alphanumerischen oder Ziffernfolgen mit Rechtschreibfehlern zu gewichten.

In der Regexp-Entität muss mindestens ein Eintrag allen diesen Regeln entsprechen:

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

Dieser Eintrag kann den Zeichensatz [] und Wiederholungsquantifizierer wie *, ?, + und {3,5} enthalten.

Siehe Beispiele.

2. Anforderung an 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. Annotationsanforderung für Trainingsformulierungen

Verwenden Sie die Regexp-Entität nicht für eine Annotation von 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. Jetzt profitieren Sie beim Abgleich von „ABC123“ von der Sequenzerkennung. Die NLU stimmt aber trotzdem mit Eingaben wie „ABC 123“ überein, da die ursprüngliche Regel, die Leerzeichen zulässt, weiterhin.

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}
Behelfslösung für reguläre Ausdrücke

Die integrierte Unterstützung der automatischen Sprachanpassung für Regexp-Entitäten variiert je nach Sprache. Prüfen Sie die Tokens der Sprachklasse für 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, die aus drei Buchstaben gefolgt von drei Ziffern besteht, genau erkannt wird, können Sie Ihren Agent mit den folgenden Entitäten und Parametern erstellen:

  • Definieren Sie eine digit-Entität, die 10 Entitätseinträge (mit Synonymen) enthält:
    0, 0
    1, 1
    ...
    9, 9
  • Definieren Sie eine letter-Entität, die 26 Entitätseinträge (mit Synonymen) enthält:
    A, A
    B, B
    ...
    Z, Z
  • Definieren Sie eine employee-id-Entität, die einen einzelnen 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 von der automatischen Sprachanpassung generiert werden, wenn Letztere aktiviert ist.

Die Einstellungen für die Sprachanpassung auf Ablaufebene und die Sprachanpassung auf Seitenebene haben eine hierarchische Beziehung. Das bedeutet, dass eine Seite standardmäßig die Einstellungen für die Sprachanpassung von der Ablaufebene übernimmt und die detailliertere Seitenebene immer die Ablaufebene überschreibt, wenn auf der Seite eine benutzerdefinierte Einstellung vorhanden ist.

Für die Einstellung der Sprachanpassung können die Einstellung auf Ablaufebene und die Einstellung auf Seitenebene unabhängig voneinander aktiviert werden. Auch wenn die Anpassung der Flussebene nicht aktiviert ist, können Sie Anpassen auf Seitenebene auswählen, um die manuelle Sprachanpassung für die jeweilige Seite zu aktivieren. Wenn Sie die manuelle Sprachanpassung in den Einstellungen auf Ablaufebene deaktivieren, hat dies keine Auswirkungen auf Seiten im Ablauf, auf denen Anpassen ausgewählt ist.

Die Einstellung auf Ablaufebene 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 über die Option Anpassen nicht für eine Seite unter dem Ablauf deaktivieren. Wenn Sie also eine Mischung aus manueller Sprachanpassung und automatischer Sprachanpassung für Seiten in einem Ablauf verwenden möchten, sollten Sie die manuelle Sprachanpassung nicht auf Flussebene aktivieren und stattdessen nur Anpassungseinstellungen auf Seitenebene verwenden. Der folgenden Tabelle können Sie entnehmen, welche Kombination aus Ablauf und Seiteneinstellung Sie für Ihren Anpassungsfall verwenden sollten.

Zieleffekt Empfohlene Verwendung der Anpassungseinstellungen
Automatische Anpassung für einen Ablauf deaktivieren Ablauf ohne festgelegte Wortgruppen aktiviert (Seiten im Ablauf verwenden standardmäßig die Ablaufeinstellung).
Automatische Anpassung für eine Seite deaktivieren Ablauf deaktiviert und Seite aktiviert (Anpassen ausgewählt), ohne festgelegte Wortgruppen.
Manuelle Sprachanpassung nur für alle Seiten innerhalb eines Ablaufs verwenden Ablauf aktiviert. Passen Sie Seiten an, auf denen Sätze mit unterschiedlichen Wortgruppen verwendet werden müssen.
Automatische und manuelle Anpassung innerhalb eines Ablaufs mischen Ablauf deaktiviert. Passen Sie die Seiten an, auf denen die manuelle Anpassung angewendet werden soll.
Automatische Sprachanpassung nur für alle Seiten innerhalb eines Ablaufs verwenden Ablauf deaktiviert.

Manuelle Sprachanpassung aktivieren oder deaktivieren

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

Ablaufeinstellungen

  1. Öffnen Sie die Dialogflow CX Console.
  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 Optionen-Schaltfläche .
  5. Wählen Sie im Drop-down-Menü die Option Ablaufeinstellungen aus.
  6. Klicken Sie das Kästchen Manuelle Sprachanpassung aktivieren an oder heben Sie die Auswahl auf.
  7. Wortgruppen in der entsprechenden Tabelle bearbeiten, hinzufügen oder löschen
  8. Klicken Sie auf Speichern.

Seiteneinstellungen

  1. Öffnen Sie die Dialogflow CX Console.
  2. Wählen Sie Ihr GCP-Projekt aus.
  3. Bewegen Sie den Mauszeiger im Abschnitt Seiten über die Seite.
  4. Klicken Sie auf die Optionen-Schaltfläche .
  5. Wählen Sie im Drop-down-Menü die Option Seiteneinstellungen aus.
  6. Standardmäßig wird Ablaufebene verwenden ausgewählt. Bei Auswahl dieser Option werden Formulierungen zur Anpassung der Ablaufebene für diese Seite wiederverwendet. Sie können Anpassen auswählen, um Anpassungsformulierungen zu konfigurieren, die sich von den Einstellungen der Flussebene unterscheiden. Auch wenn die manuelle Sprachanpassung auf Flussebene deaktiviert ist, können Sie die manuelle Sprachanpassung für eine Seite in diesem Ablauf über die Option Anpassen aktivieren und konfigurieren.
  7. Satzgruppe in der Tabelle für Wortgruppen zur Anpassung bearbeiten, hinzufügen oder löschen
  8. Klicken Sie auf Speichern.

Manuelle Konfiguration von Wortgruppen zur Verbesserung der Spracherkennung

1. Wörter und Wortgruppen

In einem Anpassungssatz können Sie Ein- oder Mehrwortsätze mit optionalen Verweisen auf Sprachklassentokens definieren. Sie können z. B. Formulierungen wie „große Leistung“, „Die Sendungsverfolgungsnummer ist $OOV_CLASS_ALPHANUMERIC_SEQUENCE“ oder „$FULLPHONENUM“ hinzufügen. Diese bereitgestellten Wortgruppen erhöhen die Wahrscheinlichkeit, dass sie gegenüber anderen phonetisch ähnlichen Wortgruppen transkribiert werden. Wenn Sie eine aus mehreren Wörtern bestehende Wortgruppe ohne Verstärkung hinzufügen, wird die Verzerrung sowohl auf die gesamte Wortgruppe als auch auf die zusammenhängenden Teile innerhalb der Wortgruppe angewendet. Im Allgemeinen sollte die Anzahl der Wortgruppen gering sein und Sie sollten nur Wortgruppen hinzufügen, bei denen die Spracherkennung ohne Sprachanpassung Schwierigkeiten hat, richtig zu werden. Wenn Speech-to-Text eine Wortgruppe bereits richtig erkennen kann, muss sie nicht in den Einstellungen für die Sprachanpassung hinzugefügt werden. Wenn Sie einige Formulierungen sehen, die Speech-to-Text häufig auf einer Seite oder einem Ablauf falsch erkennt, können Sie den entsprechenden Anpassungseinstellungen die richtigen Formulierungen hinzufügen.

Beispiel für eine Fehlerkorrektur bei der Erkennung

Das folgende Beispiel zeigt, wie Sie mithilfe der Sprachanpassung Erkennungsprobleme korrigieren können. Angenommen, Sie entwerfen einen Handels-Agent für Telefongeräte und der Nutzer kann entweder etwas sagen wie „Telefone verkaufen“ oder „Handy“, nachdem der Agent seine erste Frage gestellt hat: „Wobei benötigen Sie Hilfe?“. Wie können wir dann die Sprachanpassung nutzen, um die Erkennungsgenauigkeit für beide Sätze zu verbessern?

Wenn Sie in den Anpassungseinstellungen beide Wortgruppen verwenden, kann Speech-to-Text dennoch verwirrend sein, da sie ähnlich klingen. Wenn Sie nur eine von beiden angeben, erkennt Speech-to-Text möglicherweise eine der Wortgruppen falsch. Um die Genauigkeit der Spracherkennung für beide Wortgruppen zu verbessern, müssen Sie Speech-to-Text mehr Kontexthinweise bereitstellen, um zu unterscheiden, wann die Spracherkennung „sell phone“ (Smartphone verkaufen) und wann „cell phone“ (Handy) hören sollte. Vielleicht ist Ihnen vielleicht aufgefallen, dass Nutzer oft "Telefone verkaufen" als Teil von Äußerungen wie "wie verkaufe ich Telefone", "wollen Sie Telefone verkaufen" oder "verkaufen Sie Telefone" verwenden, während "Handy" als Teil von Äußerungen wie "Handy kaufen", "Handyrechnung" oder "Mobilfunkdienst" verwendet wird. Wenn Sie dem Modell diese präziseren Wortgruppen anstelle der kurzen Originalformulierungen "Handy" und "telefonen verkaufen" bereitstellen, lernt Speech-to-Text, dass "Telefon verkaufen" als Verbformulierung eher nach Wörtern wie "wie", "wollen" und "doch" folgt, während "Handy" als Nominalphrase eher nach Wörtern wie "kaufen" oder "kosten" folgt. Als Faustregel beim Konfigurieren von Anpassungsformulierungen ist es daher in der Regel besser, präzisere Formulierungen wie „wie verkaufe ich Telefone“ oder „verkaufen Sie Telefone“ anzugeben, als nur „telefon verkaufen“.

2. Tokens für Sprachklasse

Neben Wörtern in natürlicher Sprache können Sie auch Verweise auf Sprachklassentokens in eine Wortgruppe einbetten. Tokens der Sprachklasse stellen gängige Konzepte dar, die in der Regel einem bestimmten Format folgen. Für die Hausnummer in einer Adresse wie „Hauptstraße 123“ würde man in der Regel davon ausgehen, dass die Hausnummer als Ziffernformat „123“ statt in der ausgeschriebenen Version „einhundertdreiundzwanzig“ angezeigt wird. Wenn Sie eine bestimmte Formatierung in den Transkriptionsergebnissen erwarten, insbesondere bei alphanumerischen Sequenzen, können Sie der Liste der unterstützten Klassentokens entnehmen, 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 Referenztabelle für Zuordnungen zwischen gängigen Systementitäten und Sprachklassentokens:

Systementitäten Tokens für Sprachklasse
@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. Boost-Wert

Wenn das Hinzufügen von Wortgruppen ohne den Verstärkungswert nicht stark genug wirkt, können Sie den Verstärkungswert verwenden, um den Effekt der Gewichtungsanpassung durch Sprachanpassung weiter zu verstärken.

Die Verstärkung wendet eine zusätzliche Verzerrung an, wenn sie auf Werte größer als 0 und nicht größer als 20 festgelegt ist. Wenn die Verstärkung leer oder 0 ist, hilft der Standardgewichtungseffekt, die ganze Phrase und die zusammenhängenden Teile innerhalb einer Phrase zu erkennen. Beispielsweise erkennt die nicht verbesserte Formulierung "sind Sie offen für Smartphones verkaufen" diese und ähnliche Formulierungen wie "Ich verkaufe Telefone" und "Hallo sind Sie geöffnet".

Wenn eine positive Verstärkung angewendet wird, ist der Gewichtungseffekt stärker, gilt aber nur für die genaue Wortgruppe. Zum Beispiel lässt sich mit der verbesserten Formulierung "Telefone verkaufen" die Frage "Können Sie Telefone verkaufen" besser erkennen, nicht jedoch "Verkaufen Sie irgendwelche Smartphones".

Aus diesen Gründen erhalten Sie die besten Ergebnisse, wenn Sie Wortgruppen sowohl mit als auch ohne Boosting verwenden.

Höhere Verstärkungswerte können zu weniger falsch negativen Ergebnissen führen. Dies ist Fälle, in denen das Wort oder die Wortgruppe in den Audiodaten vorkommt, aber von Speech-to-Text nicht richtig erkannt wurde (Unterverzerrung). Die Optimierung kann jedoch auch die Wahrscheinlichkeit falsch-positiver Ergebnisse erhöhen, d. h., wenn das Wort oder die Wortgruppe in der Transkription vorkommt, obwohl es nicht im Audio enthalten ist (Überverzerrung). In der Regel müssen Sie Ihre Gewichtungsformulierungen optimieren, um einen guten Kompromiss zwischen den beiden Fragestellungen zu finden.

Weitere Informationen zum Optimieren des Optimierungswerts für Wortgruppen finden Sie in der Cloud Speech-Dokumentation über die Boost-Funktion.

Wann die automatische oder manuelle Sprachanpassung verwendet werden sollte

Allgemein gilt: Wenn Sie sich nicht sicher sind, ob die Sprachanpassung die Qualität der Spracherkennung für Ihren Agent verbessert (dabei keine klaren Transkriptionsfehlermuster zu berücksichtigen sind), sollten Sie zuerst die automatische Sprachanpassung testen, bevor Sie auf die manuelle Sprachanpassung zurückgreifen. Bei differenzierteren Entscheidungen sollten Sie bei der Entscheidung zwischen automatischer Sprachanpassung und manueller Sprachanpassung die folgenden Faktoren berücksichtigen:

1. Formular ausfüllen

Die automatische Sprachanpassung funktioniert sehr gut mit dem Ausfüllen von Formularen, da sie den 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 im Allgemeinen der manuellen Sprachanpassung für eine Formularseite 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 Gewichtungseffekt zu erzielen, ähnlich wie bei der automatischen Sprachanpassung, ohne dass Regexp-Entitäten abgestimmt werden müssen.

2. Komplexität des Seiten- oder Ablaufübergangs

Bei einer einfachen Seite oder einem einfachen Ablauf mit wenigen Intent-Routen generiert die automatische Sprachanpassung wahrscheinlich repräsentative Gewichtungsformulierungen und funktioniert recht gut.

Wenn eine Seite oder ein Ablauf jedoch viele Intent-Routen hat (für eine Seite sollten Sie auch die Anzahl der Routen auf Ablaufebene berücksichtigen) oder wenn ein Intent zu lange oder kurze unwichtige Trainingsformulierungen hat (z. B. ein ganzer Satz oder ein einzelnes Wort mit nur ein oder zwei Silben), funktioniert das Sprachanpassungsmodell mit diesen Wortgruppen höchstwahrscheinlich nicht gut. Versuchen Sie zuerst, die Sprachanpassung für die offenen Seiten mit hoher Komplexität zu deaktivieren. Aktivieren Sie dazu die manuelle Sprachanpassung mit leeren Satzsätzen (leere Anpassungsüberschreibung). Prüfen Sie danach, ob es spezielle eindeutige Wortgruppen gibt, die Speech-to-Text noch zur Verfügung stellen müssen, um die Erkennungsqualität zu verbessern.

Ein weiteres Symptom für dieses Komplexitätsproblem ist, dass bei aktivierter automatischer Sprachanpassung eine Vielzahl von Unter- oder Überverzerrungen angezeigt wird. Ähnlich wie im obigen Fall müssen Sie zuerst testen, ob die Sprachanpassung für die jeweilige Seite deaktiviert ist. Wenn nach dem Deaktivieren der Sprachanpassung das fehlerhafte Verhalten bestehen bleibt, können Sie die zu korrigierenden Formulierungen in die Einstellungen für die Sprachanpassung aufnehmen und sogar Optimierungswerte hinzufügen, um die Gewichtungseffekte bei Bedarf weiter zu verstärken.

Sprachanpassung testen

Wenn Sie die Sprachanpassungsfunktionen des Agents für eine bestimmte Trainingsformulierung oder -entitätsübereinstimmung testen, sollten Sie nicht direkt zum Testen der Übereinstimmung mit der ersten Sprachäußerung einer Unterhaltung wechseln. Sie sollten vor der zu testenden Übereinstimmung nur Sprach- oder Ereigniseingaben für die gesamte Unterhaltung verwenden. Wenn Sie auf diese Weise getestet werden, verhält sich Ihr Agent ähnlich wie in tatsächlichen Produktionsgesprächen.

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 von Cloud Speech können Sie nachsehen, ob die Modellanpassung für Ihre Sprachmodell- und Sprachkombination verfügbar ist.
  • Derzeit unterstützt die manuelle Sprachanpassung noch keine benutzerdefinierten Klassen oder ABNF-Grammatik. Sie können die automatische Sprachanpassung aktivieren oder eine Anfrage zur Intent-Erkennung für die Laufzeit verwenden, um diese Anpassungsfunktionen zu nutzen.

  • Derselbe Optimierungswert kann für verschiedene Sprachmodelle und Sprachen unterschiedlich funktionieren. 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. Daher sollten mehrsprachige Agents nur sprachunabhängige Wortgruppen verwenden oder jede Sprache in einen separaten Agent aufteilen. Da das Standardverhalten der Gewichtung (ohne Optimierung von 0 oder 0) in der Regel für alle Sprachen und Modelle gut funktioniert, müssen Sie nur dann sprachspezifische Verstärkungswerte konfigurieren, wenn für Ihren Erkennungsanwendungsfall eine stärkere Gewichtung erforderlich ist. Weitere Informationen zur Optimierung des Werts finden Sie in diesem Cloud Speech-to-Text-Leitfaden.

  • Das Erkennen langer Zeichensequenzen ist schwierig. Die Anzahl der Zeichen, die in einer einzelnen Runde erfasst werden, hängt direkt von der Qualität der Audioeingabe ab. Wenn Sie alle Richtlinien für Regexp-Entitäten befolgt und versucht haben, relevante Sprachklassentokens in den Einstellungen der manuellen Sprachanpassung zu verwenden, und immer noch Schwierigkeiten haben, die gesamte Sequenz in einer einzigen Runde zu erfassen, können Sie einige Alternativen für die Konversation in Betracht 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.