Понимайте скачанные расшифровки разговоров с Power Apps

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

Important

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

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

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

Note

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

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

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

Предпосылка

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

  1. Войдите в Power Apps.

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

    Скриншот узла Таблицы с выбранным «Все».

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

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

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

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

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

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

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

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

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

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

  • Система сохраняет разговор в запись расшифровки после 30 минут бездействия. Если разговор возобновляется после времени неактивности, система сохраняет новые действия в новую запись с тем же Name значением, но с новым ConversationStartTime значением.
  • Для агентов, опубликованных на канале Telephoney, перерыв разговоров заканчивается через три минуты после события End Conversation .
  • Каждая запись имеет ограничение 1 МБ для транскрипта (Content столбца). Если расшифровка превышает этот предел, система разбивает её на несколько записей, все с одинаковыми Name значениями и ConversationStartTime значениями, но с разными Metadata.BatchId значениями.
  • Чтобы объединить расшифровки, возьмите все записи с одинаковыми Name значениями ConversationStartTime , а затем отсортируйте эти записи по BatchId.

Следующие таблицы описывают наиболее важные поля в расшифровках разговоров.

Поле Описание Пример
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", "BatchId":2}
Name Имя пользовательской строки, созданной из ConversationId , за которым следует BotId 8YYe8iif49ZKkycZLe7HUO_198eca5f-1145-4ae6-8c08-835d884a8688
Bot_ConversationTranscript Идентификатор агента aaaabbbb-0000-cccc-1111-dddd2222eeee
Created on Дата и время создания записи расшифровки 2021-04-20T02:40:13Z

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

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

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

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

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

Key Описание
ID Уникальный GUID объекта действия
valueType Тип значения, хранящегося в действии; определяет, какую информацию предоставляет действие (Распространенные типы значений действий)
timestamp Отметка времени, когда действие было создано, в формате эпохи (количество секунд с полуночи 1 января 1970 года по всемирному координированному времени)
type Тип действия; например, message, event или trace
replyToId Идентификатор действия, на которое отвечает текущее действие
from Содержит поля id и role:
  • id — ИД вызывающего объекта
  • role — содержит 0 или 1
    • 0 - действие исходит от агента
    • 1 — действие исходит от пользователя, взаимодействующего с агентом
Примечания.
id может использоваться для расчета количества активных пользователей, которые взаимодействуют с агентом, если холст передает уникальный идентификатор пользователя. Если холст не передает идентификатор, передается уникальный идентификатор для каждого разговора.
Для безопасности и конфиденциальности система хеширует ID перед записью 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

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

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

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

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

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

  1. Откройте программу-агент.

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

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

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

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

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

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

Настраиваемая аналитика

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

Решение Conversation KPIs в Copilot Studio Kit автоматически анализирует транскрипты и заполняет агрегированные данные в таблицы Dataverse.

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

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

Note

Если изменить стандартный период хранения в Dataverse, затронет только пользовательскую аналитику. Период удержания страницы аналитики в Copilot Studio не затрагивается.

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

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

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

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

  2. Выберите курсор рядом с Настройками. В System выберите Управление данными.

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

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

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

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

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

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

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

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

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

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

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

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

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

  3. Нажмите кнопку Далее.

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

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

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

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

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

Important

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

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

Используйте переменные для хранения данных, релевантных содержимому вашего агента или пользователю агента. Анализируя переменную и её значение из расшифровки разговора, можно фильтровать или срезать данные по переменной.

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