# Translator Service - Document Translation and Multi-language Support **Last updated:** 2026-06-19 | Verified: MCP 2026-06-19 **Status:** GA (General Availability) + Preview features **Category:** Azure AI Services (Foundry Tools) --- ## Introduksjon Azure Translator er en sky-basert neural maskinoversettelsestjeneste som tilbyr både tekst- og dokumentoversettelse på tvers av over 135 språk og dialekter. Tjenesten kombinerer sanntids tekstoversettelse med avansert dokumentoversettelse som bevarer opprinnelig formatering, layout og struktur. Document Translation-funksjonen støtter to arbeidsmåter: asynkron batch-oversettelse for store volumer og komplekse dokumenter, samt synkron single-file-oversettelse for raske enkeltdokumenter. Begge metodene bygger på samme neural machine translation (NMT)-teknologi som brukes i tusenvis av Microsoft-produkter og -tjenester globalt. En særlig nyhet (desember 2025) er støtte for bildefilformater i batch-oversettelse — tjenesten kan nå oversette tekst inni bilder (.jpeg, .png, .bmp, .webp) samtidig som den beholder originalens design og layout. Dette eliminerer behovet for forprosessering av bilder til PDF før oversettelse. ## Kjernekomponenter / Nøkkelegenskaper ### Oversettelsesmodi | Modus | Beskrivelse | Krav | Bruksområde | |-------|-------------|------|-------------| | **Asynchronous Batch** | Oversetter flere dokumenter og store filer asynkront | Azure Blob Storage (source + target containers) | Bulk-oversettelse, komplekse dokumenter, arkivering | | **Synchronous Single-file** | Oversetter én fil og returnerer umiddelbart | Kun Translator-ressurs | Raske oversettelser, sanntidsscenarier | ### Støttede dokumentformater (Batch) **Produksjonsklare formater:** - **Office:** `.docx`, `.xlsx`, `.pptx`, `.msg` (Outlook) - **PDF:** `.pdf` (bruker OCR for scannede dokumenter) - **Web/Data:** `.html`, `.htm`, `.csv`, `.tsv`, `.mhtml` - **Markup:** `.md`, `.xlf` (XLIFF — translation standard) - **Open Source:** `.odt`, `.ods`, `.odp` - **Bilder (2025-12-01-preview):** `.jpeg`, `.png`, `.bmp`, `.webp` 🆕 **Legacy-konvertering:** `.doc`, `.xls`, `.ppt` konverteres automatisk til moderne Office-formater (`.docx`, `.xlsx`, `.pptx`) ved oversettelse. ### Nøkkelfunksjoner | Funksjon | Batch | Sync | Beskrivelse | |----------|-------|------|-------------| | **Multi-file translation** | ✅ | ❌ | Oversett hundrevis av filer i én operasjon | | **Large file support** | ✅ | ❌ | Ingen praktisk størrelsesbegrensning for batch | | **Preserve layout** | ✅ | ✅ | Bevarer formatering, layout, fonter | | **Image text translation** | ✅ | ❌ | Oversetter tekst inni bilder (preview) | | **Custom glossaries** | ✅ | ✅ | Egendefinerte termlister (.csv, .tsv, .xlf) | | **Custom models** | ✅ | ✅ | Custom Translator-modeller for domener/bransjer | | **Auto language detect** | ✅ | ✅ | Automatisk språkdeteksjon | | **Multi-language docs** | ✅ | ❌ | Oversett dokumenter med flere språk i én operasjon | | **Immediate response** | ❌ | ✅ | Translated dokument returneres direkte i svar | ### Oversettelse av bildetekst i Word- (.docx) og PowerPoint-filer (.pptx) En spesialisert funksjon (tilgjengelig via batch document translation-API) som krever: - Azure AI Services **multi-service resource** (ikke standalone Translator) - Enable parameter: `"translateTextWithinImage": true` i `options`-feltet - Tilleggskostnad basert på Azure Vision-prising Response inkluderer `totalImageScansSucceeded` og `totalImageScansFailed` for monitorering. ## Arkitekturmønstre ### 1. Batch Translation Pipeline (Anbefalt for volum) **Arkitektur:** ``` Source Blob Container → Document Translation API → Target Blob Container(s) ↓ ↓ ↓ SAS token Job Monitoring API Translated files (read/list) (status polling) (write/list) ``` **Fordeler:** - Skalerer automatisk for store volumer - Parallell prosessering av flere dokumenter - Støtter flere målspråk i én batch-jobb - Asynkron — blokkerer ikke applikasjonen **Ulemper:** - Krever Azure Blob Storage (ekstra infrastruktur) - Mer kompleks autentisering (SAS tokens eller managed identity) - Lengre tid før resultater er klare **Bruk når:** - Du oversetter > 10 dokumenter om gangen - Filstørrelse > 40 MB - Batch-prosessering er akseptabelt (ikke sanntid) - Du trenger å oversette til flere språk samtidig ### 2. Synchronous Single-File Translation (Anbefalt for sanntid) **Arkitektur:** ``` Client App → POST /translator/document:translate → Translated Document ↓ ↓ Document bytes Inline response + Target language ``` **Fordeler:** - Ingen Azure Blob Storage nødvendig - Enkel integrering (ett API-kall) - Umiddelbart resultat - Lavere kompleksitet **Ulemper:** - Kun én fil om gangen - Kun ett målspråk per request - Ikke egnet for store filer (timeout-risiko) **Bruk når:** - Sanntidsoversettelse i webapp/chatbot - Enkeltstående dokumenter < 40 MB - Du trenger rask respons (sekunder, ikke minutter) - Enkel workflow uten lagring ### 3. Hybrid Pattern: Custom Glossaries + Neural Translation **Arkitektur:** ``` Neural MT Model + Custom Glossary → Hybrid Output ↓ ↓ General translation Domain-specific terms ``` **Fordeler:** - Best of both worlds: NMT-kvalitet + terminologikontroll - Konsistent bruk av fagtermer - Reduserer post-editing-behov **Ulemper:** - Krever vedlikehold av glossary-filer - Glossary må lastes opp for hver batch-jobb (eller hver target container) **Bruk når:** - Juridiske/medisinske/tekniske dokumenter - Branding/produktnavn må være konsistente - Compliance krever spesifikke termer ## Beslutningsveiledning ### Hvilken modus skal du velge? | Kriterium | Batch Translation | Single-file Translation | |-----------|-------------------|-------------------------| | **Antall filer** | > 10 samtidig | 1 om gangen | | **Filstørrelse** | Ubegrenset (praktisk) | < 40 MB | | **Responstid** | Minutter til timer | Sekunder | | **Målspråk** | Flere samtidig | Ett om gangen | | **Infrastruktur** | Blob Storage kreves | Ingen ekstra infrastruktur | | **Kostnad** | Lavere per tegn ved volum | Høyere per tegn (men enklere) | ### Vanlige feil og røde flagg | Problem | Årsak | Løsning | |---------|-------|---------| | **Job fails: "Can't read source"** | SAS token mangler `read`/`list`-tillatelser | Regenerer SAS med korrekte permissions | | **Translated file not in target** | SAS token mangler `write`/`list` | Sjekk target container permissions | | **Translation quality poor** | Feil språkpar, mangler custom model | Spesifiser source language eksplisitt, bruk Custom Translator | | **Scanned PDF loses formatting** | OCR-teknologien har begrensninger | Bruk digitale PDFs når mulig, ikke scannede | | **Job stuck in "Running"** | Fil låst med passord/kryptert | Fjern passord/kryptering før opplasting | | **Image text not translated** | Preview-feature ikke aktivert | Sett `"translateTextWithinImage": true` (kun batch) | | **Cost higher than expected** | Image translation eller Vision API-kall | Disable image features hvis ikke nødvendig | ### Når skal du IKKE bruke Document Translation? | Scenario | Hvorfor ikke? | Alternativ | |----------|---------------|------------| | **Sanntids chat-oversettelse** | Document Translation er for tekst-blokker, ikke korte meldinger | Text Translation API v3 | | **Live lydoversettelse** | Ikke for tale | Azure Speech Service Translator | | **Kun OCR (ingen oversettelse)** | Overkill hvis du bare skal ekstrahere tekst | Azure AI Vision (OCR) | | **Real-time collaboration (Google Docs-style)** | Document Translation er batch/single-file, ikke live | Bygg custom med Text Translation API | ## Integrasjon med Microsoft-stakken ### Azure AI Foundry - Document Translation tilgjengelig via **Foundry (classic)** portal — no-code playground - **Foundry (new)** støtter kun forhåndsdefinerte språk med sample-dokumenter (ikke egne filer) - Bruk Foundry for prototyping, deretter API for produksjon ### Azure Blob Storage - **Obligatorisk for batch translation** - Autentisering via SAS tokens eller Managed Identity - Lifecycle policies kan automatisk slette gamle oversatte filer (kostnadsoptimalisering) ### Custom Translator - Tren egne NMT-modeller med parallelle korpus (parallel documents) - Deploy via Custom Translator-portalen - Refereres i Document Translation API via `category`-parameter ### Power Automate - **Translator v3 connector** tilgjengelig for no-code workflows - Støtter både text og document translation - Integrer med SharePoint, OneDrive, Outlook for dokumentflyt ### Azure Functions / Logic Apps - REST API kan wrappes i serverless functions - Bruk for event-driven oversettelse (f.eks. ny fil i Blob → trigger oversettelse) ### Azure AI Search - Bruk Document Translation som pre-processing for multilingual search - Oversett dokumenter før indexing → én index, mange språk ## Offentlig sektor (Norge) ### GDPR og Schrems II | Aspekt | Implikasjon | Anbefaling | |--------|-------------|------------| | **Data residency** | Oversettelse prosesseres i nærmeste Azure-region (Global) eller spesifisert region (Americas, Asia Pacific, Europe) | Velg **Europa**-region for Translator-ressurs (France Central, West Europe) | | **Data retention** | Microsoft lagrer IKKE brukerdata etter oversettelse | Dokumentert i Transparency Note — trygt for sensitiv data | | **GDPR Article 28** | Microsoft er data processor | Bruk DPA (Data Processing Agreement) i Azure-kontrakten | | **Schrems II compliance** | EU Standard Contractual Clauses (SCCs) | Velg EU-region, verifiser SCCs i Azure-avtalen | ### AI Act (EU) | Krav | Status for Translator | Handling | |------|----------------------|----------| | **Transparency** | Brukere må vite at tekst er maskinoversatt | Legg til disclaimer i UI/dokumenter | | **Human oversight** | High-risk AI krever human-in-the-loop | Implementer post-editing for kritiske dokumenter | | **Accuracy requirements** | Ikke klassifisert som high-risk (men avhenger av bruksområde) | Valider kvalitet manuelt for juridiske/medisinske dokumenter | ### Forvaltningsloven og offentlig kommunikasjon - **Språkkrav:** Samisk, kvensk, norsk (bokmål/nynorsk) støttes ikke alle optimalt i Translator - **Juridisk binding:** Maskinoversatte dokumenter kan ikke erstatte autoriserte oversettelser i rettsprosesser - **Tilgjengelighetskrav (UU):** Oversatte dokumenter må bevare WCAG 2.1-kompatibilitet — test at PDF/HTML-output er tilgjengelig ### Datasuverenitet - **Norway-region** finnes ikke for Translator (kun Foundry-hub) — bruk **West Europe** eller **North Europe** for geografisk nærhet - For ekstra høy sensitivitet: Vurder **Translator Container** (disconnected deployment) for air-gapped miljøer ## Kostnad og lisensiering ### Prismodell (per 2026-02) | Komponent | Enhet | Prisindikasjon (NOK/USD) | |-----------|-------|--------------------------| | **Text Translation** | Per million tegn | ~$10 USD (varierer med region) | | **Document Translation** | Per million tegn | ~$10 USD (samme som tekst) | | **Image Translation (preview)** | Per bilde | Beregnes separat (ikke per tegn) | | **Image text in Word (preview)** | Per bilde-scan | Azure Vision-prising i tillegg | | **Custom Translator** | Per million tegn (trening + inference) | ~$10-40 USD (avhenger av modell) | **Volume Discount Plans:** C2, C3, C4, D3 tilgjengelig for store volumer (commitment-basert). ### Optimaliseringstips 1. **Batch over single-file:** Lavere overhead (ett API-kall for mange filer) 2. **Disable image translation hvis ubrukt:** Spar Vision API-kostnader 3. **Cache oversettelser:** Lagre target-dokumenter i Blob Storage, gjenbruk ved duplikater 4. **Filter med prefix/suffix:** Bruk `prefix`-parameteren for å unngå å oversette unødvendige filer 5. **Language auto-detect kun ved nødvendighet:** Spesifiser source language for raskere prosessering og lavere feilrate 6. **Bruk glossaries for konsistens:** Reduserer behov for custom models (dyrere å trene) ### Total Cost of Ownership (TCO) | Komponent | Batch Translation | Single-file Translation | |-----------|-------------------|-------------------------| | **Translator API** | $10/M chars | $10/M chars | | **Azure Blob Storage** | $0.02/GB/måned + egress | N/A | | **Compute (hvis Azure Functions)** | ~$0.20/million executions | ~$0.20/million executions | | **Vision API (images)** | $1-3/1000 images (preview pricing) | N/A | | **Total for 100M chars** | ~$1000 + Blob (~$5) + Compute (~$50) = **~$1055** | ~$1000 + Compute (~$50) = **~$1050** | **Menneskelig oversettelse til sammenligning:** $0.10-0.25 per ord = **$10 000-25 000 USD** for samme volum (100M chars ≈ 15M ord). **ROI:** Translator er ~10-25x billigere enn menneskelig oversettelse for bulk-volum. ## For arkitekten (Cosmo) ### Spørsmål å stille i arkitekturdialog 1. **Volum og frekvens:** "Hvor mange dokumenter per dag/uke? Er det batch-basert eller kontinuerlig?" → Avgjør batch vs. single-file strategi. 2. **Sensitivitet og compliance:** "Inneholder dokumentene personopplysninger (GDPR), helseopplysninger (HIPAA-ekvivalent), eller klassifisert informasjon?" → Vurder EU-region, Translator Container (disconnected), eller on-prem løsning. 3. **Responstidskrav:** "Må oversettelsen være klar innen sekunder, eller er minutter/timer akseptabelt?" → Sanntid → Sync, batch → Async. 4. **Dokumenttyper:** "Er det strukturerte filer (Word/Excel/PDF) eller ustrukturerte (bilder, scannede PDFs)?" → Scannede PDFs krever OCR (lavere kvalitet), bilder krever preview-feature. 5. **Terminologi og domene:** "Har dere branchespesifikke termer som må oversettes konsistent?" → Custom glossaries (enklere) eller Custom Translator (dyrere, bedre kvalitet). 6. **Målspråk:** "Hvilke språk skal støttes? Er det pivot-språk involvert (f.eks. Swahili → English → Hindi)?" → Sjekk [language support matrix](https://learn.microsoft.com/azure/ai-services/translator/language-support) for kvalitet. 7. **Eksisterende infrastruktur:** "Bruker dere allerede Azure Blob Storage? Har dere managed identities satt opp?" → Påvirker autentiseringsstrategi og deployment-hastighet. 8. **Post-editing workflow:** "Skal oversettelsene gjennomgås av mennesker før publisering?" → Planlegg for human-in-the-loop (HITL) — Azure AI Foundry + Custom Translator har review-funksjoner. ### Fallgruver å unngå | Fallgruve | Konsekvens | Unngå ved å | |-----------|------------|-------------| | **Hard-code SAS tokens i kode** | Security breach | Bruk Azure Key Vault + managed identity | | **Glemme SAS token expiry** | Jobs feiler etter 24 timer | Sett expiry = 7 dager minimum, eller bruk managed identity | | **Overstyre source language når multi-language** | Dårligere kvalitet | La auto-detect gjøre jobben for mixed-language docs | | **Bruke Batch for én fil (< 1 MB)** | Overhead med Blob Storage | Bruk Single-file API | | **Forvente perfekt layout for scannede PDFs** | OCR-teknologien har begrensninger | Bruk digitale PDFs, eller aksepter lavere layout-kvalitet | | **Ikke teste custom glossaries før prod** | Termer oversettes feil | Test med sample-dokumenter først | | **Overse rate limits** | 429 Too Many Requests | Implementer exponential backoff retry-logikk | ### Anbefalinger per modenhetsnivå **Begynner (ingen Translator-erfaring):** - Start med **Foundry (classic) portal** for manuell testing - Bruk **Single-file API** for prototyping (enklere enn Blob Storage) - Test med maksimalt 3 språkpar først - Les [Transparency Note](https://learn.microsoft.com/azure/foundry/responsible-ai/translator/transparency-note) for å forstå begrensninger **Middels (har brukt Text Translation API):** - Migrer til **Batch Translation** for volum > 50 filer/dag - Implementer **custom glossaries** for domene-termer - Sett opp **monitoring** med Application Insights (track job failures) - Bruk **managed identity** i stedet for SAS tokens (bedre security) **Avansert (produksjon med tusenvis av dokumenter/dag):** - Tren **Custom Translator-modeller** for spesialiserte domener - Implementer **Azure Functions event-driven pipeline** (Blob trigger → oversettelse → output) - Aktiver **image translation** kun for dokumenter som faktisk har bilder (kostnadsoptimalisering) - Sett opp **geo-replication** av Blob Storage for disaster recovery - Overvåk **totalCharacterCharged** i response headers for cost tracking ## Kilder og verifisering ### Microsoft Learn-dokumentasjon (Verified via MCP) 1. **Document Translation Overview** https://learn.microsoft.com/azure/ai-services/translator/document-translation/overview *Confidence: Verified (2026-06-19)* — Kjernefeatures, formater, data residency 2. **Use Document Translation APIs Programmatically** https://learn.microsoft.com/azure/ai-services/translator/document-translation/how-to-guides/use-rest-api-programmatically *Confidence: Verified (2026-06-19)* — REST API, batch-oversettelse, SAS tokens, kodeeksempler 3. **Azure Translator Overview** https://learn.microsoft.com/azure/ai-services/translator/overview *Confidence: Verified (2026-06-19)* — Comparison matrix (text vs. document), feature roadmap 4. **Image Translation Preview (December 2025)** https://learn.microsoft.com/azure/ai-services/translator/document-translation/reference/start-batch-translation#translate-image-files *Confidence: Verified (2026-06-19)* — Ny funksjonalitet for bildeformater 5. **Service Limits** https://learn.microsoft.com/azure/ai-services/translator/service-limits#document-translation *Confidence: Verified (2026-02)* — Rate limits, request size limits 6. **Translator Transparency Note** https://learn.microsoft.com/azure/foundry/responsible-ai/translator/transparency-note *Confidence: Verified (2026-02)* — AI-begrensninger, data privacy, responsible AI ### Konfidensnivå per seksjon | Seksjon | Konfidens | Kilde | |---------|-----------|-------| | Introduksjon | Verified | MCP docs fetch (overview) | | Kjernekomponenter | Verified | MCP docs fetch (overview + API reference) | | Arkitekturmønstre | Baseline | Best practices fra MCP docs + modellkunnskap | | Beslutningsveiledning | Baseline | FAQ + troubleshooting fra MCP docs | | Integrasjon med Microsoft-stakken | Baseline | Modellkunnskap + MCP docs (connectors) | | Offentlig sektor | Baseline | GDPR/AI Act-kunnskap + Azure compliance docs (ikke spesifikt i MCP-søk) | | Kostnad og lisensiering | Baseline | Azure pricing calculator (ikke i MCP-søk, men offentlig info) | | For arkitekten | Baseline | Syntetisk veiledning basert på features fra MCP docs | **Total MCP calls:** 4 (docs_search) + 3 (docs_fetch) = **7** **Unique Microsoft Learn URLs:** 6