Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Mehrsprachige Agents kommunizieren mit Kunden in verschiedenen Sprachen, während alle Inhalte in einem einzigen Agent beibehalten werden. In vielen Fällen erkennen sie automatisch die gewünschte Sprache basierend auf der Webbrowsereinstellung des Agentbenutzers und reagieren in derselben Sprache und bieten eine personalisiertere und ansprechendere Benutzererfahrung für Kunden.
Wenn Sie einen Agent erstellen, geben Sie die primäre Sprache an.
Nachdem Sie einem Agent sekundäre Sprachen hinzugefügt haben, sind Sie für die Bereitstellung der Übersetzungen für Nachrichten in Themen verantwortlich, die Sie erstellen. Für Agents, die generative Orchestrierung verwenden, werden generierte Nachrichten automatisch übersetzt.
Wenn ein Kunde eine Sitzung mit einem veröffentlichten Agent startet, wählt der Agent eine seiner Sprachen aus, um der im Client oder Browser des Kunden angegebenen Sprache zu entsprechen. Wenn der Agent die Client- oder Browsersprache nicht erkennen kann oder wenn die erkannte Sprache keine der Sprachen ist, die Sie für Ihren Agent angegeben haben, wird der Agent standardmäßig auf die primäre Sprache festgelegt.
Sie können einen Agent so entwerfen, dass er die sprache ändert, die er während einer Unterhaltung verwendet (siehe " Agent wechseln zu einer anderen Sprache"). Sie können auch einen Agenten einrichten, der die generative Orchestrierung verwendet, um Sprachen dynamisch zu wechseln und der Sprache zu folgen, die in der aktuellen Unterhaltung verwendet wird (siehe Einrichten eines Agenten für dynamische Sprachwechsel).
Eine Liste der unterstützten Sprachen finden Sie unter Sprachunterstützung.
Anmerkung
Klassische Chatbots unterstützen nur eine Sprache. Weitere Informationen zum Konvertieren eines klassischen Chatbots in einen Agent finden Sie unter Upgrade auf einheitliche Copilot Studio-Erstellung.
Hinzufügen von Sprachen zu einem Agent
Wechseln Sie zur Seite "Einstellungen" für den Agent, und wählen Sie "Sprachen" aus.
Wählen Sie "Sprachen hinzufügen" aus.
Wählen Sie im Bereich " Sprachen hinzufügen " die Sprachen aus, die Sie dem Agent hinzufügen möchten, und wählen Sie "Hinzufügen" aus.
Überprüfen Sie die Liste der Sprachen, und schließen Sie die Seite "Einstellungen ".
Verwalten der Lokalisierung für einen mehrsprachigen Agent
In Copilot Studio führen Sie alle Themen- und Inhaltsbearbeitungen in der primären Sprache des Agents durch. In diesem Abschnitt wird erläutert, wie Sie Zeichenfolgen von Ihrem Agent herunterladen und in die sekundären Sprachen Ihres Agents übersetzen. Nachdem Sie die übersetzten Zeichenfolgen hochgeladen haben, können Sie die Sprache im Testbereich wechseln und überprüfen, ob Unterhaltungen in den sekundären Sprachen ebenfalls wie erwartet fließen.
Vorbereiten lokalisierter Inhalte
Wenn Sie die Lokalisierungsdatei für eine sekundäre Sprache zum ersten Mal herunterladen, befinden sich alle Zeichenfolgen in der primären Sprache des Agents. Nachdem Sie eine Lokalisierungsdatei heruntergeladen haben, verwenden Sie sie mit Ihrem bevorzugten Lokalisierungsprozess.
Wechseln Sie zur Seite "Einstellungen" für Ihren Agent, und wählen Sie "Sprachen" aus.
Wählen Sie auf der Seite "Sprachen " in der Liste der sekundären Sprachen " Hochladen " für die Sprache aus, die Sie aktualisieren möchten.
Wählen Sie im Bereich "Lokalisierungen aktualisieren" entweder das JSON- oder resX-Format aus, um die aktuelle Lokalisierungsdatei für diese Sprache herunterzuladen.
Anmerkung
Die heruntergeladene Datei enthält die neuesten Lokalisierungsinhalte für den Agenten. Wenn Sie frühere Versionen der Lokalisierungsdatei herunterladen müssen, öffnen Sie die Lösung des Agents.
Öffnen Sie die heruntergeladene Datei und ersetzen Sie die primären Sprachzeichenfolgen durch den entsprechenden übersetzten Text.
Kehren Sie zum Bereich "Lokalisierung aktualisieren " zurück, wählen Sie "Durchsuchen" aus, und laden Sie die übersetzte Datei hoch.
Schließen Sie den Bereich "Lokalisierung aktualisieren " und die Seite "Einstellungen ".
Aktualisieren lokalisierter Inhalte
Wenn Sie Änderungen an den Zeichenfolgen der primären Sprache vornehmen, müssen Sie auch den Inhalt in den sekundären Sprachen aktualisieren. Dieser Prozess umfasst sowohl neue als auch geänderte Inhalte. Inkrementelle Änderungen werden nicht automatisch übersetzt. Sie müssen die JSON- oder ResX-Datei für die sekundäre Sprache herunterladen und die nicht übersetzten Zeichenfolgen mithilfe Ihres bevorzugten Lokalisierungsprozesses aktualisieren.
Das folgende Szenario ist für den Workflow für übersetzte Inhalte typisch. Sie haben zuvor Ihre primäre Sprache (en-US) in eine sekundäre Sprache (fr-FR) übersetzt und Inhalte in der primären Sprache hinzugefügt und geändert. Wenn Sie die Lokalisierungsdatei für die sekundäre Sprache herunterladen, befinden sich alle neuen Inhalte in der primären Sprache (en-US). Der geänderte Inhalt wird jedoch weiterhin in der sekundären Sprache angezeigt. Da der geänderte Inhalt dieselbe ID verwendet, müssen Sie die neue Datei mit der zuvor hochgeladenen Datei vergleichen.
Dynamische Inhalte aus adaptiven Karten für die Lokalisierung verfügbar machen
Lokalisierungsdateien enthalten keine gemischt-typisierten Zeichenfolgen aus Adaptiven Karten. Wenn Sie eine adaptive Karte lokalisieren müssen, auf der eine Zeichenfolge sowohl statischen Text als auch Variablen (dynamischer Inhalt) enthalten kann, verwenden Sie die folgende Problemumgehung. In der Prozedur wird gezeigt, wie Sie einen Set-Textvariablenknoten verwenden, um die vollständige Zeichenfolge mit dem statischen Text und variablen in einer Zwischenvariablen zu speichern. Anschließend verweisen Sie nur auf diese Zwischenvariable in Ihrer adaptiven Karte. Wenn Sie eine Lokalisierungsdatei für Ihren Agent herunterladen, steht der Wert der Zwischenvariablen mit dem statischen Text und den Variablenverweise als Teil einer setVariable Aktion für die Lokalisierung zur Verfügung.
So können Sie die dynamischen Inhalte einer adaptiven Karte lokalisierbar machen:
Fügen Sie vor Ihrer Adaptive Card einen Node "Set variable value" hinzu. In diesem Schritt wird eine YAML-Darstellung erstellt, die Sie mithilfe des Code-Editors aktualisieren können, um den Knoten in einen Satz textvariablen Knoten zu konvertieren. Sie können Textvariablen festlegen-Knoten nicht direkt im Erstellungsbereich erstellen.
Erstellen Sie im Knoten "Variablenwert festlegen " eine neue Variable, legen Sie den Wert aber noch nicht fest.
Öffnen Sie den Code-Editor für Ihr Thema.
Suchen Sie im Code-Editor den Teil, der ihren Variablenwertknoten "Set" darstellt, und ersetzen Sie
kind: SetVariableihn durchkind: SetTextVariable. Diese Änderung wandelt deinen Knoten "Setze Variablenwert" in einen Knoten "Setze Textvariable" um.Schließen Sie den Code-Editor.
Wählen Sie das untere Feld des Knotens "Textvariablen festlegen " aus, und geben Sie die vollständige Zeichenfolge mit dem statischen Text und den Variablen ein, die auf der adaptiven Karte angezeigt werden sollen. Fügen Sie eine Variable auf die gleiche Weise ein, wie Sie eine Variable in eine Nachricht einfügen würden.
Aktualisieren Sie Ihre adaptive Karte mit einem Verweis auf diese neue Variable.
Speichern Sie Ihr Thema. Sie können die Lokalisierungsdatei jetzt herunterladen und überprüfen, ob sie den dynamischen Inhalt für Ihre adaptiven Karten enthält.
Testen eines mehrsprachigen Agents
Den Testbereich öffnen.
Wählen Sie die drei Punkte (...) oben im Testpanel aus und wählen Sie die gewünschte Sprache. Der Testbereich lädt sich neu, diesmal mit der ausgewählten Sprache. Der Zeichenbereich für die Dokumenterstellung bleibt in der primären Sprache, und Sie können änderungen, die Sie an einem Thema vornehmen, erst speichern, wenn Sie zur primären Sprache zurückkehren.
Um den Agent zu testen, geben Sie eine Nachricht in der ausgewählten Sprache ein.
Sie können Ihre Browsersprache auch auf eine der Sprachen Ihres Agenten festlegen und zur vordefinierten Demo-Website wechseln. Die Demowebsite wird in der angegebenen Sprache geöffnet, und der Agent chatt in dieser Sprache.
Wechseln eines Agents zu einer anderen Sprache
Beim Erstellen können Sie den Agent so konfigurieren, dass er in der Mitte einer Unterhaltung zu einer anderen Sprache wechselt. Die Logik kann sich in jedem beliebigen Thema im Agenten befinden. Es ist jedoch am besten, die Sprache direkt nach einem Frageknoten zu wechseln, wodurch sichergestellt wird, dass alle nachfolgenden Nachrichten bis zum nächsten Frageknoten in derselben Sprache vorliegen.
Um die aktuelle Sprache des Agents zu ändern, legen Sie die User.LanguageSystemvariable auf eine der sekundären Sprachen Ihres Agents fest. Diese Auswahl ändert sofort die Sprache, die Ihr Agent spricht.
Einrichten eines Agents für den dynamischen Sprachwechsel
Anmerkung
Diese Funktion ist nur für Agents mit aktivierter generativer Orchestrierung verfügbar.
Sie können einen Agent konfigurieren, um die Sprache zu erkennen, die ein Kunde verwendet und in derselben Sprache reagiert. Mit dieser Konfiguration kann der Agent die Sprachen im Laufe einer einzelnen Unterhaltung mehrmals wechseln. Das folgende Szenario zeigt, wie Sie einen Agent einrichten, um zwischen Niederländisch und Englisch zu wechseln. Sie können sie für eine beliebige Kombination der von Ihrem Agent unterstützten Sprachen erweitern.
In diesem Szenario wird ein Thema mit einem empfangenen Nachrichten-Auslöser verwendet. Mit diesem Themenauslöser kann Ihr Agent jede empfangene Nachricht untersuchen. In diesem Thema wird eine benutzerdefinierte Eingabeaufforderung verwendet, um die Sprache und eine Bedingung zum Festlegen der Agent-Sprachsystemvariable zu erkennen.
Ersetzen Sie den Standardtriggertyp für das Thema durch Eingang einer Nachricht.
Fügen Sie Ihrem Thema eine Eingabeaufforderung hinzu:
Wählen Sie unter dem Triggerknoten das
Symbol "Knoten hinzufügen" aus.Wählen Sie Ein Werkzeug hinzufügen>Neue Eingabeaufforderung aus.
Geben Sie im Eingabeaufforderungs-Editor einen repräsentativen Namen für Ihre Eingabeaufforderung ein, z. B. "Sprache erkennen".
Geben Sie im Bereich "Anweisungen " folgendes ein: "Bestimmen Sie, in welcher Sprache diese Nachricht geschrieben ist: ".
Wählen Sie unten im Bereich "Anweisungen " die Option "Inhalt hinzufügen" und dann "Text" aus. Ein Fenster wird angezeigt, in dem Sie aufgefordert werden, einen Namen und eine Beispielmeldung einzugeben.
Geben Sie "Nachricht" für "Name" ein. Geben Sie für Beispieldaten "Nachricht vom Benutzer" ein, und wählen Sie "Schließen" aus.
Wechseln Sie im Modellantwort Bereich das Ausgabeformat auf JSON.
Klicken Sie auf Test. Ihre Eingabeaufforderung zeigt ein JSON-Literal mit einer einzelnen Eigenschaft an, die die Sprache als Englisch identifiziert.
Wählen Sie Speichern aus. Auf der Leinwand wird ein Eingabeaufforderungsknoten angezeigt.
Konfigurieren Sie den Prompt-Knoten:
- Wählen Sie für die Eingabe die Systemvariable
Activity.Text(den Text der eingehenden Nachricht) aus. - Erstellen Sie für Output eine neue Variable namens .
- Wählen Sie für die Eingabe die Systemvariable
Verzweigen Sie Ihre Logik basierend auf der erkannten Sprache:
Fügen Sie eine Bedingung unterhalb des Eingabeaufforderungsknotens hinzu.
Basieren Sie die Bedingung auf der benutzerdefinierten Variablen
DetectedLanguage.structuredOutput.language, die den Namen der erkannten Sprache enthält.Fügen Sie für jede Sprache, die Sie erkennen müssen, einen Bedingungszweig hinzu.
Fügen Sie unter jeder Verzweigung einen Variablenwertknoten "Set" hinzu, um die
User.LanguageSystemvariable entsprechend festzulegen. Die folgende Abbildung zeigt ein Thema mit einer Bedingung, um zwischen Niederländisch und Englisch zu wechseln.
Problembehandlung eines mehrsprachigen Agenten
Dieser Abschnitt enthält Tipps, um unerwartetes mehrsprachiges Agent-Verhalten zu verstehen.
Das Verhalten mehrsprachiger Agenten bei Sprachen, die nicht konfiguriert sind
Wenn ein Benutzer seinen Browser für eine Sprache konfiguriert, die Sie nicht für den Agent konfiguriert haben, greift der Agent auf seine primäre Sprache zurück.
Sie geben die primäre Sprache für einen Agent an, wenn Sie den Agent erstellen. Sie können die primäre Sprache nach der Erstellung nicht ändern, aber Sie können die Region für die primäre Sprache des Agents ändern, wenn mehrere Regionen verfügbar sind.
Verhalten mehrsprachiger Agenten bei fehlenden Übersetzungen
Wenn Sie einem Agenten Nachrichten in seiner Primärsprache hinzufügen, aber die Übersetzungen für die neuen Nachrichten nicht hochladen, zeigt der Agent die nicht übersetzten Nachrichten in seiner Primärsprache an. Stellen Sie immer sicher, dass die Übersetzungen dem neusten Datum entsprechen, nachdem Sie Änderungen an einem Agent vorgenommen haben.
Lokalisierungsdateien enthalten keine gemischt-typisierten Zeichenfolgen aus Adaptiven Karten. Wenn Sie adaptive Karten lokalisieren müssen, bei denen eine Zeichenfolge sowohl statischen Text als auch Variablen (dynamischer Inhalt) enthalten kann, müssen Sie eine Problemumgehung verwenden. Erfahren Sie, wie Sie eine gemischte Zeichenfolge in einer Textvariable speichern , bevor Sie sie in einer adaptiven Karte verwenden.
Fehler beim Veröffentlichen einem mehrsprachigen Agenten
Wenn Sie versuchen, einen mehrsprachigen Agent zu veröffentlichen und die Fehlermeldung „Überprüfung für den Bot fehlgeschlagen“ mit dem Rohantwort-Fehlercode SynonymsNotUnique, angezeigt wird, enthält Ihre Lokalisierungsdatei entweder doppelte Synonyme oder ein Synonym, das einem DisplayName-Wert entspricht. Dieser Fehler tritt in der Regel auf, wenn ein Knoten ein Entity.Definition.'closedListItem' enthält, bei dem entweder eines der folgenden Szenarien aufgetreten ist:
- Eines der
SynonymsElemente ist nicht eindeutig. - Eines der
Synonyms-Elemente hat denselben Wert wie dasDisplayName-Element.
Alle Synonyms für dieselbe Entität müssen eindeutig sein und einen anderen Namen als das DisplayName-Element haben.
Um den Fehler zu beheben, überprüfen Sie die JSON- oder ResX-Datei für Ihre sekundäre Sprache, und identifizieren Sie alle Instanzen, in denen diese Bedingung möglicherweise vorhanden ist.