示例#1
0
        private static async void AnalyzeText(string text)
        {
            var analyticsServiceClient = new TextAnalyticsServiceClient(_subscriptionKey);

            Console.WriteLine("");
            await AnalyzeLanguage(text, analyticsServiceClient);
            await AnalyzeSentiment(text, analyticsServiceClient);
            await DetectKeyPhrases(text, analyticsServiceClient);

            Console.WriteLine("Done !");
            Console.WriteLine("");
        }
示例#2
0
        private static async Task AnalyzeSentiment(string text, TextAnalyticsServiceClient analyticsServiceClient)
        {
            var sentiment = await analyticsServiceClient.AnalyzeSentimentAsync(text);

            Console.WriteLine(" - Sentiment ");
            foreach (var document in sentiment.documents)
            {
                Console.WriteLine($@"  - {document.id} Sentiment [{document.score}]");
            }

            foreach (var error in sentiment.errors)
            {
                Console.WriteLine($@"  - Id: {error.id}, {error.message}");
            }
        }
示例#3
0
        private static async Task DetectKeyPhrases(string text, TextAnalyticsServiceClient analyticsServiceClient)
        {
            var keyphrases = await analyticsServiceClient.DetectKeyPhrasesAsync(text);

            Console.WriteLine(" - KeyPhrases ");
            foreach (var document in keyphrases.documents)
            {
                foreach (var keyPhrase in document.keyPhrases)
                {
                    Console.WriteLine($@"  key phrase: {keyPhrase}");
                }
            }

            foreach (var error in keyphrases.errors)
            {
                Console.WriteLine($@"  - Id: {error.id}, {error.message}");
            }
        }
示例#4
0
        private static async Task AnalyzeLanguage(string text, TextAnalyticsServiceClient analyticsServiceClient)
        {
            var analytic = await analyticsServiceClient.AnalyzeLanguageAsync(text);

            Console.WriteLine(" - Language ");
            foreach (var document in analytic.documents)
            {
                var langs = document.detectedLanguages.Aggregate("",
                                                                 (current, detectedLanguage) =>
                                                                 current +
                                                                 $@"name: {detectedLanguage.name} [{detectedLanguage.iso6391Name}], score [{detectedLanguage.score}] {
                            Environment.NewLine}");
                Console.WriteLine($@"  - Id: {document.id} - {langs}");
            }

            foreach (var error in analytic.errors)
            {
                Console.WriteLine($@"  - Id: {error.id}, {error.message}");
            }
        }
示例#5
0
        static async Task ProcessTexts()
        {
            string msg = "Today is an excellent day! Every day is; you see, rain makes plants grow and sun makes us happy. It's all good, either way.";

            string apiUrl = "https://eastus.api.cognitive.microsoft.com/text/analytics/v2.1/";
            string apiKey = "2b7db267d498432e80061c5c8146b7e7";

            TextAnalyticsServiceClient svc = new TextAnalyticsServiceClient(apiUrl, apiKey);

            TextAnalyticsServiceResult svcResult = svc.ProcessAsync(msg).GetAwaiter().GetResult();

            if (svcResult.Responses.Count > 0)
            {
                TextAnalyticsResponse response = svcResult.Responses.First();

                Console.WriteLine("Sentiment Score: " + response.SentimentScore.ToString());
                Console.WriteLine();

                Console.WriteLine("Key Phrases: " + response.KeyPhrases.Count.ToString());

                foreach (string keyPhrase in response.KeyPhrases)
                {
                    Console.WriteLine(keyPhrase);
                }

                Console.WriteLine();

                Console.WriteLine("Detected Languages: " + response.DetectedLanguages.Count.ToString());

                foreach (TextAnalyticsLanguage detectedLanguage in response.DetectedLanguages)
                {
                    Console.WriteLine(detectedLanguage.Name);
                }

                Console.WriteLine();

                Console.WriteLine("Entities: " + response.Entities.Count.ToString());

                foreach (TextAnalyticsEntity entity in response.Entities)
                {
                    Console.WriteLine(entity.Name + " | " + entity.Type + " | " + entity.SubType);
                }

                Console.WriteLine();

                Console.WriteLine("Errors: " + svcResult.Errors.Count.ToString());

                foreach (TextAnalyticsError error in svcResult.Errors)
                {
                    Console.WriteLine(error.Message);
                }

                Console.WriteLine();
            }



            //Console.WriteLine("George Washington Farewell Address (partial)");

            //string text2 = File.ReadAllText("texts/text2.txt");

            //TextAnalyticsServiceResult result2 = await svc.ProcessAsync(text2);
            //string json2 = result2.ToJson();
            //Console.WriteLine(json2);

            //Console.WriteLine();
            //Console.WriteLine();
        }