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


Загрузка расшифровок разговоров в Power Apps

Вы можете просматривать, экспортировать и скачивать расшифровки взаимодействий клиентов с вашим агентом как в Power Apps, так и в Copilot Studio. Информация, которую экспортирует каждое приложение, немного отличается.

Внимание!

Создатели с ролью Создатель среды не имеют автоматического доступа к расшифровкам.

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

По умолчанию Power Apps загружает расшифровки разговоров за последние 30 дней. Вы можете изменить период хранения.

Заметка

Ответы агентов, которые используют SharePoint в качестве источника знаний, не включаются в расшифровки разговоров.

Расшифровки разговоров не пишутся для:

  • Среды Microsoft Dataverse for Teams
  • Среды разработки Dataverse
  • Агенты Microsoft 365 Copilot

Необходимые условия

Просмотр и экспорт стенограммы разговора с портала Power Apps

  1. Выполните вход в Power Apps.

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

    Снимок экрана: в узле

  3. Введите "разговор" в поле Поиск.

  4. Выберите таблицу ConversationTranscript.

    Откроется страница таблицы ConversationTranscript.

  5. В верхней строке меню выберите Экспорт>Экспорт данных.

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

    Снимок экрана с меню «Экспорт» с параметром «Экспортировать данные».

  6. Подождите пару минут, пока Power Apps подготовит данные к экспорту, затем выберите Загрузить экспортированные данные.

    Файл сохраняется в виде ZIP-архива в папке загрузки по умолчанию браузера.

Общие сведения о расшифровках разговоров

Расшифровка разговора представляет собой файл CSV (значения, разделенные запятыми). Следующие таблицы описывают наиболее важные поля в расшифровках разговоров.

Поле Description Пример
Content Полная расшифровка в формате JSON См. Поле содержимого
ConversationStartTime Время начала разговора (не время записи расшифровки в хранилище данных) 2021-04-19T20:39:09Z
ConversationTranscript Уникальный идентификатор строки в таблице Dataverse 28eccb77-xxxx-4a63-985f-ffaaadd6f391
Metadata JSON, включающий идентификатор агента, идентификатор клиента и имя агента {"BotId": "aaaabbbb-0000-cccc-1111-dddd2222eeee", "AADTenantId": "bbbbcccc-1111-dddd-2222-eeee3333ffff", "BotName": "Test Bot"}
Name Имя настраиваемой строки, созданной из ConversationId, с последующими BotId и batch number. Номер пакета указывает порядок, когда разговор включает несколько аналитических сеансов. Классические боты не содержат номер пакета. 8YYe8iif49ZKkycZLe7HUO-o_198eca5f-xxxx-4ae6-8c08-835d884a8688_0
Bot_ConversationTranscript Идентификатор агента aaaabbbb-0000-cccc-1111-dddd2222eeee
Created on Дата и время создания записи расшифровки 2021-04-20T02:40:13Z

Поле содержимого

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

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

Дополнительные сведения о типах действий см. в разделе Схема действия Bot Framework.

В следующей таблице описаны некоторые ключевые поля в JSON содержимого:

Ключ Description
ID Уникальный GUID объекта действия
valueType Тип значения, хранящегося в действии; определяет, какую информацию предоставляет действие (Распространенные типы значений действий)
timestamp Отметка времени, когда действие было создано, в формате эпохи (количество секунд с полуночи 1 января 1970 года по всемирному координированному времени)
type Тип действия; например, message, event или trace
replyToId Идентификатор действия, на которое отвечает текущее действие
from Содержит поля id и role:
  • id — ИД вызывающего объекта
  • role — содержит 0 или 1
    • 0 - действие исходит от агента
    • 1 — действие исходит от пользователя, взаимодействующего с агентом
Примечания.
id может использоваться для расчета количества активных пользователей, которые взаимодействуют с агентом, если холст передает уникальный идентификатор пользователя. Если холст не передает идентификатор, передается уникальный идентификатор для каждого разговора.
Из соображений безопасности и конфиденциальности идентификатор хешируется перед записью в расшифровку.
channelId Идентификатор канала, из которого поступило действие; например, directline, msteams или facebook
textFormat Формат текста; например, plain или markdown
attachments Расширенные динамические данные, связанные с действием; например, AdaptiveCards, HeroCards или Carousel data
text Текст для действия message
value Поля, относящиеся к действию, в зависимости от типа значения; именно в этом поле содержится большая часть полезной информации
channeldata Содержит данные канала:
  • для сообщений:
    • DialogTraceDetail
    • DialogErrorDetail
    • VariableDetail (содержит значение, назначенное переменной)
    • CurrentMessageDetail
  • для событий:
    • cci_trace_id
    • traceHistory
    • enableDiagnostics
    • clientTimestamp
    • clientActivityId
name Имя действия события; например, SetPVAContext

Общие типы значений действий

Тип значения действия Description
ConversationInfo Информация о том, ведется ли разговор из панели тестирования приложения Copilot Studio (isDesignMode), и языковый стандарт разговора
CSATSurveyRequest Пользователю предоставляется опрос об удовлетворенности клиента (CSAT)
CSATSurveyResponse Пользователь отвечает на опрос CSAT
DialogRedirect Пользователь перенаправляется на другую тему
ImpliedSuccess Пользователь дошел до узла вопроса в теме, где одно из условий указывает на системную тему CSAT Подтвержденный успех (только классические боты) или вызывает системную тему Окончание разговора
IntentRecognition Пользователь инициировал тему
PRRSurveyRequest Пользователя спросили, ответила ли эта тема на его вопрос из темы Конец разговора
PRRSurveyResponse Ответ пользователя на вопрос, ответила ли эта тема на его вопрос из темы Конец разговора
SessionInfo Тип (unengaged или engaged), исход (Escalated, Resolved, Abandon), а также количество ходов сеанса
VariableAssignment Значение назначено переменной

Расширенные расшифровки

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

Включение улучшенных расшифровок

  1. Откройте агента.

  2. Перейдите в раздел Параметры>Дополнительные.

  3. Выберите Улучшить расшифровки, затем включите параметр Включить сведения на уровне узла в расшифровки.

Снимок экрана со страницей параметров улучшенных расшифровок.

Данные на уровне узла

Если улучшенные расшифровки включены, тип действия nodeTraceData отображается в расшифровке для каждого узла, который был вызван темой. В следующей таблице описываются ключевые поля в значении действия nodeTraceData.

Ключ Описаниен
nodeID Идентификатор узла
nodeType Тип узла, например SendActivity или SearchAndSummarizeContent
startTime Метка времени при вызове узла
endTime Метка времени завершения выполнения узла
topicDisplayName Тема, вызывающая узел

Пользовательская аналитика

Некоторые сценарии, например фильтрация разговоров на основе пользовательской переменной, требуют специального подхода к аналитике. Клиенты, создающие пользовательские аналитические решения, могут принимать необработанные расшифровки в свои конвейеры данных или использовать надстройки, такие как Комплект Copilot Studio

Решение КПЭ разговора, входящее в комплект Copilot Studio, автоматически анализирует расшифровки и заполняет агрегированные данные в таблицах Dataverse.

Изменение периода хранения по умолчанию

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

Отмена существующего задания массового удаления

  1. В Power Apps выберите Параметры>Дополнительные параметры.

    Снимок экрана: меню параметров Power Apps с выделенным пунктом «Дополнительные параметры».

    Портал Dynamics 365 откроется в новой вкладке.

  2. Выберите значок каретки рядом с пунктом Параметры, затем в разделе Система выберите Управление данными.

    Снимок экрана меню параметров с выделенным пунктом «Управление данными».

  3. Выберите Групповое удаление записей.

  4. В списке Представление выберите Повторяющиеся системные задания массового удаления.

    Снимок экрана списка повторяющихся заданий массового удаления.

  5. Выберите задание Массовое удаление записей расшифровки разговоров старше 1 месяца.

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

  6. В списке Другие действия выберите Отмена.

    Снимок экрана списка других действий с выделенным пунктом «Отмена».

Создание нового задания массового удаления

  1. Чтобы запустить мастер массового удаления, выберите Создать, затем в мастере выберите Далее.

  2. Задайте следующие условия поиска:

    • В списке Искать выберите ConversationTranscripts.
    • Выберите ConversationStartTime, выберите Старше X мес. и введите "12".
      Этот параметр сохраняет расшифровки в течение 12 месяцев. Выберите другое сравнение и значение, если хотите.
    • Выберите SchemaType, оставьте равно и введите «powervirtualagents».

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

  3. Выберите Далее.

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

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

  5. Выберите Далее, затем выберите Отправить.

Почему я не вижу расшифровки разговоров в таблице "ConversationTranscript" в Power Apps?

Администраторы могут запретить сохранение расшифровок в Dataverse. Дополнительные сведения о том, как сохраняются расшифровки и как управлять доступом, см. в разделе Управление доступом к расшифровкам.

Внимание!

Расшифровки не сохраняются для агентов, развернутых в средах разработки.

Советы по максимально эффективному использованию расшифровок разговоров

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

Расшифровки разговоров могут ссылаются на контент только по его идентификатору. Например, в узле Перенаправление на целевую тему ссылаются только по ее идентификатору. Чтобы узнать имя этой темы, найдите ее идентификатор в содержимом агента.