Bot框架SDK NodeJS和自定义问答:无法生成答案:[object Object]
Bot framework SDK NodeJS and Custom Question Answering: Failed to generate answers: [object Object]
将我的一个知识库从 QnaMaker 升级到启用自定义问答的语言资源后(FKA QnAMaker Managed),我的聊天机器人不再运行并且 returns 出现错误:DialogContextError:生成失败答案:[对象对象]
我的 .env 有:
QnAKnowledgebaseId=<name of my knowledgebase>
QnAEndpointKey=<the Ocp-Apim-Subscription-Key from the prediction url
QnAEndpointHostName=https://<languageresourcename>.cognitiveservices.azure.com/ (I also tried to add language/ to the url)
QnaMaker 初始化:
const { QnAMaker } = require('botbuilder-ai');
try {
this.qnaMaker = new QnAMaker({
knowledgeBaseId: process.env.QnAKnowledgebaseId,
endpointKey: process.env.QnAEndpointKey,
host: process.env.QnAEndpointHostName
});
} catch (err) {
console.warn(`QnAMaker Exception: ${ err } Check your QnAMaker configuration in .env`);
}
呼叫者:
const qnaResults = await this.qnaMaker.getAnswers(step.context);
依赖关系:
"dependencies": {
"adaptivecards-templating": "^1.4.0",
"applicationinsights": "^1.8.10",
"azure-storage": "^2.10.5",
"body-parser": "^1.19.0",
"botbuilder": "^4.15.0",
"botbuilder-ai": "^4.15.0",
"botbuilder-azure-blobs": "4.14.1-preview",
"botbuilder-dialogs": "^4.15.0",
"botbuilder-lg": "^4.15.0",
"botframework-config": "^4.11.2",
...
}
使用我的旧 QnAMaker KB 中的密钥、知识库 ID 和主机名工作得很好。努力将新预测 url 转换为 QnAMaker 的对象。
更新
class GenerateAnswerUtils(由 QnaMaker 调用)预期如下:
const url = `${endpoint.host}/knowledgebases/${endpoint.knowledgeBaseId}/generateanswer`;
这不适用于迁移到自定义问题的 QnaMaker 知识库,它需要这样的 url:
'https://<languageresourcename>.cognitiveservices.azure.com/language/:query-knowledgebases?projectName=<projectname>&api-version=2021-10-01&deploymentName=production'
不确定这是错误报告还是功能请求。无论如何我都会提交一个问题。
BotFramework SDK 尚不支持新的自定义问题功能。这是导致错误的原因。已提交功能请求。
将我的一个知识库从 QnaMaker 升级到启用自定义问答的语言资源后(FKA QnAMaker Managed),我的聊天机器人不再运行并且 returns 出现错误:DialogContextError:生成失败答案:[对象对象]
我的 .env 有:
QnAKnowledgebaseId=<name of my knowledgebase>
QnAEndpointKey=<the Ocp-Apim-Subscription-Key from the prediction url
QnAEndpointHostName=https://<languageresourcename>.cognitiveservices.azure.com/ (I also tried to add language/ to the url)
QnaMaker 初始化:
const { QnAMaker } = require('botbuilder-ai');
try {
this.qnaMaker = new QnAMaker({
knowledgeBaseId: process.env.QnAKnowledgebaseId,
endpointKey: process.env.QnAEndpointKey,
host: process.env.QnAEndpointHostName
});
} catch (err) {
console.warn(`QnAMaker Exception: ${ err } Check your QnAMaker configuration in .env`);
}
呼叫者:
const qnaResults = await this.qnaMaker.getAnswers(step.context);
依赖关系:
"dependencies": {
"adaptivecards-templating": "^1.4.0",
"applicationinsights": "^1.8.10",
"azure-storage": "^2.10.5",
"body-parser": "^1.19.0",
"botbuilder": "^4.15.0",
"botbuilder-ai": "^4.15.0",
"botbuilder-azure-blobs": "4.14.1-preview",
"botbuilder-dialogs": "^4.15.0",
"botbuilder-lg": "^4.15.0",
"botframework-config": "^4.11.2",
...
}
使用我的旧 QnAMaker KB 中的密钥、知识库 ID 和主机名工作得很好。努力将新预测 url 转换为 QnAMaker 的对象。
更新 class GenerateAnswerUtils(由 QnaMaker 调用)预期如下:
const url = `${endpoint.host}/knowledgebases/${endpoint.knowledgeBaseId}/generateanswer`;
这不适用于迁移到自定义问题的 QnaMaker 知识库,它需要这样的 url:
'https://<languageresourcename>.cognitiveservices.azure.com/language/:query-knowledgebases?projectName=<projectname>&api-version=2021-10-01&deploymentName=production'
不确定这是错误报告还是功能请求。无论如何我都会提交一个问题。
BotFramework SDK 尚不支持新的自定义问题功能。这是导致错误的原因。已提交功能请求。