public async Task RecognizeHealthcareEntitiesBatchConvenienceWithStatisticsTest() { TextAnalyticsClient client = GetClient(); var documents = batchConvenienceDocuments; HealthcareOptions options = new HealthcareOptions() { IncludeStatistics = true }; AnalyzeHealthcareEntitiesOperation operation = await client.StartHealthcareBatchAsync(documents, "en", options); await operation.WaitForCompletionAsync(PollingInterval); RecognizeHealthcareEntitiesResultCollection resultCollection = operation.Value; Assert.AreEqual(documents.Count, resultCollection.Statistics.DocumentCount); Assert.AreEqual(48, resultCollection[0].Statistics.Value.CharacterCount); Assert.AreEqual(1, resultCollection[0].Statistics.Value.TransactionCount); Assert.Greater(resultCollection.Statistics.DocumentCount, 0); Assert.AreEqual(2, resultCollection.Statistics.DocumentCount); Assert.AreEqual(2, resultCollection.Statistics.TransactionCount); Assert.AreEqual(0, resultCollection.Statistics.InvalidDocumentCount); Assert.AreEqual(2, resultCollection.Statistics.ValidDocumentCount); }
public async Task RecognizeHealthcareEntitiesBatchWithPagination() { TextAnalyticsClient client = GetClient(); string document = @"RECORD #333582770390100 | MH | 85986313 | | 054351 | 2/14/2001 12:00:00 AM | CORONARY ARTERY DISEASE."; var list = new List <string>(); for (int i = 0; i < 10; i++) { list.Add(document); } ; HealthcareOptions options = new HealthcareOptions() { Top = 2 }; AnalyzeHealthcareEntitiesOperation healthOperation = await client.StartHealthcareBatchAsync(list, "en", options); AsyncPageable <DocumentHealthcareResult> results = client.GetHealthcareEntities(healthOperation); int resultCount = 0; await foreach (DocumentHealthcareResult result in results) { resultCount += 1; } Assert.AreEqual(10, resultCount); }
public async Task RecognizeHealthcareEntitiesWithTopParameter() { TextAnalyticsClient client = GetClient(); HealthcareOptions options = new HealthcareOptions() { Top = 1 }; AnalyzeHealthcareEntitiesOperation operation = await client.StartHealthcareBatchAsync(batchDocuments, options); await operation.WaitForCompletionAsync(PollingInterval); RecognizeHealthcareEntitiesResultCollection resultCollection = operation.Value; Assert.AreEqual(1, resultCollection.Count); Assert.AreEqual(3, resultCollection[0].Entities.Count); Assert.IsNotNull(resultCollection[0].Id); Assert.AreEqual("1", resultCollection[0].Id); Assert.AreEqual("100mg", resultCollection[0].Entities.FirstOrDefault().Text); Assert.AreEqual("Dosage", resultCollection[0].Entities.FirstOrDefault().Category); }
public async Task RecognizeHealthcareEntitiesBatchWithStatisticsTest() { TextAnalyticsClient client = GetClient(); var documents = batchDocuments; HealthcareOptions options = new HealthcareOptions() { IncludeStatistics = true }; HealthcareOperation operation = await client.StartHealthcareBatchAsync(documents, options); await operation.WaitForCompletionAsync(); RecognizeHealthcareEntitiesResultCollection resultCollection = operation.Value; Assert.AreEqual(2, resultCollection.Count); Assert.AreEqual(2, resultCollection.Statistics.DocumentCount); Assert.AreEqual(2, resultCollection.Statistics.TransactionCount); Assert.AreEqual(0, resultCollection.Statistics.InvalidDocumentCount); }
public async Task HealthcareAsyncPagination() { string endpoint = TestEnvironment.Endpoint; string apiKey = TestEnvironment.ApiKey; var client = new TextAnalyticsClient(new Uri(endpoint), new AzureKeyCredential(apiKey)); #region Snippet:TextAnalyticsSampleHealthcareAsyncPagination string document = @"RECORD #333582770390100 | MH | 85986313 | | 054351 | 2/14/2001 12:00:00 AM | CORONARY ARTERY DISEASE."; var list = new List <string>(); for (int i = 0; i < 10; i++) { list.Add(document); } ; HealthcareOptions options = new HealthcareOptions() { Top = 2 }; HealthcareOperation healthOperation = await client.StartHealthcareBatchAsync(list, "en", options); AsyncPageable <DocumentHealthcareResult> results = client.GetHealthcareEntities(healthOperation); Console.WriteLine($"Results of Azure Text Analytics \"Healthcare Async\""); Console.WriteLine(""); int resultCount = 0; await foreach (DocumentHealthcareResult result in results) { resultCount += 1; } Console.WriteLine("resultCount " + resultCount); }
public async Task RecognizeHealthcareEntitiesWithSkipParameter() { TextAnalyticsClient client = GetClient(); HealthcareOptions options = new HealthcareOptions() { Skip = 1 }; HealthcareOperation operation = await client.StartHealthcareBatchAsync(batchDocuments, options); await operation.WaitForCompletionAsync(PollingInterval); RecognizeHealthcareEntitiesResultCollection resultCollection = operation.Value; Assert.IsNotNull(resultCollection[0].TextAnalyticsError); Assert.IsNotNull(resultCollection[0].Warnings); Assert.AreEqual(1, resultCollection.Count); Assert.AreEqual(6, resultCollection[0].Entities.Count); Assert.IsNotNull(resultCollection[0].Id); Assert.AreEqual("2", resultCollection[0].Id); Assert.AreEqual("rapid", resultCollection[0].Entities.FirstOrDefault().Text); Assert.AreEqual("SymptomOrSign", resultCollection[0].Entities.FirstOrDefault().Category); }
public async Task HealthcareBatchAsync() { string endpoint = TestEnvironment.Endpoint; string apiKey = TestEnvironment.ApiKey; var client = new TextAnalyticsClient(new Uri(endpoint), new AzureKeyCredential(apiKey)); #region Snippet:TextAnalyticsSampleHealthcareBatchAsync string document = @"RECORD #333582770390100 | MH | 85986313 | | 054351 | 2/14/2001 12:00:00 AM | CORONARY ARTERY DISEASE | Signed | DIS | \ Admission Date: 5/22/2001 Report Status: Signed Discharge Date: 4/24/2001 ADMISSION DIAGNOSIS: CORONARY ARTERY DISEASE. \ HISTORY OF PRESENT ILLNESS: The patient is a 54-year-old gentleman with a history of progressive angina over the past several months. \ The patient had a cardiac catheterization in July of this year revealing total occlusion of the RCA and 50% left main disease ,\ with a strong family history of coronary artery disease with a brother dying at the age of 52 from a myocardial infarction and \ another brother who is status post coronary artery bypass grafting. The patient had a stress echocardiogram done on July , 2001 , \ which showed no wall motion abnormalities , but this was a difficult study due to body habitus. The patient went for six minutes with \ minimal ST depressions in the anterior lateral leads , thought due to fatigue and wrist pain , his anginal equivalent. Due to the patient's \ increased symptoms and family history and history left main disease with total occasional of his RCA was referred for revascularization with open heart surgery."; List <string> batchInput = new List <string>() { document, document, }; HealthcareOptions options = new HealthcareOptions() { Top = 1, Skip = 0, IncludeStatistics = true }; HealthcareOperation healthOperation = await client.StartHealthcareBatchAsync(batchInput, "en", options); await healthOperation.WaitForCompletionAsync(); RecognizeHealthcareEntitiesResultCollection results = healthOperation.Value; Console.WriteLine($"Results of Azure Text Analytics \"Healthcare Async\" Model, version: \"{results.ModelVersion}\""); Console.WriteLine(""); foreach (DocumentHealthcareResult result in results) { Console.WriteLine($" Recognized the following {result.Entities.Count} healthcare entities:"); foreach (HealthcareEntity entity in result.Entities) { Console.WriteLine($" Entity: {entity.Text}"); Console.WriteLine($" Subcategory: {entity.Subcategory}"); Console.WriteLine($" Offset: {entity.Offset}"); Console.WriteLine($" Length: {entity.Length}"); Console.WriteLine($" IsNegated: {entity.IsNegated}"); Console.WriteLine($" Links:"); foreach (HealthcareEntityLink healthcareEntityLink in entity.Links) { Console.WriteLine($" ID: {healthcareEntityLink.Id}"); Console.WriteLine($" DataSource: {healthcareEntityLink.DataSource}"); } } Console.WriteLine($" Document statistics:"); Console.WriteLine($" Character count (in Unicode graphemes): {result.Statistics.Value.CharacterCount}"); Console.WriteLine($" Transaction count: {result.Statistics.Value.TransactionCount}"); Console.WriteLine(""); } Console.WriteLine($"Request statistics:"); Console.WriteLine($" Document Count: {results.Statistics.DocumentCount}"); Console.WriteLine($" Valid Document Count: {results.Statistics.ValidDocumentCount}"); Console.WriteLine($" Transaction Count: {results.Statistics.TransactionCount}"); Console.WriteLine($" Invalid Document Count: {results.Statistics.InvalidDocumentCount}"); Console.WriteLine(""); }