botframework - 如何使用 appinsights 调用我们自己的 qnamakerservice
问题描述
如何使用我们自己的 qnamakerservice 来使用 appinsights 跟踪日志,而不是在“qna-with-appinsights”示例中给出的示例代码中使用以下内容?
// Call QnAMaker.generateAnswer to retrieve possible Question and Answer pairings for the user's message.
const results = await super.generateAnswer(turnContext.activity.text, top, scoreThreshold);
解决方案
您在问如何使用您自己构建的不同 QnA Maker 知识库,而不是bot.recipe
运行msbot clone
命令时创建的知识库?
您只需要更改LN 53 中qnaEndpointSettings
的值。index.js
const qnaEndpointSettings = {
knowledgeBaseId: qnaConfig.kbId,
endpointKey: qnaConfig.endpointKey,
host: qnaConfig.hostname
};
这些值是从您的.bot
文件中填充的,因此请确保在其中添加您的自定义 QnAMaker 凭据。
这可以通过
.bot
手动将它们添加到您的文件中。因此,在您使用的特定示例中,您将编辑以下对象"type: "qna"
:{ "type": "qna", "name": "qna-with-insights-QnAMaker", "id": "34", "kbId": "", "subscriptionKey": "", "endpointKey": "", "hostname": "" }
或者
- 使用该
msbot connect qna ...
命令,这将确保您拥有格式正确的 qna 对象。文档在这里。
推荐阅读
- caching - 在此示例中,数据缓存如何路由对象?
- gatsby - 如何为我的 Gatsby 网站创建第二个博客模板
- python-3.x - GCP存储无法上传带有不可见ascii字符的字符串
- vim - 当我进入/离开命令行时更新 Vim 中的标题字符串
- sql-server - 是否可以将 SQL Server 2016 数据库保存到较低版本?
- sql-injection - 编写用于阻止 SQL 注入攻击的数据库防火墙
- macos - 如何批量重命名损坏的文件扩展名?
- c# - 使用单独的 AppDomain 的单元测试代码
- performance - 查找算法的运行时间
- python - datetime 结合日期和时间戳