1- /*
1+ /*
22 * ==========================================
33 Install QnA Maker package with command
44 * ==========================================
@@ -11,7 +11,6 @@ Tasks Included
1111 * Create a knowledgebase
1212 * Update a knowledgebase
1313 * Publish a knowledgebase, waiting for publishing to complete
14- * Get Query runtime endpoint key
1514 * Download a knowledgebase
1615 * Get answer
1716 * Delete a knowledgebase
@@ -40,20 +39,10 @@ class Program
4039 static void Main ( string [ ] args )
4140 {
4241 // <Resourcevariables>
43- var authoringKey = "REPLACE-WITH-YOUR-QNA-MAKER-KEY" ;
44- var resourceName = "REPLACE-WITH-YOUR-RESOURCE-NAME" ;
45-
46- var authoringURL = $ "https://{ resourceName } .cognitiveservices.azure.com";
47- var queryingURL = $ "https://{ resourceName } .azurewebsites.net";
42+ var authoringKey = Environment . GetEnvironmentVariable ( "QNA_MAKER_SUBSCRIPTION_KEY" ) ;
43+ var authoringURL = Environment . GetEnvironmentVariable ( "QNA_MAKER_ENDPOINT" ) ;
4844 // </Resourcevariables>
4945
50- // <TryManagedPreview>
51- // To be set to 'true' to use QnAMakerV2 Public Preview resources
52- // Use the package Microsoft.Azure.CognitiveServices.Knowledge.QnAMaker version 3.0.0-preview.1
53- var tryManagedPreview = false ;
54- // </TryManagedPreview>
55-
56-
5746 // <AuthorizationAuthor>
5847 var client = new QnAMakerClient ( new ApiKeyServiceClientCredentials ( authoringKey ) )
5948 { Endpoint = authoringURL } ;
@@ -63,34 +52,11 @@ static void Main(string[] args)
6352 UpdateKB ( client , kbId ) . Wait ( ) ;
6453 PublishKb ( client , kbId ) . Wait ( ) ;
6554 DownloadKb ( client , kbId ) . Wait ( ) ;
66- var primaryQueryEndpointKey = GetQueryEndpointKey ( client ) . Result ;
67-
68- // <AuthorizationQuery>
69- if ( tryManagedPreview )
70- {
71- GenerateAnswerPreview ( client , kbId ) . Wait ( ) ;
72- }
73- else
74- {
75- var runtimeClient = new QnAMakerRuntimeClient ( new EndpointKeyServiceClientCredentials ( primaryQueryEndpointKey ) )
76- { RuntimeEndpoint = queryingURL } ;
77- GenerateAnswer ( runtimeClient , kbId ) . Wait ( ) ;
78- }
79- // </AuthorizationQuery>
80-
55+ GenerateAnswer ( client , kbId ) . Wait ( ) ;
8156 DeleteKB ( client , kbId ) . Wait ( ) ;
8257 }
8358 // </Main>
8459
85- // <GetQueryEndpointKey>
86- private static async Task < String > GetQueryEndpointKey ( IQnAMakerClient client )
87- {
88- var endpointKeysObject = await client . EndpointKeys . GetKeysAsync ( ) ;
89-
90- return endpointKeysObject . PrimaryEndpointKey ;
91- }
92- // </GetQueryEndpointKey>
93-
9460 // <UpdateKBMethod>
9561 private static async Task UpdateKB ( IQnAMakerClient client , string kbId )
9662 {
@@ -228,20 +194,11 @@ private static async Task DownloadKb(IQnAMakerClient client, string kbId)
228194 // </DownloadKB>
229195
230196 // <GenerateAnswer>
231- private static async Task GenerateAnswer ( QnAMakerRuntimeClient runtimeClient , string kbId )
197+ private static async Task GenerateAnswer ( IQnAMakerClient client , string kbId )
232198 {
233- var response = await runtimeClient . Runtime . GenerateAnswerAsync ( kbId , new QueryDTO { Question = "How do I manage my knowledgebase?" } ) ;
234- Console . WriteLine ( "Endpoint Response: {0}." , response . Answers [ 0 ] . Answer ) ;
235-
236- // Do something meaningful with answer
237- }
238- // </GenerateAnswer>
239-
240- // <GenerateAnswerPreview>
241- private static async Task GenerateAnswerPreview ( IQnAMakerClient client , string kbId )
242- {
243- var response = await client . Knowledgebase . GenerateAnswerAsync ( kbId ,
244- new QueryDTO {
199+ var response = await client . Knowledgebase . GenerateAnswerAsync ( kbId ,
200+ new QueryDTO
201+ {
245202 Question = "Deleted accidentally. how to recover? " ,
246203
247204 // This can be used to query for short answers
@@ -254,7 +211,7 @@ private static async Task GenerateAnswerPreview(IQnAMakerClient client, string k
254211 } ,
255212 IsTest = true ,
256213 Top = 3 ,
257-
214+
258215 // By providing context of previous user question and qna id,
259216 // get contextually relevant answer for current question
260217
@@ -263,22 +220,22 @@ private static async Task GenerateAnswerPreview(IQnAMakerClient client, string k
263220 // PreviousQnaId = 2,
264221 // PreviousUserQuery = "where is my qnamaker resource?"
265222 //},
266-
223+
267224 StrictFilters = new List < MetadataDTO > ( ) ,
268225
269226 // RankerType = "QuestionOnly",
270227
271228 ScoreThreshold = 10 ,
272229 UserId = "SDKUser" ,
273-
230+
274231 } ) ;
275232
276- Console . WriteLine ( "Endpoint Response -- Answer: {0}." , response . Answers [ 0 ] . Answer ) ;
233+ Console . WriteLine ( "Endpoint Response -- Answer: {0}." , response . Answers [ 0 ] . Answer ) ;
277234 Console . WriteLine ( "Endpoint Response -- Short Answer: {0}." , response . Answers [ 0 ] ? . AnswerSpan ? . Text ) ;
278235
279236 // Do something meaningful with answer
280237 }
281- // </GenerateAnswerPreview >
238+ // </GenerateAnswer >
282239
283240 // <DeleteKB>
284241 private static async Task DeleteKB ( IQnAMakerClient client , string kbId )
0 commit comments