Использование классического чат-бота в качестве навыка в боте Bot Framework
Заметка
В этой статье содержится информация, применимая только к классическим чат-ботам Microsoft Copilot Studio. В новом интерфейсе Microsoft Copilot Studio эта функция недоступна.
Когда вы используете помощник Microsoft Copilot Studio как навык с ботом Bot Framework, бот Bot Framework определяет, совпадает ли что-нибудь, сказанное пользователем бота с фразами-триггерами помощника Microsoft Copilot Studio. Если есть совпадение, бот Bot Framework переводит разговор на бота Microsoft Copilot Studio. Помощник Microsoft Copilot Studio извлекает любые сущности и запускает соответствующую тему.
Вы также можете передать переменную в тему навыка Microsoft Copilot Studio в качестве ввода из Bot Framework Composer и использовать выходные данные, которые он возвращает.
Внимание
У вас должна быть пробная или полная лицензия Microsoft Copilot Studio на использование ботов Microsoft Copilot Studio как навыков. Эта функция недоступна для лицензии Teams Microsoft Copilot Studio.
Чтобы настроить свой помощник Microsoft Copilot Studio как навык:
- Добавьте бот Bot Framework в список разрешений для помощника Microsoft Copilot Studio.
- Загрузите манифест навыков для помощника Microsoft Copilot Studio.
- Используйте загруженный манифест навыка в Bot Framework Composer для создания связи между ботами.
- Используйте Bot Framework Emulator, чтобы подтвердить, что бот работает как навык.
Предварительные условия
- Понимание, как работают навыки Bot Framework.
- Узнайте, как использовать Bot Framework Composer.
- Узнайте, как использовать навыки в Bot Framework Composer.
- Получите свой идентификатор приложения бота Bot Framework.
Добавьте своего бота Bot Framework в список разрешений для своего помощника Microsoft Copilot Studio
Добавьте идентификатор приложения бота Bot Framework в список разрешений для помощника Microsoft Copilot Studio, который вы хотите использовать в качестве навыка. Боты должны находиться в одном клиенте.
В Bot Framework Composer откройте бота, который будет использовать навык. Выберите Настроить, а затем выберите Ресурсы разработки. Скопируйте идентификатор в идентификатор приложения Майкрософт.
В Microsoft Copilot Studio откройте помощник, который хотите использовать в качестве навыка.
В меню навигации перейдите в раздел Параметры и выберите Безопасность. Затем выберите Список разрешений.
Выберите Добавить разрешенного вызывающего.
Вставьте идентификатор приложения вашего бота Bot Framework и выберите Далее.
Внимание
Помощник Microsoft Copilot Studio не может действовать как навык для других помощников Microsoft Copilot Studio. Если вы попытаетесь добавить идентификатор приложения, принадлежащий боту Power Virtual Agent, в список разрешений, вы получите сообщение об ошибке. Вы можете добавить идентификатор приложения только для бота Bot Framework.
Microsoft Copilot Studio проверяет идентификатор приложения бота Bot Framework и подтверждает, что он принадлежит боту в том же клиенте.
(Необязательно) Добавьте Отображаемое имя для вами бота, добавленного в список разрешений.
Выберите Сохранить.
Бот Bot Framework отображается по отображаемому имени, если вы его ввели, или по идентификатору приложения, если вы не ввели отображаемое имя. Чтобы удалить или отредактировать его в любое время, выберите значок справа от отображаемого имени идентификатора бота или идентификатора приложения.
Заметка
Боты Bot Framework, добавленные в список разрешений, не будут экспортированы как часть содержимого бота.
Загрузка манифеста навыков помощника для вашего помощника Microsoft Copilot Studio
Помощники Bot Framework могут использовать манифест навыка Microsoft Copilot Studio для настройки соединения с помощником, создавшим манифест.
У всех помощников Microsoft Copilot Studio есть манифесты навыков. Это файлы JSON, содержащие название навыка, интерфейс и фразы-триггеры.
Бот Bot Framework может использовать манифест навыка, чтобы знать, когда запускать бота Microsoft Copilot Studio (например, в ответ на что-то, что пользователь говорит ему).
Манифесты навыков Microsoft Copilot Studio соответствуют версии 2.2 схемы манифеста навыков Bot Framework и состоят из файлов intents.lu и manifest.json.
Бот Bot Framework может решить, что помощник Microsoft Copilot Studio должен обрабатывать запрос пользователя на основе данных манифеста. Он передает помощнику все, что сказал пользователь. Затем собственный помощник Microsoft Copilot Studio сопоставляет сказанное пользователем с темой Microsoft Copilot Studio, извлекает все сущности, необходимые для заполнения слотов, и вызывает тему Microsoft Copilot Studio.
Манифесты навыков Microsoft Copilot Studio генерируются и обновляются автоматически. У помощника Microsoft Copilot Studio есть два манифеста навыков:
Тестовый манифест: позволяет боту Bot Framework подключаться к тестовой версии вашего помощника Microsoft Copilot Studio. Используйте тестовый манифест для проверки изменений в вашем навыке перед его публикацией.
- Тестовый манифест доступен сразу для каждого вновь созданного бота Microsoft Copilot Studio.
- Он автоматически обновляется, чтобы отражать изменения каждый раз, когда вы сохраняете своего помощника.
Опубликованный манифест: позволяет боту Bot Framework подключаться к опубликованной версии вашего помощника Microsoft Copilot Studio.
- Опубликованный манифест доступен только для помощников Microsoft Copilot Studio, которые были опубликованы хотя бы один раз.
- Он автоматически обновляется, чтобы отражать изменения каждый раз, когда вы публикуете свой помощник.
Заметка
Опубликованный манифест недоступен для помощников Microsoft Copilot Studio, которые никогда не были опубликованы.
Для создания опубликованного манифеста для вашего бота опубликуйте свой помощник Microsoft Copilot Studio.
Оба манифеста навыков показаны на панели Управление списком разрешений.
Манифесты навыков также отображаются на странице сведений о помощнике. В меню навигации выберите Параметры, затем выберите Сведения. На странице Сведения показаны другие метаданные, включая Код среды, Код клиента и Код приложения бота.
Чтобы загрузить манифест, выберите его. Он загружается в виде ZIP-файла с именем <bot name>_manifest в случае опубликованного манифеста или <bot name>_test__manifest в случае тестового манифеста.
Заметка
Манифест навыка должен включает системные темы и диалоги Composer, добавленные в помощник Microsoft Copilot Studio. Включаются только темы, созданные авторами помощников, и триггеры намерений Composer, которые авторы добавляют в бот.
Подключитесь к навыку в Microsoft Copilot Studio Composer
Используйте манифесты бота Microsoft Copilot Studio, чтобы создать подключение навыка в вашем боте Bot Framework в Composer.
В проекте Bot Framework Composer выберите + Добавить, а потом выберите Подключиться к навыку.
Найдите и выберите ZIP-архив манифеста Microsoft Copilot Studio, а затем выберите Далее.
Выберите темы или намерения в своем помощнике Microsoft Copilot Studio, которые вы хотите добавить в бот Bot Framework, и выберите Далее.
Проверьте и отредактируйте фразы-триггеры для своего помощника Microsoft Copilot Studio и выберите Далее.
Убедитесь, что выбрано Использовать оркестратор для проектов с несколькими ботами, а затем выберите Продолжить.
Убедитесь, что навык Microsoft Copilot Studio добавлен в вашего бота Bot Framework правильно и новый триггер с вашим именем помощника Microsoft Copilot Studio находится в проекте в Composer.
Найдите тему в манифесте навыка
Используйте событие для запуска темы Microsoft Copilot Studio в навыке. Чтобы вызвать определенную тему из Composer, обратитесь к теме по имени связанного события в манифесте навыка.
Выберите действие Подключиться к навыку.
В Название диалогового окна навыка выберите Показать манифест навыка.
Найдите действия в манифесте. Это свойство содержит вложенные свойства, представляющие темы, доступные из вашего помощника Microsoft Copilot Studio.
Найдите тему, которую вы хотите вызывать, и найдите ее свойство name. Когда навык Microsoft Copilot Studio получает событие с этим именем, оно запускает тему.
В следующем примере имя действия события —
dispatchTo_new_topic_87609dabd86049f7bc6507c6f7263aba_33d
.
Вызовите тему навыка Microsoft Copilot Studio
Вместо того, чтобы полагаться на то, что говорит пользователь для вызова темы навыка Microsoft Copilot Studio, можно вызвать напрямую. Можно напрямую вызывать только темы Microsoft Copilot Studio, перечисленные в манифесте навыков.
На холсте разработки Composer выберите Добавить, затем выберите Доступ к внешним ресурсам, а затем выберите Подключиться к навыку.
В списке Название диалогового окна навыка выберите свой помощник Microsoft Copilot Studio.
Найдите имя действия события для темы бота Microsoft Copilot Studio, которую вы хотите вызвать. Скопируйте значение, убрав кавычки, и сохраните его для использования в следующих шагах.
Выберите Закрыть.
В разделе Действие выберите Показать код.
Введите или вставьте следующий код. Замените
TOPIC_ACTIVITY_NAME
на название действия события вашей темы. Убедитесь, что в свойстве name нет кавычек.[Activity type = event name = TOPIC_ACTIVITY_NAME ]
Передайте входную переменную в тему навыка Microsoft Copilot Studio
Bot Framework Composer может передать переменную в тему навыка Microsoft Copilot Studio в качестве ввода. См. раздел Работа с переменными, чтобы научиться создавать темы Microsoft Copilot Studio, которые принимают входные переменные.
Если тема Microsoft Copilot Studio, которая может получать входную переменную, указана в вашем манифесте навыка, вы можете передать ей переменную Composer.
На холсте разработки Composer выберите Добавить, затем выберите Доступ к внешним ресурсам, а затем выберите Подключиться к навыку.
В списке Название диалогового окна навыка выберите свой помощник Microsoft Copilot Studio.
Найдите имя действия события для темы помощника Microsoft Copilot Studio, которую вы хотите вызвать. Скопируйте значение, убрав кавычки, и сохраните его для использования в следующих шагах.
Найдите свойство value темы. Свойство value содержит свойство $ref. Скопируйте значение и сохраните его для использования в следующем шаге.
Предупреждение
Если тема Microsoft Copilot Studio не имеет входных данных, она не будет содержать свойство value.
Найдите свойство definitions, затем найдите вложенное свойство, соответствующее значению $ref, которое вы нашли на предыдущем шаге. Обратите внимание на имена и типы вводных данных темы Microsoft Copilot Studio. Вы будете использовать их в следующих шагах.
Выберите Закрыть.
В разделе Действие выберите Показать код.
Введите или вставьте следующий код. Замените эти значения:
- Замените
TOPIC_ACTIVITY_NAME
на название действия события вашей темы. - Замените
PVA_INPUT_VARIABLE
на входную переменную из вашей темы. - Замените
COMPOSER_INPUT_VARIABLE
на переменную Composer, которая предоставит значение.
[Activity Type = event Name = TOPIC_ACTIVITY_NAME Value = ${addProperty(json("{}"), 'PVA_INPUT_VARIABLE', COMPOSER_INPUT_VARIABLE)} ]
В следующем примере переменная Composer
dialog.storeLocation
содержит значения входной переменнойpva_StoreLocation
в теме помощника Microsoft Copilot StudiodispatchTo_new_topic_127cdcdbbb4a480ea113c5101f309089_21a34f16
.- Замените
Получите выходную переменную из темы навыка Microsoft Copilot Studio
Возможно получение выходных данных из темы навыка Microsoft Copilot Studio в Composer. См. раздел Работа с переменными, чтобы научиться создавать темы Microsoft Copilot Studio, которые возвращают выходные данные.
На холсте разработки Composer выберите Добавить, затем выберите Доступ к внешним ресурсам, а затем выберите Подключиться к навыку.
В списке Название диалогового окна навыка выберите свой помощник Microsoft Copilot Studio.
Найдите имя действия события для темы бота Microsoft Copilot Studio, которую вы хотите вызвать. Скопируйте значение, убрав кавычки, и сохраните его для использования в следующих шагах.
Найдите свойство resultValue темы. Свойство resultValue содержит свойство $ref. Скопируйте значение и сохраните его для использования в следующем шаге.
Предупреждение
Если тема Microsoft Copilot Studio не имеет выходных данных, она не будет содержать свойство resultValue.
Найдите свойство definitions, затем найдите вложенное свойство, соответствующее значению $ref, которое вы нашли на предыдущем шаге. Обратите внимание на имена и типы выходных переменных Microsoft Copilot Studio. Вы будете использовать их в следующих шагах.
В следующем примере тема Microsoft Copilot Studio возвращает два вывода типа String, pva_State и pva_Item.
Выберите Закрыть.
В разделе Действие выберите Показать код.
Введите или вставьте следующий код. Замените
TOPIC_ACTIVITY_NAME
на название действия события вашей темы. Убедитесь, что в свойстве name нет кавычек.[Activity type = event name = TOPIC_ACTIVITY_NAME ]
В области кода установите Свойство как переменную Composer для получения и сохранения выходных значений из темы навыка Microsoft Copilot Studio.
На холсте разработки Composer выберите Добавить, затем выберите Управление свойствами, а затем выберите Установить свойства.
Задайте Свойство для значения Composer, которое должно хранить извлеченное значение. Затем установите Значение как переменную Composer, в которой вы сохранили выходные данные темы.
В следующем примере выходные значения из dialog.skillResult.pvaState и dialog.skillResult.pvaItem извлекаются в новые переменные Composer dialog.State и dialog.Item.
Проверьте свой помощник Microsoft Copilot Studio как навык с ботом Bot Framework
Используйте Bot Framework Emulator, чтобы проверить, что ваш бот Bot Framework правильно вызывает помощник Microsoft Copilot Studio как навык.
Важно
Ваш бот Bot Framework должен быть добавлен в список разрешений помощника Microsoft Copilot Studio для работы подключения навыка.