Настройка и создание многоязычных агентов
Многоязычные агенты — это агенты, которые могут общаться с клиентами на разных языках, сохраняя при этом весь контент в одном агент. Во многих случаях они могут автоматически определять нужный язык на основе настроек веб-браузера пользователя агент и отвечать на том же языке, обеспечивая более персонализированный и привлекательный опыт для клиентов.
Список поддерживаемых языков см. в разделе Поддержка языков.
Заметка
Copilot Studio Классические чат-боты не поддерживают многоязычных агентов. Дополнительные сведения о преобразовании классического чат-бота в агент см. в разделе Обновление до Copilot Studio единой разработки.
При публикации в канале, если в начале сеанса язык не указан, многоязычный агент автоматически переходит на основной язык. Вы можете настроить агент для изменения языка во время разговора, см. Рекомендации по разработке многоязычных агентов.
Настройка многоязычного агента
При первоначальном создании агента определяется основной язык. Дополнительные сведения о том, как выбрать основной язык агент, см. в разделе Поддержка языков.
Чтобы включить многоязычный агент:
Открыв агент, выберите Параметры в верхней части страницы, а затем выберите Языки.
Выберите Добавить языки на странице Параметры.
Выберите языки, которые вы хотите добавить в агент, в области Добавить языки и выберите Добавить языки внизу.
Убедитесь, что список языков указан правильно на странице Языки.
Заметка
Вы можете добавить в агент столько дополнительных языков, сколько захотите, при условии, что они есть в списке поддерживаемых языков.
Управление локализацией в мультиязычном агенте
Заметка
Все редактирование тем и контента агента должно производиться на основном языке агента. Чтобы редактировать дополнительный язык агента для локализации строк, необходимо выполнить действия, описанные в этом разделе
После локализации строк агента и отправки их в агент, как описано здесь, вы можете увидеть локализованное содержимое на авторском холсте, переключив язык в тесте агента.
Чтобы добавить строки локализации в многоязычный агент:
Открыв агент, выберите Параметры в верхней части страницы, а затем выберите Языки.
На странице Языки в таблице добавленных дополнительных языков выберите Отправить в столбце Локализация для языка, который вы хотите обновить.
На странице Обновление локализаций для выбранного дополнительного языка выберите формат JSON или ResX, чтобы загрузить текущий файл локализации для этого языка.
Заметка
Загруженный файл содержит последнюю версию локализации агента. Если вам нужно загрузить предыдущие версии файла локализации, откройте решение агента, чтобы загрузить предыдущие версии.
Откройте загруженный файл и замените строки основного языка соответствующим переведенным текстом.
Вернуться на страница Обновить локализации, выберите Просмотреть и отправьте переведенный файл.
Закройте страницу Обновить локализации.
Обновление локализованного контента
При первой загрузке файла локализации для дополнительного языка строки отображаются на основном языке. Загрузив файл локализации, используйте его в предпочитаемом процессе локализации.
При внесении изменений в строки основного языка необходимо также обновить локализованное содержимое на дополнительном языке. Этот процесс включает в себя как новое, так и измененное содержимое. Инкрементные изменения не переводятся автоматически. Необходимо загрузить файл JSON или ResX на дополнительном языке и обновить непереведенные строки, используя предпочитаемый процесс локализации.
Следующий сценарий является типичным для рабочего процесса для переведенного содержимого. Ранее вы перевели свой основной язык (en-US) на дополнительный язык (fr-FR), а также добавили и изменили содержимое на основном языке. При загрузке файла локализации на дополнительный язык все новое содержимое отображается на основном языке (en-US). Однако измененное содержимое по-прежнему отображается на дополнительном языке. Поскольку измененное содержимое использует тот же идентификатор, необходимо сравнить новый файл с ранее загруженным.
Рекомендации по разработке многоязычных агентов
При разработке можно настроить агент для изменения текущего разговорного языка в середине разговора. Эта логика может находиться в любой теме агента. Однако рекомендуется переключать язык непосредственно после узла Вопрос, чтобы гарантировать, что все последующие сообщения до следующего узла Вопрос будут на том же языке.
Чтобы изменить текущий язык агента, вы можете установить значение переменной User.Language
на один из дополнительных языков агента. Этот выбор мгновенно меняет язык, на котором говорит ваш агент.
Тестирование многоязычного агента
Чтобы протестировать многоязычный агент:
Откройте панель Тестирование агента.
Откройте меню в верхней части тестового агента и выберите один из дополнительных языков.
Тест агент перезагружается, на этот раз используя выбранный дополнительный язык. На холсте разработки отображается дополнительный язык.
Чтобы протестировать агент, введите сообщение на дополнительном языке.
Вы также можете установить язык браузера на дополнительный язык, поддерживаемый вашим агентом, и открыть Демонстрационный веб-сайт агента. Демонстрационный веб-сайт открывается на дополнительном языке, а агент общается с помощью строк на дополнительном языке.
Поведение многоязычного агента для языков, которые не настроены
Если браузер пользователя агент настроен на язык, для которого агент не был настроен, агент всегда возвращается к своему основному языку.
Внимание!
Основной язык агента не может быть изменен после создания агента.
Поведение многоязычного агента при отсутствии переводов
Если автор агента вносит изменения в агент на основном языке и не отправляет переводы, агент показывает непереведенные изменения на основном языке помощника. Всегда проверяйте актуальность переводов после внесения изменений в агент на основном языке.
Ошибки при публикации мультиязычного агента
Если при попытке опубликовать многоязычный файл агент появляется сообщение об ошибке "Ошибка проверки бота" с кодом ошибки необработанного ответа, SynonymsNotUnique
это означает, что дополнительный файл локализации содержит либо повторяющиеся синонимы, либо синоним, соответствующий DisplayName
значению. Эта ошибка обычно возникает, когда узел содержит Entity.Definition.'closedListItem'
, где произошел один из следующих сценариев:
- Один из
Synonyms
элементов не уникален . - Один из
Synonyms
элементов имеет то же значение, что и элементDisplayName
.
Все Synonyms
для одной сущности должны быть уникальными и иметь имя, отличное от DisplayName
имени элемента.
Чтобы исправить ошибку, просмотрите файл JSON или ResX вашего дополнительного языка и определите все случаи, в которых может присутствовать это условие.