← Back to Tutorials

8. Multi-Modal Applications

Introduction

Foundry supports multi-modal applications that process text, images, PDFs, tables, and audio. Combine vision models, Document Intelligence, and LLMs for rich document processing workflows.

PII Masking

Detect and redact personally identifiable information (PII) from documents and conversations before processing.

from azure.ai.contentsafety import ContentSafetyClient

# PII detection and masking
result = client.detect_pii(
    text="My email is john.doe@example.com and phone is 555-1234"
)
# Returns redacted text and PII entities detected

Text Redaction

Automatically redact sensitive content from documents using Azure AI Content Safety or custom regex patterns.

Document Intelligence

from azure.ai.documentintelligence import DocumentIntelligenceClient

doc_client = DocumentIntelligenceClient(endpoint, credential)
with open("invoice.pdf", "rb") as f:
    poller = doc_client.begin_analyze_document("prebuilt-invoice", f)
    result = poller.result()

for doc in result.documents:
    print(f"Vendor: {doc.fields.get('VendorName').value}")
    print(f"Total: {doc.fields.get('InvoiceTotal').value}")

Invoice Analysis

Build an end-to-end pipeline that:

  1. Accepts invoice PDFs via upload
  2. Extracts fields with Document Intelligence
  3. PII-masks sensitive data
  4. Stores results in a searchable index
  5. Provides a natural language query interface via an agent
📘 Note: Document Intelligence supports pre-built models for invoices, receipts, identity documents, and custom extraction models.
✏️ Exercise: Build a multi-modal agent that accepts an uploaded invoice PDF, extracts key fields (vendor, date, total), PII-masks any personal data, and returns a structured summary. Use Document Intelligence + Content Safety.