Natural Language Processing on Azure
This covers skill area 4, “Describe features of Natural Language Processing (NLP) workloads on Azure” (15–20% of the exam).
The text workloads
Natural language processing lets software analyze, understand, generate, and transform human language. On AI-900, the safest approach is to identify the output. If the output is topics, entities, sentiment, language, summary, or a custom category, Azure AI Language is usually the service behind it.
Key phrase extraction and named entity recognition are the pair people mix up most often. Key phrases are the main talking points in a document, such as “late shipment” or “battery life.” Entities are typed things such as person, location, organization, datetime, quantity, URL, email, or product. A phrase can be important without being an entity, and an entity can be extracted even if it is not the main topic.
| Feature | Returns | Example question wording |
|---|---|---|
| Key phrase extraction | Main topics or important phrases in text | “Find the main issues customers mention in support tickets.” |
| Named entity recognition | Typed entities such as person, location, organization, datetime, quantity, URL, and email | “Identify company names, cities, dates, and monetary amounts in a document.” |
| PII detection and redaction | Personal data categories and optionally redacted text | “Remove names, phone numbers, email addresses, and government IDs before storing chat logs.” |
| Sentiment analysis | Positive, neutral, negative, or mixed sentiment with confidence scores | “Determine whether customer reviews are favorable or unfavorable.” |
| Opinion mining | Aspect-level opinions, such as a negative opinion about delivery but a positive opinion about quality | “Find which product attributes customers like or dislike.” |
| Language detection | The detected language and confidence score | “Route incoming messages to the correct regional support queue.” |
| Extractive summarization | Important existing sentences selected from the source text | “Pull the most important sentences from a long policy document.” |
| Abstractive summarization | A newly generated summary that may use wording not found verbatim in the source | “Write a short executive summary of a long article.” |
| Custom text classification | Your own labels for text documents or utterances | “Train a model to classify help-desk tickets into company-specific categories.” |
“Shipping delay” and “poor battery life” are key phrases because they are what the text is about. “Seattle,” “Contoso,” and “Friday” are entities because they are typed things.
Conversational language understanding and question answering
Conversational language understanding, or CLU, is for apps that need to understand what a user wants to do. You define example user statements called utterances, map them to intents, and extract entities needed to complete the action.
Example: the user says, “book me a flight to Seattle on Friday.” The whole sentence is the utterance. The desired action is the intent, so the model predicts BookFlight. The useful details are entities: destination is Seattle and date is Friday. A travel bot can then ask follow-up questions such as origin city, airline preference, or departure time.
CLU is not just keyword matching. The point is that different utterances can mean the same intent: “I need to fly to Seattle Friday,” “get me a ticket to Seattle,” and “schedule travel to Seattle this Friday” should all map to BookFlight. The model learns from labeled examples and returns the best intent plus extracted entities.
Question answering is different. It is for answering user questions from a knowledge base, FAQ page, product manual, or support article collection. Custom question answering lets you build and curate a knowledge base of question-and-answer pairs, synonyms, alternate phrasings, and source documents. The output is an answer, often with a confidence score and source. It does not choose an intent so an application can perform a transaction; it retrieves or generates the best answer from the configured knowledge source.
Azure AI Bot Service is the channel layer. It hosts and connects a bot to users through channels such as Microsoft Teams, web chat, and other messaging surfaces. The bot can call CLU when it needs to understand intent, or call question answering when it needs to answer from a knowledge base. Bot Service is not the language model itself; it is how the conversation reaches the user and how the application logic is orchestrated.
Intent means conversational language understanding. A knowledge base of question-and-answer pairs means question answering. A bot in Teams or web chat is usually Azure AI Bot Service in front of one of those language capabilities.
| Choice | Best for | Output | Exam clue |
|---|---|---|---|
| Conversational language understanding | Understanding what the user wants to do | Intent plus entities | “Book a flight,” “cancel an order,” or “change my address” |
| Question answering | Answering questions from FAQs and documents | Answer with confidence and source | “Use a knowledge base,” “FAQ,” or “support article” |
| Azure AI Bot Service | Publishing a conversational app to channels | A bot endpoint and channel connections | “Make it available in Teams or web chat” |
Speech: recognition, synthesis, translation
Speech workloads move between spoken audio and text. The exam usually signals the direction. Speech to text turns audio into text. Text to speech turns text into audio. Speech translation translates spoken input into another language. Speaker recognition works with enrolled voice profiles to verify or identify speakers.
Speech to text supports real-time recognition for live captions, voice commands, and dictation. It also supports batch transcription for stored audio files such as call-center recordings. Custom speech can improve recognition for specialized vocabulary, accents, product names, or noisy environments.
Text to speech creates spoken audio from text using neural voices. Speech Synthesis Markup Language, or SSML, controls pronunciation, pauses, pitch, rate, style, and voice selection. Custom neural voice can create a branded voice from training data, but it is governed by responsible AI and access requirements because synthetic voices can be misused.
Speech translation accepts spoken input and produces translated text or speech in another language. If the input is typed text rather than audio, that is not Speech; that is Azure AI Translator. Speaker recognition compares a voice against enrolled voice profiles for verification or identification scenarios.
| Capability | Input | Output | Example scenario |
|---|---|---|---|
| Speech to text | Audio stream or audio file | Text transcript | Live captions for a meeting or transcription of recorded calls |
| Text to speech | Text or SSML | Spoken audio | An app reads instructions aloud with a neural voice |
| Custom neural voice | Approved voice training data | A custom synthetic voice | A brand creates an approved voice for guided customer experiences |
| Speech translation | Spoken audio in one language | Translated text or translated speech | A live support call is translated between English and Spanish |
| Speaker recognition | Audio sample and enrolled voice profile | Speaker verification or identification result | A system verifies a caller by voice after enrollment |
Audio to text is speech recognition. Text to audio is speech synthesis. Audio in one language to another language is speech translation. Typed text translation belongs to Azure AI Translator.
The Azure services, and how to choose
The NLP service lineup is smaller than it first looks. Azure AI Language owns text analysis, custom text features, CLU, and question answering. Azure AI Speech owns audio-to-text, text-to-audio, spoken translation, and speaker recognition. Azure AI Translator owns text translation and transliteration. Azure AI Bot Service connects conversational apps to channels.
| Service | Owns these features | Use it when | Do not use it for |
|---|---|---|---|
| Azure AI Language | Key phrase extraction, NER, PII detection, sentiment analysis, opinion mining, language detection, summarization, custom text classification, custom NER, CLU, and question answering | You need to analyze or understand text | Translating text between languages, processing audio, or hosting a bot channel |
| Azure AI Speech | Speech to text, batch transcription, text to speech, neural voices, custom neural voice, speech translation, and speaker recognition | The input or output is spoken audio | Typed text translation, key phrase extraction, PII redaction, or FAQ knowledge bases |
| Azure AI Translator | Text translation, language detection for translation, dictionary lookup, and transliteration | You need to translate typed text or rewrite text into another script | Recognizing speech, generating audio, extracting sentiment, or understanding user intent |
| Azure AI Bot Service | Bot hosting, channel connections, conversation endpoint, and integration with language services | You need users to interact with a conversational app in Teams, web chat, or another channel | Training language models, translating text, or transcribing audio by itself |
Two decisions the exam repeats
The first decision is translation mode. Text translation is Azure AI Translator. The user types or submits text, and the service returns equivalent text in another language. Spoken translation is Azure AI Speech because the input is audio. Speech translation can recognize speech, translate it, and return translated text or speech.
The second decision is translation versus transliteration. Translation changes meaning from one language to another, such as English to French. Transliteration rewrites text from one script to another while keeping the same language, such as Hindi written in Latin characters. Transliteration is a Translator feature, not a Speech feature and not language understanding.
Prebuilt versus custom language features
Azure AI Language has prebuilt features you can use immediately: key phrase extraction, named entity recognition, PII detection, sentiment analysis, opinion mining, language detection, and summarization. You send text and receive analysis without training your own model.
It also has custom features for domain-specific needs. Custom text classification trains labels that matter to your organization, such as “billing dispute,” “technical outage,” or “contract risk.” Custom named entity recognition extracts your own entity types, such as internal product codes, project names, equipment IDs, or policy references. Conversational language understanding is custom in the sense that you define intents, utterances, and entities for the application.
Azure AI services can be provisioned as a multi-service resource or as a single-service resource. A multi-service resource gives one key and endpoint for several supported Azure AI services. A single-service resource gives one key and endpoint for one service. For AI-900, remember that this is about provisioning and access, not which workload the service solves.
Text analysis and understanding: Language. Audio: Speech. Text translation or transliteration: Translator. User-facing conversational channel: Bot Service.
Where people lose points here
They confuse key phrases with entities
Key phrases are the main talking points. Entities are typed objects. “Poor battery life” is likely a key phrase. “April 15” is a datetime entity.
They confuse CLU with question answering
CLU predicts intent and extracts entities so the app can do something. Question answering returns answers from a knowledge base or FAQ.
They send all translation to Translator
Typed text translation is Translator. Spoken translation is Speech because audio recognition is part of the workload.
They treat Bot Service as the AI model
Bot Service connects the conversation to channels and application logic. Language and Speech provide the AI capabilities behind the bot.
Extractive summarization selects existing sentences. Abstractive summarization writes a new summary. If the answer describes creating new wording, do not call it extractive.
The night-before cheat sheet
Text features
- Key phrases: main talking points.
- NER: typed things such as person, location, organization, datetime, and quantity.
- PII: finds and can redact personal data.
- Sentiment: positive, neutral, negative, or mixed.
- Opinion mining: sentiment about specific aspects.
- Language detection: identifies the language of text.
- Extractive summarization: selects important original sentences.
- Abstractive summarization: creates a new summary.
- Custom text classification: trains your own document labels.
CLU vocabulary
- Utterance: what the user says.
- Intent: what the user wants to do.
- Entity: the extracted detail needed to complete the intent.
Speech capabilities
- Speech to text: audio becomes a transcript.
- Batch transcription: stored audio becomes transcripts at scale.
- Text to speech: text becomes spoken audio using neural voices.
- SSML: controls pronunciation, pauses, pitch, rate, and style.
- Custom neural voice: approved custom synthetic voice.
- Speech translation: spoken language becomes translated text or speech.
- Speaker recognition: verifies or identifies an enrolled speaker.
Services in one line
- Azure AI Language: text analytics, summarization, custom classification, CLU, and question answering.
- Azure AI Speech: speech recognition, synthesis, spoken translation, and speaker recognition.
- Azure AI Translator: typed text translation and transliteration.
- Azure AI Bot Service: channels and hosting for conversational apps.