Botframework 由于QnAMaker连接问题,Bot未响应Bot Framework Emulator中的消息

Botframework 由于QnAMaker连接问题,Bot未响应Bot Framework Emulator中的消息,botframework,azure-bot-service,qnamaker,Botframework,Azure Bot Service,Qnamaker,我的聊天机器人使用QnAMaker来回答用户的问题。最近,当我在Bot框架仿真器中进行测试时,这已经停止工作。然而,该机器人在网络聊天中运行良好。我相信,当我试图从我的QnAMaker知识库中得出答案时,问题就会出现: var response = await botServices.QnAServices[QnAMakerName].GetAnswersAsync(stepContext.Context, qnaMakerOptions); 这是我在控制台中得到的输出: fail: Micr

我的聊天机器人使用QnAMaker来回答用户的问题。最近,当我在Bot框架仿真器中进行测试时,这已经停止工作。然而,该机器人在网络聊天中运行良好。我相信,当我试图从我的QnAMaker知识库中得出答案时,问题就会出现:

var response = await botServices.QnAServices[QnAMakerName].GetAnswersAsync(stepContext.Context, qnaMakerOptions);
这是我在控制台中得到的输出:

fail: Microsoft.BotBuilderSamples.QnABot[0]
      Exception caught : System.Threading.Tasks.TaskCanceledException: The operation was canceled. ---> System.IO.IOException: Unable to read data from the transport connection: The I/O operation has been aborted because of either a thread exit or an application request. ---> System.Net.Sockets.SocketException: The I/O operation has been aborted because of either a thread exit or an application request
         --- End of inner exception stack trace ---
         at System.Net.Sockets.Socket.AwaitableSocketAsyncEventArgs.ThrowException(SocketError error)
         at System.Net.Sockets.Socket.AwaitableSocketAsyncEventArgs.GetResult(Int16 token)
         at System.Net.FixedSizeReader.ReadPacketAsync(Stream transport, AsyncProtocolRequest request)
         at System.Net.Security.SslState.ThrowIfExceptional()
         at System.Net.Security.SslState.InternalEndProcessAuthentication(LazyAsyncResult lazyResult)
         at System.Net.Security.SslState.EndProcessAuthentication(IAsyncResult result)
         at System.Net.Security.SslStream.EndAuthenticateAsClient(IAsyncResult asyncResult)
         at System.Net.Security.SslStream.<>c.<AuthenticateAsClientAsync>b__47_1(IAsyncResult iar)
         at System.Threading.Tasks.TaskFactory`1.FromAsyncCoreLogic(IAsyncResult iar, Func`2 endFunction, Action`1 endAction, Task`1 promise, Boolean requiresSynchronization)
      --- End of stack trace from previous location where exception was thrown ---
         at System.Net.Http.ConnectHelper.EstablishSslConnectionAsyncCore(Stream stream, SslClientAuthenticationOptions sslOptions, CancellationToken cancellationToken)
         --- End of inner exception stack trace ---
         at System.Net.Http.ConnectHelper.EstablishSslConnectionAsyncCore(Stream stream, SslClientAuthenticationOptions sslOptions, CancellationToken cancellationToken)
         at System.Threading.Tasks.ValueTask`1.get_Result()
         at System.Net.Http.HttpConnectionPool.CreateConnectionAsync(HttpRequestMessage request, CancellationToken cancellationToken)
         at System.Threading.Tasks.ValueTask`1.get_Result()
         at System.Net.Http.HttpConnectionPool.WaitForCreatedConnectionAsync(ValueTask`1 creationTask)
         at System.Threading.Tasks.ValueTask`1.get_Result()
         at System.Net.Http.HttpConnectionPool.SendWithRetryAsync(HttpRequestMessage request, Boolean doRequestAuth, CancellationToken cancellationToken)
         at System.Net.Http.RedirectHandler.SendAsync(HttpRequestMessage request, CancellationToken cancellationToken)
         at System.Net.Http.HttpClient.FinishSendAsyncBuffered(Task`1 sendTask, HttpRequestMessage request, CancellationTokenSource cts, Boolean disposeCts)
         at Microsoft.Bot.Builder.AI.QnA.HttpRequestUtils.ExecuteHttpRequestAsync(String requestUrl, String payloadBody, QnAMakerEndpoint endpoint) in d:\a\1\s\libraries\Microsoft.Bot.Builder.AI.QnA\Utils\HttpRequestUtils.cs:line 64
         at Microsoft.Bot.Builder.AI.QnA.GenerateAnswerUtils.QueryQnaServiceAsync(Activity messageActivity, QnAMakerOptions options) in d:\a\1\s\libraries\Microsoft.Bot.Builder.AI.QnA\Utils\GenerateAnswerUtils.cs:line 212
         at Microsoft.Bot.Builder.AI.QnA.GenerateAnswerUtils.GetAnswersRawAsync(ITurnContext turnContext, IMessageActivity messageActivity, QnAMakerOptions options) in d:\a\1\s\libraries\Microsoft.Bot.Builder.AI.QnA\Utils\GenerateAnswerUtils.cs:line 87
         at Microsoft.Bot.Builder.AI.QnA.QnAMaker.GetAnswersRawAsync(ITurnContext turnContext, QnAMakerOptions options, Dictionary`2 telemetryProperties, Dictionary`2 telemetryMetrics) in d:\a\1\s\libraries\Microsoft.Bot.Builder.AI.QnA\QnAMaker.cs:line 198
         at Microsoft.Bot.Builder.AI.QnA.QnAMaker.GetAnswersAsync(ITurnContext turnContext, QnAMakerOptions options, Dictionary`2 telemetryProperties, Dictionary`2 telemetryMetrics) in d:\a\1\s\libraries\Microsoft.Bot.Builder.AI.QnA\QnAMaker.cs:line 158
         at X.Dialogs.QnAMakerDialog.CallGenerateAnswer(WaterfallStepContext stepContext, CancellationToken cancellationToken) in C:\Users\X\Desktop\X\Dialogs\QnAMakerDialog.cs:line 239
         at Microsoft.Bot.Builder.Dialogs.WaterfallDialog.OnStepAsync(WaterfallStepContext stepContext, CancellationToken cancellationToken) in d:\a\1\s\libraries\Microsoft.Bot.Builder.Dialogs\WaterfallDialog.cs:line 175
         at Microsoft.Bot.Builder.Dialogs.WaterfallDialog.RunStepAsync(DialogContext dc, Int32 index, DialogReason reason, Object result, CancellationToken cancellationToken) in d:\a\1\s\libraries\Microsoft.Bot.Builder.Dialogs\WaterfallDialog.cs:line 197
         at Microsoft.Bot.Builder.Dialogs.WaterfallDialog.BeginDialogAsync(DialogContext dc, Object options, CancellationToken cancellationToken) in d:\a\1\s\libraries\Microsoft.Bot.Builder.Dialogs\WaterfallDialog.cs:line 82
         at Microsoft.Bot.Builder.Dialogs.DialogContext.BeginDialogAsync(String dialogId, Object options, CancellationToken cancellationToken) in d:\a\1\s\libraries\Microsoft.Bot.Builder.Dialogs\DialogContext.cs:line 170
         at Microsoft.BotBuilderSamples.QnABot.DispatchToTopIntentAsync(ITurnContext turnContext, IList`1 intent, RecognizerResult recognizerResult, CancellationToken cancellationToken) in C:\Users\X\Desktop\X\QnAMaker\QnABot.cs:line 171
         at Microsoft.BotBuilderSamples.QnABot.OnTurnAsync(ITurnContext turnContext, CancellationToken cancellationToken) in C:\Users\X\Desktop\X\QnAMaker\QnABot.cs:line 136
         at Microsoft.Bot.Builder.BotFrameworkAdapter.TenantIdWorkaroundForTeamsMiddleware.OnTurnAsync(ITurnContext turnContext, NextDelegate next, CancellationToken cancellationToken) in d:\a\1\s\libraries\Microsoft.Bot.Builder\BotFrameworkAdapter.cs:line 1252
         at Microsoft.Bot.Builder.MiddlewareSet.ReceiveActivityWithStatusAsync(ITurnContext turnContext, BotCallbackHandler callback, CancellationToken cancellationToken) in d:\a\1\s\libraries\Microsoft.Bot.Builder\MiddlewareSet.cs:line 55
         at Microsoft.Bot.Builder.BotAdapter.RunPipelineAsync(ITurnContext turnContext, BotCallbackHandler callback, CancellationToken cancellationToken) in d:\a\1\s\libraries\Microsoft.Bot.Builder\BotAdapter.cs:line 200
fail:Microsoft.BotBuilderSamples.QnABot[0]
捕获到异常:System.Threading.Tasks.TaskCanceledException:操作已取消。-->System.IO.IOException:无法从传输连接读取数据:由于线程退出或应用程序请求,I/O操作已中止。-->System.Net.Sockets.SocketException:由于线程退出或应用程序请求,I/O操作已中止
---内部异常堆栈跟踪的结束---
位于System.Net.Sockets.Socket.AwaitableSocketAsyncEventArgs.ThroweException(SocketError错误)
位于System.Net.Sockets.Socket.AwaitableSocketAsyncEventArgs.GetResult(Int16令牌)
位于System.Net.FixedSizeReader.ReadPacketAsync(流传输,异步协议请求)
位于System.Net.Security.SslState.ThrowifeException()处
位于System.Net.Security.SslState.InternalEndProcessAuthentication(LazyAsyncResult-lazyResult)
位于System.Net.Security.SslState.EndProcessAuthentication(IAsyncResult结果)
位于System.Net.Security.SslStream.EndAuthenticateTaseClient(IAsyncResult asyncResult)
在System.Net.Security.SslStream.c.b_u47_u1(IAsyncResult iar)上
在System.Threading.Tasks.TaskFactory`1.FromAsyncCoreLogic(IAsyncResult iar、Func`2 endFunction、Action`1 endAction、Task`1 Promission、Boolean requiresSynchronization)
---来自引发异常的上一个位置的堆栈结束跟踪---
在System.Net.Http.ConnectHelper.EstablishSslConnectionAsyncCore(Stream、SslClientAuthenticationOptions、sslOptions、CancellationToken CancellationToken)
---内部异常堆栈跟踪的结束---
在System.Net.Http.ConnectHelper.EstablishSslConnectionAsyncCore(Stream、SslClientAuthenticationOptions、sslOptions、CancellationToken CancellationToken)
在System.Threading.Tasks.ValueTask`1.get_Result()处
位于System.Net.Http.HttpConnectionPool.CreateConnectionAsync(HttpRequestMessage请求,CancellationToken CancellationToken)
在System.Threading.Tasks.ValueTask`1.get_Result()处
位于System.Net.Http.HttpConnectionPool.WaitForCreatedConnectionAsync(ValueTask`1 creationTask)
在System.Threading.Tasks.ValueTask`1.get_Result()处
位于System.Net.Http.HttpConnectionPool.SendWithRetryAsync(HttpRequestMessage请求,布尔值doRequestAuth,CancellationToken CancellationToken)
位于System.Net.Http.RedirectHandler.SendAsync(HttpRequestMessage请求,CancellationToken CancellationToken)
位于System.Net.Http.HttpClient.FinishSendAsyncBuffered(任务'1 sendTask,HttpRequestMessage请求,取消令牌源cts,布尔处理)
在d:\a\1\s\libraries\Microsoft.Bot.Builder.AI.QnA.HttpRequestUtils.ExecuteHttpRequestAsync(字符串请求URL、字符串payloadBody、QnAMakerEndpoint端点)中的Microsoft.Bot.Builder.AI.QnA\Utils\HttpRequestUtils.cs:第64行
在d:\a\1\s\libraries\Microsoft.Bot.Builder.AI.QnA.GenerateAnswerUtils.QueryQnaServiceAsync(活动消息活动,QnAMakerOptions选项)中的Microsoft.Bot.Builder.AI.QnA\Utils\GenerateAnswerUtils.cs:第212行
在d:\a\1\s\libraries\Microsoft.Bot.Builder.AI.QnA.GenerateAnswerUtils.GetAnswersRawAsync(iTunesContext turnContext,IMessageActivity messageActivity,QnAMakerOptions选项)中的Microsoft.Bot.Builder.AI.QnA\Utils\GenerateAnswerUtils.cs:第87行
在d:\a\1\s\libraries\Microsoft.Bot.Builder.AI.QnA.QnAMaker.AI.QnA\QnAMaker.cs中的Microsoft.Bot.Builder.GetAnswersRawAsync(iTunesContext turnContext,QnamakeProptions选项,Dictionary`2 telemetryProperties,Dictionary`2 telemetryMetrics):第198行
在d:\a\1\s\libraries\Microsoft.Bot.Builder.AI.QnA.QnAMaker.GetAnswersAsync(iTunesContext turnContext,QnamakeOptions选项,Dictionary`2 telemetryProperties,Dictionary`2 telemetryMetrics)中的Microsoft.Bot.QnAMaker.AI.QnA\QnAMaker.cs:第158行
在C:\Users\X\Desktop\X\Dialogs\QnAMakerDialog.cs中的X.Dialogs.QnAMakerDialog.CallGenerateAnswer(WaterWallStepContext stepContext,CancellationToken CancellationToken)处:第239行
位于d:\a\1\s\libraries\Microsoft.Bot.Builder.Dialogs\waterwallDialog.onstepsync(waterwallStepContext stepContext,CancellationToken CancellationToken)中的Microsoft.Bot.Builder.Dialogs\waterwallDialog.cs:175行
在d:\a\1\s\libraries\Microsoft.Bot.Builder.Dialogs.WaterwallDialog.RunStepAsync(DialogContext dc,Int32索引,DialogReason,Object result,CancellationToken CancellationToken)中的Microsoft.Bot.Builder.Dialogs\WaterwallDialog.cs:197行
在d:\a\1\s\libraries\Microsoft.Bot.Builder.Dialogs\waterwalldialdialog.BeginDialogAsync(DialogContext dc,对象选项,CancellationToken CancellationToken)中的Microsoft.Bot.Builder.Dialogs\waterwalldialDialog.cs:第82行
在d:\a\1\s\libraries\Microsoft.Bot.Builder.Dialogs\DialogContext.BeginDialogAsync(字符串dialogId,对象选项,CancellationToken CancellationToken)中的Microsoft.Bot.Builder.Dialogs\DialogContext.cs:第170行
在C:\Users\X\Desktop\X\QnAMaker\QnABot.cs第171行中的Microsoft.BotBuilderSamples.QnABot.DispatchtoPointAsync(iTunesContext turnContext,IList`1 intent,RecognitizerResult,RecognitationToken CancellationToken CancellationToken)
在C:\Users\X\Desktop\X\QnAMaker\QnABot.cs中的Microsoft.BotBuilderSamples.QnABot.OnTurnAsync(iTurContext turnContext,CancellationToken CancellationToken)中:第136行
在Microsoft.Bot.Builder.BotFrameworkAdapter.TenantIdWorkaroundForTeamsMiddleware.OnTurnAsync(I