Uzyskiwanie danych analitycznych na potrzeby bazy wiedzy
Usługa QnA Maker przechowuje wszystkie dzienniki czatów i inne dane telemetryczne, jeśli usługa Application Insights została włączona podczas tworzenia usługi QnA Maker. Uruchom przykładowe zapytania, aby pobrać dzienniki czatu z usługi Application Insights.
Uwaga
Usługa QnA Maker jest wycofywana 31 marca 2025 r. Nowsza wersja funkcji pytań i odpowiedzi jest teraz dostępna w ramach języka sztucznej inteligencji platformy Azure. Aby uzyskać odpowiedzi na pytania w usłudze językowej, zobacz odpowiadanie na pytania. Od 1 października 2022 r. nie będzie można tworzyć nowych zasobów usługi QnA Maker. Aby uzyskać informacje na temat migrowania istniejących baza wiedzy usługi QnA Maker do odpowiadania na pytania, zapoznaj się z przewodnikiem migracji.
Przejdź do zasobu usługi Application Insights.
Wybierz pozycję Log (Analytics). Zostanie otwarte nowe okno, w którym można wykonywać zapytania dotyczące telemetrii usługi QnA Maker.
Wklej następujące zapytanie i uruchom je.
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
Kliknij przycisk Uruchom, aby uruchomić zapytanie.
Uruchamianie zapytań dotyczących innych analiz w usłudze QnA Maker baza wiedzy
Łączny ruch 90-dniowy
//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
Całkowity ruch pytań w danym okresie
//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
Ruch użytkowników
//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
Rozkład opóźnień pytań
//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
Pytania bez odpowiedzi
// 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
UWAGA
Jeśli nie możesz prawidłowo pobrać dziennika przy użyciu usługi Application Insights, potwierdź ustawienia usługi Application Insights w zasobie usługi App Service. Otwórz zasób usługi App Service i przejdź do usługi Application Insights. Następnie sprawdź, czy jest włączona, czy wyłączona. Jeśli jest ona wyłączona, włącz ją, a następnie zastosuj ją tam.