Получение аналитических данных о базе знаний
QnA Maker сохраняет все журналы чатов и другие данные телеметрии, если во время создания службы QnA Maker вы включили Application Insights. Чтобы получить журналы чатов из Application Insights, воспользуйтесь приведенными здесь примерами запросов.
Примечание.
Поддержка службы QnA Maker будет прекращена 31 марта 2025 г. Новая версия вопроса и возможности ответа теперь доступна как часть языка искусственного интеллекта Azure. Сведения о возможностях ответов на вопросы в службе Языка см. в статье с ответами на вопросы. С 1 октября 2022 г. вы не сможете создавать ресурсы QnA Maker. Сведения о переносе существующих баз знаний QnA Maker в функцию вопросов и ответов см. в руководстве по миграции.
Откройте ресурс Application Insights.
Выберите Log (Analytics). Откроется новое окно, в котором можно запросить данные телеметрии QnA Maker.
Вставьте следующий запрос и выполните его.
requests | where url endswith "generateAnswer" | project timestamp, id, url, resultCode, duration, performanceBucket | parse kind = regex url with *"(?i)knowledgebases/"KbId"/generateAnswer" | join kind= inner ( traces | extend id = operation_ParentId ) on id | where message == "QnAMaker GenerateAnswer" | extend question = tostring(customDimensions['Question']) | extend answer = tostring(customDimensions['Answer']) | extend score = tostring(customDimensions['Score']) | project timestamp, resultCode, duration, id, question, answer, score, performanceBucket,KbId
Щелкните Запуск, чтобы выполнить запрос.
Выполнение запросов для получения других аналитических данных о базе знаний QnA Maker
Общий трафик за 90 дней
//Total Traffic
requests
| where url endswith "generateAnswer" and name startswith "POST"
| parse kind = regex url with *"(?i)knowledgebases/"KbId"/generateAnswer"
| summarize ChatCount=count() by bin(timestamp, 1d), KbId
Общий трафик вопросов за определенный период времени
//Total Question Traffic in a given time period
let startDate = todatetime('2019-01-01');
let endDate = todatetime('2020-12-31');
requests
| where timestamp <= endDate and timestamp >=startDate
| where url endswith "generateAnswer" and name startswith "POST"
| parse kind = regex url with *"(?i)knowledgebases/"KbId"/generateAnswer"
| summarize ChatCount=count() by KbId
Трафик пользователя
//User Traffic
requests
| where url endswith "generateAnswer"
| project timestamp, id, url, resultCode, duration
| parse kind = regex url with *"(?i)knowledgebases/"KbId"/generateAnswer"
| join kind= inner (
traces | extend id = operation_ParentId
) on id
| extend UserId = tostring(customDimensions['UserId'])
| summarize ChatCount=count() by bin(timestamp, 1d), UserId, KbId
Распределение задержки вопросов
//Latency distribution of questions
requests
| where url endswith "generateAnswer" and name startswith "POST"
| parse kind = regex url with *"(?i)knowledgebases/"KbId"/generateAnswer"
| project timestamp, id, name, resultCode, performanceBucket, KbId
| summarize count() by performanceBucket, KbId
Вопросы без ответов
// Unanswered questions
requests
| where url endswith "generateAnswer"
| project timestamp, id, url
| parse kind = regex url with *"(?i)knowledgebases/"KbId"/generateAnswer"
| join kind= inner (
traces | extend id = operation_ParentId
) on id
| extend question = tostring(customDimensions['Question'])
| extend answer = tostring(customDimensions['Answer'])
| extend score = tostring(customDimensions['Score'])
| where score == "0" and message == "QnAMaker GenerateAnswer"
| project timestamp, KbId, question, answer, score
| order by timestamp desc
ПРИМЕЧАНИЕ
Если вы не можете получить журнал правильно с помощью Application Insights, проверьте параметры Application Insights в ресурсе Служба приложений. Откройте ресурс Служба приложений и перейдите в Application Insights. Затем проверьте, включена ли эта служба или отключена. Если она отключена, включите ее, а затем примените.