我目前正在Node.js中使用Azure Bot Framework开发一个聊天机器人。我面临的问题围绕着输入指示器行为。当用户开始输入并点击回车时,会触发一个输入指示器。然而,尽管OpenAI API需要超过12秒才能响应,键入指示符仅在5秒后消失。2这导致键入指示符和实际响应消息之间存在静默间隙。
下面是负责触发类型指示器的相关代码片段:
if (context.activity.type == "message") {
appInsightsLogger.Trace(
"Message Received From " + context.activity.channelId
);
await context.sendActivities([
{ type: ActivityTypes.Typing, relatesTo: context.activity.relatesTo },
]); // Typing indicator
}
console.log("context.activity.type", context.activity.type);
await bot.run(context);
字符串
我一直在尝试找到一种解决方案,以确保在收到OpenAI API响应之前,键入指示器在整个持续时间内保持活动状态。此外,我希望控制键入指示器的时间。尽管我付出了努力,但我仍未能达到预期的结果。
我希望输入指示器能够持续到OpenAI API响应,从而防止静默间隙问题。然而,目前的实现导致指示器在5秒后消失,导致用户体验中断。
1条答案
按热度按时间yzxexxkh1#
此错误是由于键入指示器问题造成的。要解决此问题,请确保代码在收到OpenAI API响应之前保持键入指示器处于活动状态。此外,您可能需要控制键入指示器的计时,以更好地匹配实际响应时间,并手动发送键入活动。
代码取自引用Doc:
字符串
的数据
的