Skip to content

Commit 82fd6bc

Browse files
authored
[text analytics] Fixed a few minor issues in a sample and the README (#17192)
1 parent 89af8db commit 82fd6bc

File tree

2 files changed

+29
-6
lines changed

2 files changed

+29
-6
lines changed

sdk/textanalytics/azure-ai-textanalytics/README.md

Lines changed: 26 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -503,7 +503,11 @@ Note: The Healthcare Entities Analysis service is currently available only in th
503503
```python
504504
from azure.core.credentials import AzureKeyCredential
505505
from azure.ai.textanalytics import (
506-
TextAnalyticsClient, RecognizeEntitiesAction, RecognizePiiEntitiesAction, ExtractKeyPhrasesAction
506+
TextAnalyticsClient,
507+
RecognizeEntitiesAction,
508+
RecognizePiiEntitiesAction,
509+
ExtractKeyPhrasesAction,
510+
RecognizeLinkedEntitiesAction
507511
)
508512

509513
credential = AzureKeyCredential("<api_key>")
@@ -520,6 +524,7 @@ poller = text_analytics_client.begin_analyze_batch_actions(
520524
RecognizeEntitiesAction(),
521525
RecognizePiiEntitiesAction(),
522526
ExtractKeyPhrasesAction(),
527+
RecognizeLinkedEntitiesAction()
523528
]
524529
)
525530

@@ -559,6 +564,26 @@ for idx, doc in enumerate(docs):
559564
print("Document text: {}\n".format(documents[idx]))
560565
print("Key Phrases: {}\n".format(doc.key_phrases))
561566
print("------------------------------------------")
567+
568+
fourth_action_result = next(result)
569+
print("Results of Linked Entities Recognition action:")
570+
docs = [doc for doc in fourth_action_result.document_results if not doc.is_error]
571+
572+
for idx, doc in enumerate(docs):
573+
print("Document text: {}\n".format(documents[idx]))
574+
for linked_entity in doc.entities:
575+
print("Entity name: {}".format(linked_entity.name))
576+
print("...Data source: {}".format(linked_entity.data_source))
577+
print("...Data source language: {}".format(linked_entity.language))
578+
print("...Data source entity ID: {}".format(linked_entity.data_source_entity_id))
579+
print("...Data source URL: {}".format(linked_entity.url))
580+
print("...Document matches:")
581+
for match in linked_entity.matches:
582+
print("......Match text: {}".format(match.text))
583+
print(".........Confidence Score: {}".format(match.confidence_score))
584+
print(".........Offset: {}".format(match.offset))
585+
print(".........Length: {}".format(match.length))
586+
print("------------------------------------------")
562587
```
563588

564589
The returned response is an object encapsulating multiple iterables, each representing results of individual analyses.

sdk/textanalytics/azure-ai-textanalytics/samples/sample_analyze_healthcare_entities.py

Lines changed: 3 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -116,8 +116,8 @@ def analyze_healthcare_entities(self):
116116
for relation in dosage_of_medication_relations:
117117
# The DosageOfMedication relation should only contain the dosage and medication roles
118118

119-
dosage_role = next(filter(lambda x: x.name == HealthcareEntityRelationRoleType.DOSAGE, relation.roles))
120-
medication_role = next(filter(lambda x: x.name == HealthcareEntityRelationRoleType.MEDICATION, relation.roles))
119+
dosage_role = next(iter(filter(lambda x: x.name == HealthcareEntityRelationRoleType.DOSAGE, relation.roles)))
120+
medication_role = next(iter(filter(lambda x: x.name == HealthcareEntityRelationRoleType.MEDICATION, relation.roles)))
121121

122122
try:
123123
dosage_value = int(re.findall(r"\d+", dosage_role.entity.text)[0]) # we find the numbers in the dosage
@@ -126,12 +126,10 @@ def analyze_healthcare_entities(self):
126126
# Error handling for if there's no dosage in numbers.
127127
pass
128128

129-
[
129+
for medication, dosage in medication_to_dosage.items():
130130
print("We have fulfilled '{}' total mg of '{}'".format(
131131
dosage, medication
132132
))
133-
for medication, dosage in medication_to_dosage.items()
134-
]
135133

136134

137135
if __name__ == "__main__":

0 commit comments

Comments
 (0)