Управление темами

Note

Функции, описанные в этой статье, питаются стандартным жгутом, который использует опции выставления счетов, описанные в разделе «Лицензирование для агентов, работающих на стандартном жгуте». Узнайте, как получить доступ к стандартным функциям в стандартных агентах и потоках агентов доступа.

Существует множество способов управлять своими темами. Copilot Studio включает средство проверки тем, которое позволяет выявлять ошибки в ваших темах. Вы можете включить или выключить темы, чтобы они не показывались людям, общающимся с вашим агентом. Вы также можете дублировать темы, чтобы упростить создание новых.

Просмотр ошибок темы

Когда вы сохраняете тему, Copilot Studio сообщает обо всех проблемах в теме.

  • Ошибки останавливают работу агента. Вы должны исправить их, прежде чем сможете опубликовать свой агент.
  • Предупреждения не останавливают работу агента, но могут привести к тому, что некоторые темы будут работать не так, как ожидалось. Появившиеся предупреждения следует устранять.

На странице Темы вы можете увидеть, есть ли в теме ошибки, а также количество ошибок, в столбце Ошибки. На этой странице отображаются только ошибки, поскольку, в отличие от предупреждений, они мешают работе вашего агента.

  1. Откройте свою тему на странице Темы.

  2. Выберите Проверка темы на панели инструментов.

    Появится панель Проверка темы, сообщающая об ошибках и предупреждениях для вашей темы.

  3. Выберите ошибку, чтобы перейти непосредственно к узлу, содержащему ошибку.

Включение и выключение темы

Темы могут иметь состояние Включено или Выключено, чтобы указать, можно ли их использовать или активировать в разговоре с агентом. По умолчанию новые темы создаются со статусом Вкл..

Чтобы изменить статус темы, перейдите на страницу Темы и используйте переключатель для нужной темы.

Когда тема находится в состоянии Вкл., она срабатывает ожидаемым образом. Темы активируются в результате своих фраз-триггеров или при перенаправлении из другой темы.

Когда тема отключена:

  • Значок темы станет серым с индикатором.
  • Тема не срабатывает вообще.
  • Тема не срабатывает, когда в разговоре используются фразы-триггеры или при перенаправлении из другой темы.
  • Средство проверки тем обнаруживает ошибку, если другая тема выполняет перенаправление на тему, которая находится в состоянии Выкл.
  • Когда вы публикуете агент, публикуются все темы, независимо от того, включены они или выключены.

Tip

Выключите тему (Выкл.), чтобы работать над ней в черновом состоянии. Оставьте его статус Выкл., пока публикуются изменения в других темах, готовых к публикации.

Копирование темы

После того как вы создали несколько тем, вы можете использовать одну из этих тем в качестве основы при создании новых тем.

На странице Темы нажмите три точки () рядом с названием темы, затем выберите Создать копию.

Это создает дубликат выбранной темы, к имени будет добавлено (Копия). Весь контент темы, такой как описание, фразы-триггеры и весь диалог, копируется в новую тему.

Чтобы избежать путаницы с исходной темой, имеющей те же фразы-триггеры, рассмотрите возможность выключить новую тему.

Когда вы закончите редактирование новой темы, включите его (Вкл.) для тестирования. Когда все будет готово, опубликуйте новую тему.

Тему можно копировать любое количество раз без ограничений. Каждая тема имеет свой внутренний идентификатор.

Переименование темы

Вы можете использовать панель инструментов холста разработки, чтобы быстро переименовать тему. На панели инструментов выберите Темы, затем выберите в списке имя темы. На странице темы выберите имя темы, введите новое имя и нажмите "Ввод".

Important

Избегайте использования точек (.) в названиях тем. Невозможно экспортировать решение, содержащее агент с точками в названии любой из его тем.

Перенаправление на другую тему

Чтобы перевести разговор с одной темы на другую, не начиная заново, добавьте узел Перенаправить. Когда разговор достигает конца темы назначения, он по умолчанию возобновляется в исходной теме. Вы можете вставить больше узлов после узла Перенаправление по желанию.

  1. Выберите значок Добавить узел под узлом, после которого должен произойти переход, наведите указатель на Управление темами и выберите Перейти к другой теме.

  2. Выберите из списка желаемую тему назначения.

  3. Передавайте переменные между темами, если требуется. Если тема, на которую вы перенаправляете, требует входных переменных или ожидается, что она вернет выходные переменные в исходную тему, введите или выберите значение для каждой из них.

  4. Сохраните тему, затем с помощью области Тестирование агента убедитесь, что агент успешно вызывает тему назначения.

Особенности состояния беседы при повторном вызове тем

Если ваша тема включает карточки предварительного просмотра, запросы подтверждения и действия соединителя (например, создание рабочего элемента Azure DevOps), ее нельзя повторно вызвать в рамках одной и той же беседы. Первое выполнение завершается как ожидается, но если вас перенаправляют к началу той же темы, оркестратор агента повторно использует существующее состояние диалога и может считать предыдущие шаги подтверждения уже завершенными. В результате выполнение может остановиться после предварительного просмотра.

Очистка переменных или перенаправление на стартовый узел не сбрасывает это состояние. Дублирование темы создает свежий диалоговый контекст, но этот подход не масштабируется для повторных исполнений. Чтобы обойти это ограничение:

  • Разделите поток на две темы:
    • Используйте родительскую (цикл) тему, чтобы спросить, хочет ли пользователь создать другой рабочий элемент.
    • Используйте дочернюю (исполнительную) тему для сбора данных, предварительного просмотра, подтверждения и создания рабочих элементов Azure DevOps.
  • Перенаправляйте между темами, чтобы надежно сбросить состояние разговора.

Этот подход позволяет пользователям создавать несколько рабочих элементов в рамках одной беседы без затруднений.

Завершение текущей темы или всех тем

По умолчанию перенаправленный разговор возвращается к исходной теме в конце вызываемой темы. Чтобы выйти из темы или завершить разговор, используйте узел Завершить текущую тему или Завершить все темы.

  • Узел Завершить текущую тему завершает текущую тему. Если текущая тема вызывается из другой темы, разговор немедленно возвращается в исходную тему. Обычно этот узел используется в ветви условия. Одна ветвь выходит из темы досрочно, а другая ветвь продолжает текущую тему.

  • Узел Завершить все темы завершает все активные темы немедленно. Ваш агент рассматривает следующее сообщение от пользователя как первое сообщение в новой беседе.

    Чтобы сообщить пользователю, что разговор окончен, добавьте узел Завершить разговорперед узлом Завершить все темы.

Многие из системных тем используют эти узлы для управления тем, как разговоры заканчиваются или начинаются заново. Узнайте, как использовать системные темы.

Tip

Узел Завершить все темы не очищает и не сбрасывает какие-либо глобальные переменные. Чтобы очистить глобальные переменные, используйте сначала узел Очистить все переменные. Пример этого можно увидеть в системной теме под названием Сброс разговора в Copilot Studio.