3

我希望使用 QnA maker 来简化聊天机器人的简单问答功能,并将 LUIS 用于更复杂的意图,例如从句子中提取实体以解决需要更多上下文的问题。

使用 LUIS,可以将应用的不同版本发布到生产或暂存。也可以克隆和导入版本。我也想用 QnA Maker 做到这一点。是否有可能或将来会添加的功能?

我知道可以从 QnA 制造商以 tsv 格式下载知识库,据我所知,您只能发布到 1 个端点

4

1 回答 1

3

不,目前不可能,目前唯一的可能性是设置多个 QnAMaker 服务并在您的代码上在它们之间切换。

您只需要 1 个 QnAMaker 对话框,但您必须更改传递参数的方式(KbId 和订阅密钥):

从您的路由对话框中:

await context.Forward(new BasicQnAMakerDialog(this._qnaSubscriptionKey, this._qnaKnowledgeBaseId, this._qnaNoMatchMessage, 0.5), QnaDialogResume, incomingMessage);

BasicQnAMakerDialog 实现的开始:

[Serializable]
public class BasicQnAMakerDialog : QnAMakerDialog
{
    public BasicQnAMakerDialog(string subscriptionKey, string kbId, string noMatchString, double minScore) : base(new QnAMakerService(new QnAMakerAttribute(subscriptionKey, kbId, noMatchString, minScore))) { }
于 2017-12-13T16:30:09.330 回答