npx skills add ...
npx skills add microsoft/agent-skills --skill azure-ai-textanalytics-py
Azure AI Text Analytics SDK for sentiment analysis, entity recognition, key phrases, language detection, PII, and healthcare NLP. Use for natural language processing on text. Triggers: "text analytics", "sentiment analysis", "entity recognition", "key phrase", "PII detection", "TextAnalyticsClient".
This repo is now called microsoft/skills. Both names install the same content, but the install count here only covers this one.
npx skills add microsoft/agent-skills --skill azure-ai-textanalytics-py
Client library for Azure AI Language service NLP capabilities including sentiment, entities, key phrases, and more.
🔑 Two rules apply to every code sample below:
- Prefer
DefaultAzureCredential. It works locally (Azure CLI / VS Code / Developer CLI) and in Azure (managed identity, workload identity) with no code change. Avoid connection strings, account/API keys — they bypass Entra audit and rotation.
- Local dev:
DefaultAzureCredentialworks as-is.- Production: set
AZURE_TOKEN_CREDENTIALS=prod(orAZURE_TOKEN_CREDENTIALS=<specific_credential>) to constrain the credential chain to production-safe credentials.- Wrap every client in a context manager so HTTP transports, sockets, and token caches are released deterministically:
- Sync:
with <Client>(...) as client:- Async:
async with <Client>(...) as client:andasync with DefaultAzureCredential() as credential:(fromazure.identity.aio)Snippets may abbreviate this setup, but production code should always follow both rules.
New code should use DefaultAzureCredential above. Use AzureKeyCredential only if you have an existing keyed deployment that hasn't been migrated to Entra ID yet — for example, regulated environments still completing their Entra rollout.
| Client | Purpose |
|---|---|
TextAnalyticsClient | All text analytics operations |
TextAnalyticsClient (aio) | Async version |
| Method | Description |
|---|---|
analyze_sentiment | Sentiment analysis with opinion mining |
recognize_entities | Named entity recognition |
recognize_pii_entities | PII detection and redaction |
recognize_linked_entities | Entity linking to Wikipedia |
extract_key_phrases | Key phrase extraction |
detect_language | Language detection |
begin_analyze_healthcare_entities | Healthcare NLP (long-running) |
begin_analyze_actions | Multiple analyses in batch |
azure.ai.textanalytics sync clients with azure.ai.textanalytics.aio async clients in the same call path. Choose one mode per module.with TextAnalyticsClient(...) as client: (sync) or async with TextAnalyticsClient(...) as client: (async). For async DefaultAzureCredential from azure.identity.aio, also use async with credential: so tokens and transports are cleaned up.| File | Contents |
|---|---|
| references/capabilities.md | Additional non-hero capabilities, operation-group coverage, and production checklists. |
| references/non-hero-scenarios.md | Dedicated non-hero examples for secondary/advanced scenarios. |