【问题标题】:How to get the Qna Maker "Q" from Analytics Application Insights?如何从 Analytics Application Insights 获取 Qna Maker“Q”?
【发布时间】:2019-01-13 16:18:01
【问题描述】:

我已经使用 Qna Maker 创建了聊天机器人的知识库,并且正在尝试使用 Analytics Application Insights 可视化一些统计数据。

我想做的事

我想创建一个包含 Qna Maker 问题最多的图表。

我的问题

我在 Analytics 的 customDimensions 跟踪中找不到 Qna Maker 问题,但只有他们的 ID:

我的问题

他们是否可以直接从 Analytics Application Insights 工具获取链接到此 ID 的 Qna Maker 问题?

谢谢。

PS:由于 Stackoverflow 规则,我不得不在标题中使用“Q”而不是“Question”。

【问题讨论】:

    标签: azure azure-application-insights qnamaker telemetry ms-app-analytics


    【解决方案1】:

    不直接。

    您在 appinsights 中拥有的唯一信息是随数据提交的任何内容。所以如果他们没有发送问题(奇怪的是他们发送了答案但没有发送问题?)那么你就不走运了。

    作为一种解决方法,您可以在应用程序洞察实例中创建一个自定义表: https://docs.microsoft.com/en-us/azure/application-insights/app-insights-analytics-import 并用 id 和 question 填充该表。

    然后您可以在分析工具或工作簿中的分析查询中加入这两件事。

    【讨论】:

    • 感谢您的回答。它可能是静态知识库的解决方案,但我的会随着时间的推移而改变,我找不到创建引用我的 Qna Maker KB 的动态自定义表的方法。
    • 那么您的另一个选择是制作一个使用应用程序洞察力 REST api 来查询 AI (dev.applicationinsights.io) 并查询您的知识库的工具?
    【解决方案2】:

    如果您正在寻找通过 id 链接的问题和答案的查询,这里是您的答案:

    requests
    | where url endswith "generateAnswer"
    | project timestamp, id, name, resultCode, duration
    | parse name with *"/knowledgebases/"KbId"/generateAnswer"
    | join kind= inner (
    traces | extend id = operation_ParentId
    ) on id
    | extend question = tostring(customDimensions['Question'])
    | extend answer = tostring(customDimensions['Answer'])
    | project KbId, timestamp, resultCode, duration, question, answer
    

    这不一定能解决您的问题,但可能对寻求简单问题/答案报告以改进 QnA 制作器的其他人有所帮助。

    样本可以在官方文档中找到: https://docs.microsoft.com/en-us/azure/cognitive-services/qnamaker/how-to/get-analytics-knowledge-base

    【讨论】:

      【解决方案3】:

      这是我提出的一个查询,它将获取知识库问题的 ID、用户键入的问题以及知识库答案。如果它们来自同一会话,它还会将多个问题联系在一起。

      我还没有找到一种方法来确定一种方法来获取与 id 关联的知识库问题。

      requests
      | where url endswith 'generateAnswer'
      | project id, url, sessionId = extract('^[a-z0-9]{7}', 0, itemId)
      | parse kind = regex url with *'(?i)knowledgebases/'knowlegeBaseId'/generateAnswer'
      | join kind= inner
      (
          traces
          | extend id = operation_ParentId
          | where message == 'QnAMaker GenerateAnswer'
          | extend userQuestion = tostring(customDimensions['Question'])
          | extend knowlegeBaseQuestionId = tostring(customDimensions['Id'])
          | extend knowlegeBaseAnswer = tostring(customDimensions['Answer'])
          | extend score = tostring(customDimensions['Score'])
      )
      on id
      | where timestamp >= ago(10d)
      | project knowlegeBaseId, timestamp, userQuestion, knowlegeBaseQuestionId, knowlegeBaseAnswer, score, sessionId
      | order by timestamp asc
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2020-06-29
        • 1970-01-01
        • 1970-01-01
        • 2017-07-24
        • 2019-12-13
        • 2020-05-08
        • 2018-10-29
        相关资源
        最近更新 更多