Text Analysis and Speech on Azure for AI-103: Sentiment Analysis, Named Entity Recognition, PII Detection, CLU, Custom Classification, Summarization, Text Analytics for Health, Translator, Speech-to-Text, Text-to-Speech, and Speech Translation

Table of Contents

In the previous post, we taught machines to see. Now we teach them to read, listen, and speak. Domain 4 (10-15%) covers Azure AI Language (text analysis, NLP, CLU), Azure AI Translator, and Azure AI Speech. These services turn unstructured text and audio into structured, actionable data — exactly what data engineers do with every other data type.

Analogy — A multilingual analyst who never sleeps. Imagine hiring an analyst who reads every customer review in 100+ languages, identifies the sentiment (happy, angry, neutral), extracts the key topics (delivery, pricing, quality), flags any personal information (names, addresses, phone numbers), summarizes long documents into bullet points, and translates everything into your company’s language — all in seconds, 24/7, without breaks. That is what Azure AI Language and Speech services do together.

Text Analysis and Speech Through a Data Engineer’s Lens

Why data engineers need NLP and speech services:

  1. UNSTRUCTURED DATA PROCESSING
     80% of enterprise data is unstructured (emails, documents, logs, audio)
     NLP converts unstructured text → structured columns and metrics
     Example: customer feedback emails → sentiment score + key topics + PII flagged

  2. DATA PIPELINE ENRICHMENT
     Add NLP-derived columns to your pipeline output:
     - Support tickets → sentiment + category + urgency
     - News articles → entities + summary + language
     - Call recordings → transcript + speaker + key phrases

  3. SEARCH AND RAG
     AI Search skillsets use NLP during indexing:
     - Entity Recognition skill → extract people, organizations, locations
     - Key Phrase Extraction skill → identify topics
     - Language Detection skill → route to correct analyzer
     - PII Detection skill → flag sensitive documents

  4. COMPLIANCE
     PII detection in data pipelines → flag or redact before storage
     Required for: GDPR, PIPEDA, HIPAA, SOX compliance

Real-world examples data engineers encounter:
  Customer support: classify tickets by topic and urgency (CLU)
  Finance: extract entities from earnings call transcripts (NER)
  Healthcare: extract medical terms from clinical notes (Text Analytics for Health)
  Legal: summarize contracts and flag key clauses (Summarization)
  HR: detect PII in employee data before loading to analytics (PII Detection)
  Call centers: transcribe calls, analyze sentiment per speaker (Speech + Sentiment)
  Multilingual: translate product reviews from 30 markets (Translator)

Azure AI Language — The NLP Platform

Azure AI Language provides prebuilt and custom NLP models.

Prebuilt features (ready to use, no training):
  Sentiment Analysis and Opinion Mining
  Named Entity Recognition (NER)
  Entity Linking
  PII Detection and Redaction
  Key Phrase Extraction
  Language Detection
  Text Summarization (extractive and abstractive)
  Text Analytics for Health

Custom features (train with your data):
  Conversational Language Understanding (CLU) -- replacement for LUIS
  Custom Text Classification
  Custom Named Entity Recognition
  Orchestration Workflow
  Custom Question Answering (CQA) -- replacement for QnA Maker

Accessing Azure AI Language:
  REST API and SDKs (Python, C#, JavaScript, Java)
  Foundry portal (Language Playground, now called Foundry Tools)
  AI Search skillsets (during indexing)
  Prompt Flow nodes (in AI orchestration)
  MCP server (for AI agent tool integration)

Sentiment Analysis and Opinion Mining

Sentiment analysis determines the emotional tone of text. Opinion mining goes deeper — it links sentiments to specific aspects mentioned in the text.

Analogy — Reading restaurant reviews. Sentiment analysis is like reading a review and saying “this is a positive review” (overall sentiment). Opinion mining is like noting “the food was praised but the service was criticized” (aspect-level sentiment). For a restaurant owner, aspect-level is far more actionable than overall.

Sentiment analysis output:
  Input: "The hotel room was spacious and clean, but the breakfast was terrible."

  Document sentiment: mixed
  Sentence 1: "The hotel room was spacious and clean"
    Sentiment: positive (confidence: 0.95)
  Sentence 2: "but the breakfast was terrible"
    Sentiment: negative (confidence: 0.97)

Opinion mining output (aspect-level):
  Input: "The hotel room was spacious and clean, but the breakfast was terrible."

  Aspect: "hotel room"  → Opinion: "spacious" (positive), "clean" (positive)
  Aspect: "breakfast"   → Opinion: "terrible" (negative)

  This tells you WHAT people like (rooms) and WHAT they dislike (breakfast)

Real-world example -- Product review pipeline:
  1. E-commerce site collects 10,000 reviews daily
  2. Data pipeline extracts text from review submissions
  3. Sentiment analysis scores each review: positive/negative/neutral/mixed
  4. Opinion mining extracts: product aspect + opinion + sentiment
  5. Results loaded to data warehouse:
     product_id | aspect      | opinion    | sentiment | confidence
     SKU-123    | battery     | excellent  | positive  | 0.96
     SKU-123    | camera      | blurry     | negative  | 0.93
     SKU-123    | price       | reasonable | positive  | 0.88
  6. Dashboard: product teams see aspect-level sentiment trends over time

Named Entity Recognition — Finding Important Things in Text

NER identifies and classifies entities in text into predefined categories.

Analogy — A highlighter with color-coding. NER reads text and highlights every important thing it finds: people in yellow, organizations in blue, locations in green, dates in orange, quantities in purple. Each highlighted word gets a category label and a confidence score.

Entity categories:
  Person:       "Satya Nadella announced..."
  Organization: "Microsoft released..."
  Location:     "...in Toronto, Canada"
  DateTime:     "...on January 15, 2026"
  Quantity:     "...revenue of $10 million"
  Email:        "contact us at info@company.com"
  URL:          "visit https://azure.microsoft.com"
  IP Address:   "server at 192.168.1.1"
  Phone:        "call +1-416-555-0100"

Entity linking (related but different):
  Connects entities to Wikipedia entries for disambiguation
  "Paris" → linked to Paris, France (not Paris, Texas)
  "Apple" → linked to Apple Inc. (not the fruit)
  Adds a knowledge base URL to each entity

Real-world example -- Financial news pipeline:
  Input: "Microsoft CEO Satya Nadella announced a $2B investment in AI
          infrastructure in Ontario, Canada on March 15, 2026."

  NER output:
    "Microsoft"      → Organization (0.99)
    "Satya Nadella"  → Person (0.98)
    "$2B"            → Quantity / Currency (0.97)
    "AI"             → Skill (0.85)
    "Ontario, Canada"→ Location (0.96)
    "March 15, 2026" → DateTime (0.99)

  Pipeline stores: structured entities as columns in a Lakehouse table
  Downstream: analysts can filter by organization, location, date, amount

PII Detection and Redaction — Protecting Privacy

PII detection identifies personal information in text. Redaction replaces it with placeholder characters or category labels.

Analogy — A compliance officer with a black marker. PII detection scans every document like a compliance officer who identifies sensitive information (names, SSNs, credit card numbers, addresses) and blacks them out before the document enters the data warehouse. The original text is preserved separately (if needed), but the analytics layer only sees redacted data.

PII categories (50+ entity types):
  Person name: "John Smith" → "**********"
  Social Security Number: "123-45-6789" → "***-**-****"
  Credit card number: "4111-1111-1111-1111" → "****-****-****-****"
  Email address: "john@company.com" → "***@***.com"
  Phone number: "+1-416-555-0100" → "+*-***-***-****"
  Physical address: "123 Main St, Toronto" → "*** *** **, *******"
  Date of birth: "born on March 15, 1990" → "born on ***** **, ****"
  Medical record: "patient ID MRN-12345" → "patient ID ***-*****"
  Bank account: "account 987654321" → "account *********"

Redaction modes:
  Character masking: replace with * characters
  Entity type masking: replace with [PERSON], [PHONE], [EMAIL]

Conversational PII:
  Same as text PII but designed for chat transcripts and conversation logs
  Handles speaker attribution (Agent vs Customer)
  Can redact customer PII while keeping agent messages intact

Real-world example -- Support ticket pipeline:
  1. Customer submits: "My name is Sarah Chen, my account 
     number is 987654, and I live at 42 Oak St, Vancouver."
  2. PII detection identifies: name, account number, address
  3. Redacted version: "My name is [PERSON], my account 
     number is [ACCOUNT], and I live at [ADDRESS]."
  4. Redacted text goes to analytics warehouse (safe for analysts)
  5. Original text stays in encrypted operational database (limited access)
  6. Compliance team can audit which PII types were detected

For AI-103:
  Know PII detection vs PII redaction (detect = identify, redact = mask)
  Know the two masking modes (character vs entity type)
  Know Conversational PII for chat/transcript scenarios
  Know that PII detection is used in Content Safety (output filtering)

Key Phrase Extraction — What Is This About?

Key phrase extraction identifies the main topics discussed in text.
No training needed -- works on any text.

Input: "Azure Data Factory provides a cloud-based data integration service
        that allows you to create data-driven workflows for orchestrating
        data movement and transforming data at scale."

Key phrases: ["cloud-based data integration service", "data-driven workflows",
              "data movement", "Azure Data Factory", "transforming data"]

Real-world example -- Document tagging pipeline:
  1. New documents uploaded to Blob Storage daily
  2. Pipeline extracts key phrases from each document
  3. Key phrases stored as tags in the search index
  4. Users search by topic: "data integration" → finds this document
  5. Dashboard shows trending topics across all documents over time

  This is like automatic hashtag generation for your document library.

Key phrases vs Tags (Image Analysis):
  Key Phrases: extract topics from TEXT
  Tags: extract keywords from IMAGES
  Same concept, different modalities

Language Detection — What Language Is This?

Language detection identifies the language and script of input text.
Supports 100+ languages.

Input: "Bonjour, comment allez-vous aujourd'hui?"
Output: language: "French", code: "fr", confidence: 0.99

Input: "こんにちは、お元気ですか?"
Output: language: "Japanese", code: "ja", confidence: 0.98

Real-world example -- Multilingual data pipeline:
  1. Global e-commerce site receives reviews in 30+ languages
  2. Pipeline first runs language detection on each review
  3. Routes to language-specific processing:
     English → sentiment analysis (English model)
     French → translate to English → sentiment analysis
     Japanese → translate to English → sentiment analysis
  4. All results stored in standardized schema regardless of source language

  Language detection is the ROUTER in a multilingual pipeline.
  Without it, you cannot choose the right downstream processing.

Text Summarization — Condensing Content

Two summarization approaches:

  EXTRACTIVE SUMMARIZATION:
    Selects the most important sentences from the original text
    Sentences are copied verbatim (no rewording)
    Guarantees accuracy (never generates new text)
    "Picks the highlight reel"

  ABSTRACTIVE SUMMARIZATION:
    Generates NEW sentences that capture the main ideas
    May rephrase, condense, or restructure
    More natural reading (like a human summary)
    "Writes the CliffsNotes"

  When to use which:
    Extractive: legal documents, compliance (exact wording matters)
    Abstractive: news articles, reports, meeting notes (natural flow matters)

Conversation summarization:
  Summarizes multi-turn conversations (chat logs, meeting transcripts)
  Types: chapter title, narrative, issue + resolution
  Input: full chat transcript between agent and customer
  Output: "Customer reported a billing discrepancy on their March invoice.
           Agent verified the overcharge and initiated a $50 refund."

Real-world example -- Meeting notes pipeline:
  1. Team meeting recorded via Microsoft Teams
  2. Speech-to-text converts audio to transcript
  3. Conversation summarization generates:
     - Chapter titles: "Project Update", "Budget Discussion", "Next Steps"
     - Narrative summary: 3-paragraph summary of the entire meeting
     - Action items: extracted commitments and deadlines
  4. Summary emailed to participants + stored in knowledge base
  5. RAG pipeline indexes summaries for searchable meeting history

For AI-103:
  Know extractive vs abstractive summarization
  Know conversation summarization for chat/transcript scenarios
  Know that summarization can be used in RAG ingestion (summarize long docs before chunking)

Conversational Language Understanding (CLU) — The LUIS Replacement

CLU is the custom NLP model for understanding user intentions in conversation. It replaced LUIS (Language Understanding Intelligent Service), which was deprecated.

Analogy — A smart receptionist. When someone walks into an office and says “I need to reschedule my appointment for next Tuesday,” the receptionist understands: the INTENT is “reschedule_appointment” and the ENTITY is “next Tuesday” (the new date). CLU trains a model to be that receptionist for your specific business domain.

CLU concepts:

  INTENTS: what the user wants to do
    "Book a flight" → intent: BookFlight
    "Cancel my order" → intent: CancelOrder
    "Check pipeline status" → intent: CheckPipeline
    "What time does the store close?" → intent: GetStoreHours

  ENTITIES: important details within the utterance
    "Book a flight to Toronto on Friday" → entities:
      destination: Toronto
      date: Friday
    "Cancel order #12345" → entities:
      order_number: 12345

  UTTERANCES: example phrases that map to intents
    BookFlight: "I want to fly to Vancouver",
                "Book me a ticket to Montreal",
                "Need a flight to Calgary next week"

Training process:
  1. Create a CLU project in Foundry
  2. Define intents (5-10 intents for most applications)
  3. Add utterances per intent (10-50 examples each)
  4. Label entities within utterances
  5. Train the model (minutes)
  6. Test with new utterances
  7. Deploy to a prediction endpoint
  8. Call from your application or agent

CLU vs LUIS (for AI-103):
  LUIS: deprecated, do not use for new projects
  CLU: the replacement, same concept (intents + entities), new platform
  If the exam mentions LUIS, it is testing whether you know CLU replaces it

CLU vs GPT-based intent detection:
  CLU: custom trained, deterministic, low latency, low cost
  GPT: zero-shot, flexible, higher latency, higher cost
  Use CLU for: high-volume, low-latency intent routing (1000s of requests/second)
  Use GPT for: complex reasoning, open-ended conversations, low-volume

Custom Text Classification — Your Own Categories

Custom text classification trains a model to categorize text into YOUR categories.

Two types:
  Single-label: each document gets exactly ONE category
    "This document is a: Contract / Invoice / Resume / Letter"

  Multi-label: each document can have MULTIPLE categories
    "This document is about: Legal + Finance + International"

Real-world example -- IT support ticket routing:
  Categories: "Network", "Hardware", "Software", "Account", "Security"
  Training: 200 tickets labeled by category
  Production: new ticket arrives → classified → routed to correct team
    "My laptop won't connect to WiFi" → Network (0.92)
    "I need access to the VPN" → Security (0.88)
    "Excel keeps crashing when I open large files" → Software (0.94)

Custom text classification vs CLU:
  CLU: for CONVERSATIONS (intents + entities from short utterances)
  Custom classification: for DOCUMENTS (categories from longer text)
  A support ticket's category is classification
  A chatbot understanding "cancel my order" is CLU

Custom Named Entity Recognition — Your Own Entity Types

Custom NER trains a model to extract YOUR specific entity types from text.

Prebuilt NER recognizes: person, organization, location, date, email, etc.
Custom NER adds: YOUR entities (product codes, medical terms, internal IDs)

Real-world example -- Pharmaceutical pipeline:
  Custom entities: drug_name, dosage, frequency, route, condition
  Input: "Patient prescribed Lisinopril 10mg once daily orally for hypertension."
  Output:
    drug_name: "Lisinopril"
    dosage: "10mg"
    frequency: "once daily"
    route: "orally"
    condition: "hypertension"

  Prebuilt NER would recognize "Lisinopril" as a generic entity
  Custom NER knows it is specifically a drug_name with related dosage and route

Training: 200+ labeled documents with entity spans annotated

Text Analytics for Health — Medical NLP

A specialized prebuilt model for healthcare text.
No training needed -- understands medical terminology out of the box.

Extracts:
  Medical entities: conditions, medications, procedures, anatomical terms
  Relations: medication → dosage, condition → treatment
  Assertions: negation ("no fever"), conditional ("if symptoms worsen")
  Temporal: "started Metformin in January"

Input: "Patient presents with Type 2 diabetes, currently managed with
        Metformin 500mg twice daily. No signs of neuropathy. Blood
        pressure 130/85, slightly elevated."

Output:
  Condition: "Type 2 diabetes" (confirmed)
  Medication: "Metformin" → dosage: "500mg" → frequency: "twice daily"
  Condition: "neuropathy" (negated -- "no signs of")
  Measurement: blood pressure → "130/85" → qualifier: "slightly elevated"

Real-world use: clinical data pipelines, drug interaction analysis,
  medical record structuring, clinical trial matching

Azure AI Translator — Breaking Language Barriers

Azure AI Translator translates text across 100+ languages.

Three translation modes:

  1. TEXT TRANSLATION (real-time):
     Translate short text strings (up to 50,000 characters per request)
     Detect source language automatically
     Translate to multiple target languages in one request
     Use for: UI labels, chat messages, short content

  2. DOCUMENT TRANSLATION (batch):
     Translate entire documents (Word, PDF, PowerPoint, HTML, etc.)
     Preserves formatting and layout
     Batch processing: translate hundreds of documents at once
     Use for: legal documents, manuals, reports, bulk content

  3. CUSTOM TRANSLATOR:
     Train translation models on YOUR terminology
     Domain-specific: medical, legal, technical, marketing
     Provide parallel text (source + target translations)
     Model learns your specific vocabulary and style
     Use for: consistent brand terminology, industry jargon

Real-world example -- Global product catalog pipeline:
  1. Product descriptions written in English
  2. Pipeline calls Translator for 15 target languages
  3. Custom Translator trained on product terminology:
     "hard drive" → "disque dur" (French), not "lecteur difficile"
  4. Translated descriptions loaded to each regional database
  5. Regional websites serve localized content automatically
  6. Updates to English trigger re-translation pipeline

For AI-103:
  Know the three modes (text, document, custom)
  Know that Custom Translator handles domain-specific vocabulary
  Know that document translation preserves formatting
  Know that auto-detect identifies source language

Azure AI Speech — Hearing and Speaking

Azure AI Speech converts between audio and text in both directions: speech-to-text (hearing) and text-to-speech (speaking).

Analogy — A professional interpreter. Speech-to-text is like having an interpreter who listens to a conversation and writes down everything said, noting who spoke and when. Text-to-speech is like having the interpreter read a document aloud in a natural voice. Speech translation combines both: the interpreter listens in one language and speaks in another, in real time.

Speech-to-Text — Converting Audio to Written Words

Two modes:

  REAL-TIME (streaming):
    Audio stream → immediate text output
    Latency: milliseconds
    Use for: live captioning, voice commands, call center monitoring
    Example: agent speaks to customer → real-time transcript on screen

  BATCH:
    Upload audio file → process → get transcript
    Supports: WAV, MP3, OGG, FLAC (up to 2 hours per file, 1 GB)
    Use for: meeting recordings, podcast transcription, archived audio

Features:
  Speaker diarization: "Speaker 1 said X, Speaker 2 said Y"
  Custom Speech: train with your audio + transcripts for domain vocabulary
    Example: medical dictation where "Lisinopril" must be recognized correctly
  Pronunciation assessment: score pronunciation accuracy (language learning)
  Profanity filtering: mask or remove profanity from transcripts
  Word-level timestamps: "Hello" at 00:01.234 - 00:01.567

Real-world example -- Call center analytics pipeline:
  1. Customer service calls recorded (WAV files in Blob Storage)
  2. Batch Speech-to-Text transcribes each call with speaker diarization
  3. Transcript: Agent said X, Customer said Y (timestamped)
  4. NLP pipeline processes transcript:
     - Sentiment analysis per speaker per turn
     - PII detection and redaction (customer SSN, account numbers)
     - Key phrase extraction (topics discussed)
     - Conversation summarization (issue + resolution)
  5. Structured data loaded to warehouse:
     call_id | timestamp | speaker | text | sentiment | topics | pii_detected
  6. Dashboard: average sentiment, top topics, PII violation alerts

Text-to-Speech — Giving AI a Voice

Neural voices:
  400+ voices across 140+ languages
  Natural-sounding speech (not robotic)
  Customizable: pitch, rate, volume, emphasis

Custom Neural Voice:
  Train a voice model on YOUR recordings
  Create a unique brand voice
  Requires: 300+ recorded sentences + Microsoft approval
  Use for: branded virtual assistants, IVR systems

SSML (Speech Synthesis Markup Language):
  Fine-grained control over speech output

  <speak version="1.0" xmlns="http://www.w3.org/2001/10/synthesis" xml:lang="en-US">
    <voice name="en-US-JennyNeural">
      Welcome to <emphasis level="strong">Drive Data Science</emphasis>.
      <break time="500ms"/>
      Today we will discuss <prosody rate="slow">Delta Lake</prosody>.
    </voice>
  </speak>

Real-world example -- Automated phone notifications:
  Patient appointment reminder system:
  1. Database query: patients with appointments tomorrow
  2. Text generated: "Hello Sarah, this is a reminder about your 
     appointment with Dr. Smith tomorrow at 2:00 PM."
  3. Text-to-Speech converts to audio
  4. Audio sent via phone call (Twilio integration)
  5. Patient hears natural-sounding reminder

Speech Translation — Real-Time Cross-Language Communication

Speech Translation combines speech-to-text + translation + text-to-speech.

Input: spoken English → Output: spoken French (or text in French)

Real-world example -- International customer support:
  1. French-speaking customer calls English-speaking support center
  2. Customer speaks French → Speech-to-Text (French)
  3. French text → Translator → English text
  4. English text displayed on agent's screen
  5. Agent speaks English → Speech-to-Text (English)
  6. English text → Translator → French text
  7. French text → Text-to-Speech → Customer hears French

  Real-time conversation between two languages
  Latency: 1-2 seconds per turn

For AI-103:
  Know that Speech Translation combines STT + Translation + TTS
  Know it supports real-time streaming
  Know the latency implications for conversation flow

Choosing the Right Text and Speech Service

"I need to..." → Which service?

  Detect sentiment in customer reviews
    → Sentiment Analysis (prebuilt, no training)

  Extract names, dates, organizations from text
    → Named Entity Recognition (prebuilt for common types)
    → Custom NER (for YOUR specific entity types)

  Detect and redact personal information
    → PII Detection (prebuilt, 50+ entity types)

  Understand user intent in a chatbot
    → CLU (custom, train with your intents and entities)

  Classify documents into categories
    → Custom Text Classification (train with your categories)

  Summarize long documents or meetings
    → Text Summarization (extractive or abstractive)

  Extract medical terms from clinical notes
    → Text Analytics for Health (prebuilt, no training)

  Translate text across languages
    → Azure AI Translator (prebuilt, 100+ languages)
    → Custom Translator (for domain-specific vocabulary)

  Transcribe audio recordings
    → Speech-to-Text (real-time or batch)
    → Custom Speech (for domain-specific vocabulary)

  Generate spoken audio from text
    → Text-to-Speech (neural voices, SSML for control)

  Real-time translation of spoken conversation
    → Speech Translation (STT + Translator + TTS combined)

Common Mistakes

  1. Using GPT for every NLP task when a prebuilt Language service is cheaper and faster. Sentiment analysis, NER, PII detection, and key phrase extraction are available as prebuilt models in Azure AI Language. These are cheaper, faster, and more deterministic than calling GPT-4o for the same task. Use Language services for structured NLP tasks and GPT for open-ended reasoning.

  2. Using LUIS for new projects instead of CLU. LUIS is deprecated and will be retired. CLU (Conversational Language Understanding) is the replacement with the same concept (intents + entities) but a new platform. AI-103 tests whether you know CLU is the current service. If you see LUIS in exam questions, the correct answer involves migration to CLU.

  3. Not using opinion mining when aspect-level sentiment is needed. Standard sentiment analysis gives document or sentence-level sentiment. If you need to know that “food was praised but service was criticized,” you need opinion mining enabled. It is a simple flag in the API call but significantly increases the actionability of the results.

  4. Forgetting to handle PII in data pipelines before loading to analytics. Loading customer support transcripts directly to a data warehouse without PII detection means analysts can see Social Security numbers, credit card numbers, and addresses. Run PII detection and redaction as a pipeline step BEFORE loading to the analytics layer.

  5. Using extractive summarization when abstractive would be more natural. Extractive summarization copies sentences verbatim, which can feel choppy and disjointed. Abstractive summarization generates new sentences that flow naturally. Use extractive when exact wording matters (legal, compliance). Use abstractive when readability matters (reports, meeting notes).

  6. Not training Custom Speech for domain-specific vocabulary. Default speech-to-text may misrecognize industry terms, product names, or technical jargon. If “Databricks” is consistently transcribed as “data bricks” or “Lisinopril” as “listen April,” train a Custom Speech model with domain-specific audio and transcripts.

  7. Using text translation for formatted documents. Text translation strips formatting. If you need to translate a Word document, PDF, or PowerPoint while preserving layout and formatting, use Document Translation (batch mode), not text translation.

  8. Not considering speaker diarization for multi-speaker audio. Transcribing a meeting without speaker diarization produces a wall of text with no attribution. Enable diarization to get “Speaker 1 said X, Speaker 2 said Y” — essential for meeting analytics, call center quality, and conversation summarization.

Interview Questions

Q: What prebuilt NLP capabilities does Azure AI Language provide? A: Sentiment analysis and opinion mining, Named Entity Recognition (person, organization, location, date, and 50+ categories), Entity Linking (connecting entities to Wikipedia), PII Detection and Redaction (with character or entity type masking), Key Phrase Extraction, Language Detection (100+ languages), Text Summarization (extractive and abstractive), Conversation Summarization, and Text Analytics for Health (medical NLP). All prebuilt features require no training and are available through REST API, SDKs, and AI Search skillsets.

Q: What is CLU and how does it differ from LUIS? A: CLU (Conversational Language Understanding) is the replacement for LUIS in Azure AI Language. Both use the same concept: train a model to detect intents (what the user wants) and extract entities (important details) from user utterances. CLU is built on the Azure AI Language platform with improved training algorithms, a new authoring experience in Foundry, and the ability to deploy as an agent in Agent Service. LUIS is deprecated and will be retired. New projects must use CLU.

Q: How does PII detection fit into a data engineering pipeline? A: PII detection scans text for 50+ categories of personal information (names, SSNs, credit cards, addresses, phone numbers, medical records). In a data pipeline, it runs as a processing step before data reaches the analytics layer. Text is either redacted (characters replaced with asterisks) or masked with entity type labels ([PERSON], [PHONE]). The redacted version goes to the analytics warehouse. The original stays in an encrypted operational store with restricted access. This ensures compliance with GDPR, PIPEDA, HIPAA, and SOX while enabling analytics on the redacted data.

Q: What is the difference between extractive and abstractive summarization? A: Extractive summarization selects the most important sentences from the original text and returns them verbatim. The output contains only words that appear in the source document. Abstractive summarization generates new sentences that capture the main ideas, potentially rephrasing or restructuring content. Extractive guarantees accuracy (exact original wording) and is better for legal and compliance contexts. Abstractive produces more natural, readable summaries and is better for reports and meeting notes.

Q: What are the three modes of Azure AI Translator? A: Text Translation for real-time translation of short text (up to 50K characters, UI labels, chat messages). Document Translation for batch translation of full documents (Word, PDF, PowerPoint) preserving formatting and layout. Custom Translator for training domain-specific models with your own parallel text to handle industry terminology, brand names, and jargon consistently. Text and document translation support 100+ languages.

Q: How does a call center analytics pipeline combine Speech and Language services? A: Recorded calls in Blob Storage are processed by batch Speech-to-Text with speaker diarization (who said what). The transcript is then processed by multiple Language services: sentiment analysis scores each speaker’s emotional tone per turn, PII detection identifies and redacts customer personal information, key phrase extraction identifies topics discussed, and conversation summarization generates an issue-and-resolution summary. The structured results (speaker, text, sentiment, topics, PII flags) are loaded to a data warehouse for dashboards showing average sentiment, trending topics, and compliance metrics.

Q: When should you use CLU vs GPT for understanding user intent? A: Use CLU when you need high-volume, low-latency intent detection with deterministic results at low cost. CLU is trained on your specific intents and entities and returns predictions in milliseconds. Use GPT for complex, open-ended conversations where the intent space is broad, for tasks requiring reasoning beyond classification, or for low-volume applications where the higher per-request cost is acceptable. In practice, many production systems use CLU for initial intent routing (fast and cheap) and GPT for handling the complex intents that CLU routes to.

Wrapping Up

Text analysis and speech services convert the unstructured 80% of enterprise data — emails, documents, transcripts, recordings, multilingual content — into structured, searchable, actionable data. Azure AI Language provides the NLP toolkit: sentiment, entities, PII, summarization, CLU for intent, and custom models for your specific domain. Azure AI Translator handles 100+ languages. Azure AI Speech bridges audio and text in both directions.

For AI-103, know WHEN to use each service: prebuilt NLP for standard text tasks (faster and cheaper than GPT), CLU for intent detection in chatbots (replaces LUIS), Custom NER and classification for domain-specific extraction, PII for compliance, and Speech for audio processing. The exam tests service selection in scenario-based questions, not API syntax.

In the final post, we cover Domain 5: Document Intelligence and Information Extraction — prebuilt and custom document models, AI Search indexing with skillsets, and Content Understanding for structured extraction.

Related posts:AI-103 Study GuideComputer VisionRAG Pipelines & AI SearchSecurity & Responsible AIPython Working with APIs

Leave a Comment

Your email address will not be published. Required fields are marked *

Scroll to Top