public async Task <QnASearchResultList> AnswerQuestion(string question, string userId, int resultCount = 1) { //From QnA Knowledgebase - embedded GUID in POST portion var runtimeKB = _configuration["QNA_KB_ID"]; //From QnA Knowledgebase - HOST var runtimeEndpoint = _configuration["QNA_RuntimeEndpoint"]; //From QnA Knowledgebase - Authorization Endpoint Key var runtimeKey = _configuration["QNA_RuntimeKey"]; var runtimeCreds = new EndpointKeyServiceClientCredentials(runtimeKey); //Runtime client for asking questions using (QnAMakerRuntimeClient rtClient = new QnAMakerRuntimeClient(runtimeCreds) { RuntimeEndpoint = runtimeEndpoint }) { QueryDTO query = new QueryDTO() { Question = question, //The text of the question ScoreThreshold = 0.55, //The minimum relevance score to accept Top = resultCount //How many answers to return, maximum }; return(await rtClient.Runtime.GenerateAnswerAsync(runtimeKB, query).ConfigureAwait(false)); } }
private async Task CognitiveServices_QnA_MigrationGuide_Runtime() { #region Snippet:CognitiveServices_QnA_Maker_Snippets_MigrationGuide_CreateRuntimeClient EndpointKeyServiceClientCredentials credential = new EndpointKeyServiceClientCredentials("{ApiKey}"); QnAMakerRuntimeClient client = new QnAMakerRuntimeClient(credential) { RuntimeEndpoint = "{QnaMakerEndpoint}" }; #endregion Snippet:CognitiveServices_QnA_Maker_Snippets_MigrationGuide_CreateRuntimeClient #region Snippet:CognitiveServices_QnA_Maker_Snippets_MigrationGuide_QueryKnowledgeBase QueryDTO queryDTO = new QueryDTO(); queryDTO.Question = "{Question}"; QnASearchResultList response = await client.Runtime.GenerateAnswerAsync("{knowledgebase-id}", queryDTO); #endregion Snippet:CognitiveServices_QnA_Maker_Snippets_MigrationGuide_QueryKnowledgeBase #region Snippet:CognitiveServices_QnA_Maker_Snippets_MigrationGuide_Chat QueryDTO queryDTOFollowUp = new QueryDTO(); queryDTOFollowUp.Context = new QueryDTOContext(previousQnaId: 1); QnASearchResultList responseFollowUp = await client.Runtime.GenerateAnswerAsync("{knowledgebase-id}", queryDTO); #endregion Snippet:CognitiveServices_QnA_Maker_Snippets_MigrationGuide_Chat }