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


Возврат списка результатов

Распространенной практикой является запрос агент на поиск данных во внешней системе и возврат списка результатов. Чтобы сделать это, Microsoft Copilot Studio может вызвать поток Power Automate для следующих целей:

  • Аутентификация и подключение к внешнему решению
  • Выполнение запроса на основе входных данных пользователя
  • Форматирование результатов
  • Верните результаты в агент

В этом примере вы будете использовать соединитель Dataverse в Power Automate для поиска учетных записей. Затем вы вернете список результатов, который включает имя учетной записи, город и номер учетной записи, в Microsoft Copilot Studio.

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

Настройка таблицы учетной записи Dataverse

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

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

  1. Перейдите на портал Power Apps.

  2. В боковой области в разделе Dataverse выберите Таблицы.

  3. Выберите таблицу Учетная запись, затем на странице свойств таблицы выберите Изменить.

  4. Добавьте следующие строки в таблицу:

    Адрес 1: город Имя учетной записи Номер счета
    Сиэтл Contoso Inc AC0125
    Сан-Франциско Contoso Residences AC0255
    Olympia Доставка еды Contoso AC0035

Создание темы

  1. Перейдите на страницу Тем для вашего агент.

  2. Создайте тему с названием Поиск организации.

  3. Добавьте следующие триггерные фразы:

    • Я ищу клиента
    • Я ищу организацию
    • поиск организации
    • поиск клиента
  4. Добавьте узел Сообщение и введите сообщение Похоже, вы ищете организацию. Я могу поискать ее для вас..

  5. Добавьте узел Вопрос и введите сообщение Как называется клиент, которого вы ищете?.

  6. В поле Идентификация выберите Организация.

    Весь ответ пользователя также будет работать. Однако при выборе сущности Организация используются возможности понимания языка агент для извлечения названия организации из ответ.

    Снимок экрана новой темы с узлом сообщения и вопроса.

  7. Для поле Сохранить ответ как переименуйте переменную в организация.

Создание потока

  1. На холсте разработки выберите Добавить узел (+). Выберите Вызвать действие, затем выберите Создать поток.

  2. На портале Power Automate назовите поток Поиск организации.

  3. Добавьте входные данные Текст с именем Организация.

    Снимок экрана триггера потока с добавленными текстовые входными данными.

  4. Щелкните Вставить новый шаг (+), затем Добавить действие.

  5. Выберите соединитель Microsoft Dataverse, затем выберите действие Поиск строк.

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

    Снимок экрана: действие «Поиск строк» соединителя Dataverse.

  6. Для поля Условие поиска выберите переменную Организация.

  7. Выберите Показать дополнительные параметры и установите следующие элементы как заданные:

    • Элемент фильтра таблицы: account
    • Сортировать по позиции - 1: @search.score desc
    • Сортировать по позиции - 2: name asc

    Снимок экрана действий поиска строк с настроенными дополнительными параметрами.

Форматирование результатов

Действие Поиск строк возвращает переменную Список строк, которая содержит данные JSON. Прежде чем вы сможете использовать эти данные, вам необходимо проанализировать их с помощью действия Анализ JSON.

  1. Щелкните Вставить новый шаг (+), затем Добавить действие.

  2. Выберите соединитель Data Operation, затем выберите действие Анализ JSON.

  3. В поле Содержимое в разделе Поиск строк выберите переменную Список строк.

  4. Скопируйте следующую схему JSON и вставьте ее в поле Схема:

    {
        "type": "array",
        "items": {
            "type": "object",
            "properties": {
                "@@search.score": {
                    "type": "number"
                },
                "name": {
                    "type": "string"
                },
                "address1_city": {
                    "type": "string"
                },
                "accountnumber": {
                    "type": "string"
                }
            },
            "required": [
                "name"
            ]
        }
    }
    

    Снимок экрана схемы JSON, введенной в узел «Анализ JSON».

  5. Щелкните Вставить новый шаг (+), затем Добавить действие. Выберите соединитель Variable, затем выберите действие Инициализировать переменную.

  6. Для Имя введите ListOfAccounts. Для Тип выберите Строка.

    Снимок экрана действия инициализации переменной.

  7. Щелкните Вставить новый шаг (+), затем Добавить действие. Выберите соединитель Control, затем выберите действие Применить к каждому.

  8. Выберите поле Выберите выходные данные из предыдущих шагов, чтобы открыть меню Динамическое содержимое. Найдите основной текст, затем в Анализ JSON выберите переменную Основной текст.

  9. Щелкните Вставить новый шаг (+), затем Добавить действие. Выберите соединитель Variable, затем выберите действие Добавить к строковой переменной.

  10. Для Имя выберите ListOfAccounts. Скопируйте следующий текст и вставьте его в поле Значение:

    - @{items('Apply_to_each')['accountnumber']}: @{items('Apply_to_each')['name']} - @{items('Apply_to_each')['address1_city']}
    
  11. Добавьте перевод строки после фрагмент кода, чтобы каждый результат отображался на отдельной строке.

    Снимок экрана действия «Применить к каждому».

  12. В действии Возвращать значения в Microsoft Copilot Studio добавьте выходной параметр Текст. Для Имя введите FoundAccounts. Для Значение выберите ListOfAccounts.

    Снимок экрана: действие «Возврат значений в Microsoft Copilot Studio».

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

Вызов потока из Microsoft Copilot Studio

  1. На холсте разработки Microsoft Copilot Studio выберите Добавить узел (+), затем выберите Вызвать действие.

  2. Выберите поток, который вы создали ранее, Поиск организации.

  3. Для поля Организация получает значение из выберите переменную организация.

  4. Добавьте узел Сообщение и введите сообщение Хорошо, вот что удалось найти.

  5. Добавьте второй узел Сообщение. Выберите Вставить переменную, затем выберите FoundAccounts.

    Скриншот разговора с агент, который ответил списком найденных аккаунтов.

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

  7. Проверьте свой агент на панели Тест агент .

    Скриншот диалога агент на панели «Тест агент».