【发布时间】:2018-11-12 10:22:13
【问题描述】:
GenerateAnswer API 描述了 userId,如果在请求中发送将记录在聊天日志中,据我所知,这似乎没有生成。
默认情况下会生成聊天记录吗?或者我是否需要配置资源或进行配置更改以使日志记录生效?
如果有详细描述 QnA Maker 的日志记录方面的 Azure 文档,请您指点我吗?
谢谢
【问题讨论】:
标签: qnamaker
GenerateAnswer API 描述了 userId,如果在请求中发送将记录在聊天日志中,据我所知,这似乎没有生成。
默认情况下会生成聊天记录吗?或者我是否需要配置资源或进行配置更改以使日志记录生效?
如果有详细描述 QnA Maker 的日志记录方面的 Azure 文档,请您指点我吗?
谢谢
【问题讨论】:
标签: qnamaker
QnA Maker 默认不生成聊天记录。他们目前不提供任何 API 来存储聊天日志。
假设您以同时显示问题和答案的聊天机器人形式使用它,您可以创建一个本地存储的数据库实例,例如 SQL Server 2016。
然后根据用户访问时间生成唯一的 GUID,将每个聊天日志存储在一个表中,主键为“GUID”,后跟“问题”、“答案”和“时间”。
潜在答案模型示例
namespace Frontend.Data {
public class Message {
[Key]
public string MessageId { get; set; }
public string ConversationId { get; set; }
public string Question { get; set; }
public string Answer { get; set; }
public DateTime MessageReceivedAtDateTime { get; set; }
public Message(string messageId, string conversationId, string question, string answer, string datestring) {
MessageId = messageId;
ConversationId = conversationId;
Answer = answer;
Question = question;
MessageReceivedAtDateTime = DateTimeOffset.Parse(datestring).UtcDateTime;
}
public Message() {}
}
但是,当用户退出程序时,您可能不得不修改保存问题和答案。
根据您实施 QnA Maker 的语言,您可能需要调整其中一些更改
https://docs.microsoft.com/en-us/dotnet/api/system.guid.newguid?view=netframework-4.7.2
【讨论】: