Поделиться через


Использование классического чат-бота в качестве навыка в боте Bot Framework

Заметка

В данной статье содержится информация, применимая только к Copilot Studio классическим чат-ботам. Эта функция недоступна в новом Copilot Studio опыте.

Когда вы используете классического чат-бота как навык с Bot Framework бот, Bot Framework бот определяет, соответствует ли что-либо, сказанное пользователем, триггерным фразам классического чат-бота. Если есть совпадение, Bot Framework бот передает разговор классическому чат-боту. Классический чат-бот извлекает любые сущности и запускает соответствующий тема.

Вы также можете передать переменную в Copilot Studio навык тема в качестве входных данных из Bot Framework Composer и использовать возвращаемые им выходные данные.

Внимание!

Для использования классических чат-ботов в качестве навыки вам необходима пробная или полная Copilot Studio лицензия. Эта возможность недоступна в лицензии Teams Copilot Studio .

Чтобы настроить вашего классического чат-бота как навык:

  1. Добавьте Bot Framework бот в список разрешенных для классического чат-бота.

  2. Загрузите манифест навык для классического чат-бота.

  3. Используйте загруженный манифест навык в Bot Framework Composer для создания соединения между ботами.

  4. Используйте Bot Framework эмулятор, чтобы убедиться, что бот работает как навык.

Предварительные условия

Добавьте свой Bot Framework бот в список разрешенных для вашего классического чат-бота

Добавьте идентификатор приложения Bot Framework бот в список разрешенных для классического чат-бота, которого вы хотите использовать как навык. Боты должны находиться в одном клиенте.

  1. В Bot Framework Composer откройте бота, который будет использовать навык. Выберите Настроить, а затем выберите Ресурсы разработки. Скопируйте идентификатор в идентификатор приложения Майкрософт.

  2. В Copilot Studio откройте классический чат-бот, которого вы хотите использовать как навык.

  3. В меню навигации перейдите в раздел Параметры и выберите Безопасность. Затем выберите Список разрешений.

  4. Выберите Добавить разрешенного вызывающего.

  5. Вставьте идентификатор приложения вашего бота Bot Framework и выберите Далее.

    Внимание

    Классический чат-бот не может выступать в качестве навык для других классических чат-ботов. Если вы попытаетесь добавить идентификатор приложения, принадлежащий боту Power Virtual Agent, в список разрешений, вы получите сообщение об ошибке. Вы можете добавить идентификатор приложения только для бота Bot Framework.

    Copilot Studio проверяет идентификатор приложения Bot Framework бот и подтверждает, что он принадлежит бот в том же клиенте.

  6. (Необязательно) Добавьте Отображаемое имя для вами бота, добавленного в список разрешений.

  7. Выберите Сохранить.

Бот Bot Framework отображается по отображаемому имени, если вы его ввели, или по идентификатору приложения, если вы не ввели отображаемое имя. Чтобы удалить или отредактировать его в любое время, выберите значок справа от отображаемого имени идентификатора бота или идентификатора приложения.

Заметка

Боты Bot Framework, добавленные в список разрешений, не будут экспортированы как часть содержимого бота.

Загрузите манифест классического чат-бота навык для вашего классического чат-бота

Bot Framework Боты могут использовать манифест Copilot Studio навык для настройки соединения с классическим чат-ботом, создавшим манифест.

У всех классических чат-ботов есть манифесты навык. Это файлы JSON, содержащие название навыка, интерфейс и фразы-триггеры.

A Bot Framework бот может использовать манифест навык, чтобы знать, когда запускать классический чат-бот (например, в ответ в ответ на что-то, что пользователь ему говорит).

Copilot Studio Манифесты навык соответствуют версии 2.2 Bot Framework схемы манифеста навык и состоят из файлов intents.lu и manifest.json .

A Bot Framework бот может решить, что классический чат-бот должен обрабатывать запрос пользователя, основываясь на данных манифеста. Он передает классическому чат-боту все, что сказал пользователь. Затем классический чат-бот сопоставляет то, что сказал пользователь с Copilot Studio тема, извлекает любые сущности, необходимые для заполнения слотов, и запускает Copilot Studio тема.

Copilot Studio Манифесты навык автоматически генерируются и обновляются. Классический чат-бот имеет два манифеста навык:

  • Тестовый манифест: позволяет Bot Framework бот подключаться к тестовой версии вашего классического чат-бота. Используйте тестовый манифест для проверки изменений в вашем навыке перед его публикацией.

    • Тестовый манифест сразу же доступен для каждого вновь созданного классического чат-бота.
    • Он автоматически обновляется, отражая изменения каждый раз, когда вы сохраняете своего классического чат-бота.
  • Опубликованный манифест: позволяет Bot Framework бот подключаться к опубликованной версии вашего классического чат-бота.

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

Заметка

Опубликованный манифест недоступен для классических чат-ботов, которые никогда не публиковались.

Чтобы сгенерировать опубликованный манифест вашего бот, опубликуйте своего классического чат-бота.

Оба манифеста навыков показаны на панели Управление списком разрешений.

Манифесты навыков также отображаются на странице сведений о помощнике. В меню навигации выберите Параметры, затем выберите Сведения. На странице Сведения показаны другие метаданные, включая Код среды, Код клиента и Код приложения бота.

Чтобы загрузить манифест, выберите его. Он загружается как .zip-файл с меткой _<бот имя>manifest для опубликованного манифеста или <бот имя>test__manifest для тестового манифеста.

Заметка

Манифест навык не включает системные темы и диалоги Composer, которые добавляются в классический чат-бот. Включаются только темы, созданные авторами помощников, и триггеры намерений Composer, которые авторы добавляют в бот.

Подключитесь к Copilot Studio навык в Composer

Используйте манифесты Copilot Studio навык для создания соединения навык в вашем Bot Framework бот в Composer.

  1. В проекте Bot Framework Composer выберите + Добавить, а потом выберите Подключиться к навыку.

  2. Найдите и выберите Copilot Studio архив манифеста .zip, а затем нажмите Далее.

  3. Выберите темы или намерения в вашем классическом чат-боте, которые вы хотите добавить в свой Bot Framework бот, а затем нажмите Далее.

  4. Просмотрите и отредактируйте триггерные фразы для вашего классического чат-бота, а затем нажмите Далее.

  5. Убедитесь, что выбрано Использовать оркестратор для проектов с несколькими ботами, а затем выберите Продолжить.

  6. Убедитесь, что Copilot Studio навык правильно добавлен в ваш Bot Framework бот и что в проекте в Composer появился новый триггер с именем вашего классического чат-бота.

Найдите тему в манифесте навыка

Используйте событие для запуска Copilot Studio тема в навык. Чтобы вызвать определенную тему из Composer, обратитесь к теме по имени связанного события в манифесте навыка.

  1. Выберите действие Подключиться к навыку.

  2. В Название диалогового окна навыка выберите Показать манифест навыка.

  3. Найдите действия в манифесте. Это свойство содержит вложенные свойства, которые представляют темы, доступные в вашем классическом чат-боте.

  4. Найдите тему, которую вы хотите вызывать, и найдите ее свойство name. Когда Copilot Studio навык получает событие с этим именем, оно запускает тема.

    В этом примере имя действия события — dispatchTo_new_topic_87609dabd86049f7bc6507c6f7263aba_33d.

Позвоните Copilot Studio навык тема

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

  1. На холсте разработки Composer выберите Добавить, затем выберите Доступ к внешним ресурсам, а затем выберите Подключиться к навыку.

  2. В списке навык Dialog Name выберите своего классического чат-бота.

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

  4. Выберите Закрыть.

  5. В разделе Действие выберите Показать код.

  6. Введите или вставьте следующий код. Замените TOPIC_ACTIVITY_NAME на название действия события вашей темы. Убедитесь, что в свойстве name нет кавычек.

    [Activity
        type = event
        name = TOPIC_ACTIVITY_NAME
    ]
    

Передайте входную переменную в Copilot Studio навык тема

Bot Framework Composer может передать переменную в Copilot Studio навык тема в качестве входных данных. Чтобы узнать, как создавать Copilot Studio темы, принимающие входные переменные, см. раздел Работа с переменными.

Если в вашем манифесте навык указан Copilot Studio тема, который может принимать входную переменную, вы можете передать ему переменную Composer.

  1. На холсте разработки Composer выберите Добавить, затем выберите Доступ к внешним ресурсам, а затем выберите Подключиться к навыку.

  2. В списке навык Dialog Name выберите своего классического чат-бота.

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

  4. Найдите свойство value темы. Свойство value содержит свойство $ref. Скопируйте значение и сохраните его для использования в следующем шаге.

    Предупреждение

    Если у Copilot Studio тема нет входных данных, у него не будет свойства value .

  5. Найдите свойство definitions, затем найдите вложенное свойство, соответствующее значению $ref, которое вы нашли на предыдущем шаге. Обратите внимание на имена и типы входных данных Copilot Studio тема. Вы будете использовать их в следующих шагах.

  6. Выберите Закрыть.

  7. В разделе Действие выберите Показать код.

  8. Введите или вставьте следующий код. Замените эти значения:

    1. Замените TOPIC_ACTIVITY_NAME на название действия события вашей темы.
    2. Замените PVA_INPUT_VARIABLE на входную переменную из вашей темы.
    3. Замените 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 в классическом чат-боте тема dispatchTo_new_topic_127cdcdbbb4a480ea113c5101f309089_21a34f16.

Получить выходную переменную из Copilot Studio навык тема

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

  1. На холсте разработки Composer выберите Добавить, затем выберите Доступ к внешним ресурсам, а затем выберите Подключиться к навыку.

  2. В списке навык Dialog Name выберите своего классического чат-бота.

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

  4. Найдите свойство resultValue темы. Свойство resultValue содержит свойство $ref. Скопируйте значение и сохраните его для использования в следующем шаге.

    Предупреждение

    Если у Copilot Studio тема нет выходных данных, у него не будет свойства resultValue .

  5. Найдите свойство definitions, затем найдите вложенное свойство, соответствующее значению $ref, которое вы нашли на предыдущем шаге. Обратите внимание на имена и типы выходных переменных Copilot Studio тема. Вы будете использовать их в следующих шагах.

    В этом примере Copilot Studio тема возвращает два выходных значения типа String, pva_State и pva_Item.

  6. Выберите Закрыть.

  7. В разделе Действие выберите Показать код.

  8. Введите или вставьте следующий код. Замените TOPIC_ACTIVITY_NAME на название действия события вашей темы. Убедитесь, что в свойстве name нет кавычек.

    [Activity
        type = event
        name = TOPIC_ACTIVITY_NAME
    ]
    
  9. В области кода задайте Свойство переменной Composer для получения и сохранения выходных значений из Copilot Studio навык тема.

  10. На холсте разработки Composer выберите Добавить, затем выберите Управление свойствами, а затем выберите Установить свойства.

  11. Задайте Свойство для значения Composer, которое должно хранить извлеченное значение. Затем установите Значение как переменную Composer, в которой вы сохранили выходные данные темы.

    В этом примере выходные значения из dialog.skillResult.pvaState и dialog.skillResult.pvaItem извлекаются в новые переменные Composer dialog.State и dialog.Item.

Протестируйте своего классического чат-бота как навык с помощью Bot Framework бот

Используйте Bot Framework Эмулятор , чтобы проверить, что ваш Bot Framework бот правильно вызывает классический чат-бот как навык.

Внимание!

Ваш Bot Framework бот должен быть добавлен в список разрешенных классического чат-бота для работы соединения навык.

Подробнее