首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >QnAMaker刚刚终止并将我从我们的bot中的所有对话框中删除。

QnAMaker刚刚终止并将我从我们的bot中的所有对话框中删除。
EN

Stack Overflow用户
提问于 2018-04-04 10:45:16
回答 1查看 178关注 0票数 0

在最近的测试期间,我们已经开始在我们的Bot中更多地使用QnAMaker。我注意到,有时当我们经常调用QnAMakerDialog (每分钟5-10次调用)时,一切都会终止,并将我抛回bot框架主循环。我追踪到了发生了什么,我可以看到我们称之为base(新的QnAMakerService(新的QnAMakerAttribute(.),.)但打完电话我们又回到男人圈了。没有例外,没有错误,没有任何东西。

我们可能已经达到了免费QnAMaker服务器的上限(我们已经申请了增加限制),但是即使我们达到了上限,我仍然需要捕获它并向用户发出信号,或者在错误日志中记录事实。

还有人见过这种行为吗?

//汤米

(我将在QnAMaker github中提出同样的问题)

EN

回答 1

Stack Overflow用户

发布于 2018-04-24 06:20:08

我可以看到我们调用base(新的QnAMakerService(新的QnAMakerAttribute(.),.)但打完电话我们又回到男人圈了。没有例外,没有错误,没有任何东西。

您说过没有例外,您的bot没有错误,要检测是否超过了费率限制,您可以尝试在bot应用程序中打开应用洞察,然后跟踪依赖调用以检查请求到QnAMaker服务的状态。

使用结果代码429:对QnAMaker服务的请求:

此外,我还使用QnAMaker bot和Microsoft.Bot.Builder v3.14.1.1Microsoft.Bot.Builder.CognitiveServices v1.1.2进行了测试。当超过利率限制时,我发现bot会抛出错误。

QnaDialog:

代码语言:javascript
复制
[Serializable]
public class QnaDialog : QnAMakerDialog
{
    public QnaDialog() : base(new QnAMakerService(new QnAMakerAttribute("xxxxx", "xxxxx", "Sorry, I couldn't find an answer for that", 0.5)))
    {
    }

    protected override async Task RespondFromQnAMakerResultAsync(IDialogContext context, IMessageActivity message, QnAMakerResults result)
    {
        await context.PostAsync($"I found {result.Answers.Count} answer(s) that might help...{result.Answers.First().Answer}.");
        context.Done(true);
    }
}

packages.config:

代码语言:javascript
复制
<?xml version="1.0" encoding="utf-8"?>
<packages>
  <package id="Autofac" version="3.5.2" targetFramework="net46" />
  <package id="Chronic.Signed" version="0.3.2" targetFramework="net46" />
  <package id="Microsoft.AspNet.WebApi" version="5.2.3" targetFramework="net46" />
  <package id="Microsoft.AspNet.WebApi.Client" version="5.2.3" targetFramework="net46" />
  <package id="Microsoft.AspNet.WebApi.Core" version="5.2.3" targetFramework="net46" />
  <package id="Microsoft.AspNet.WebApi.WebHost" version="5.2.3" targetFramework="net46" />
  <package id="Microsoft.Bot.Builder" version="3.14.1.1" targetFramework="net46" />
  <package id="Microsoft.Bot.Builder.CognitiveServices" version="1.1.2" targetFramework="net46" />
  <package id="Microsoft.Bot.Connector" version="3.14.1.1" targetFramework="net46" />
  <package id="Microsoft.IdentityModel.Logging" version="1.1.4" targetFramework="net46" />
  <package id="Microsoft.IdentityModel.Protocol.Extensions" version="1.0.4.403061554" targetFramework="net46" />
  <package id="Microsoft.IdentityModel.Protocols" version="2.1.4" targetFramework="net46" />
  <package id="Microsoft.IdentityModel.Protocols.OpenIdConnect" version="2.1.4" targetFramework="net46" />
  <package id="Microsoft.IdentityModel.Tokens" version="5.1.4" targetFramework="net46" />
  <package id="Microsoft.Rest.ClientRuntime" version="2.3.2" targetFramework="net46" />
  <package id="Microsoft.WindowsAzure.ConfigurationManager" version="3.1.0" targetFramework="net46" />
  <package id="Newtonsoft.Json" version="9.0.1" targetFramework="net46" />
  <package id="System.IdentityModel.Tokens.Jwt" version="5.1.4" targetFramework="net46" />
</packages>

测试结果:

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/49649021

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档