De 87 referansefilene bar en plain-text `| Verified: <dato>`-hale på **Last updated:**-linjen i 500B-header-vinduet — usynlig for den bold-only kontrakt-stacken (kb-headers.mjs / audit RE_VERIFIED), og claimet en verifisering judgen aldri gjorde (samme poison-klasse som de 14 bold **Verified:** MCP Spor 1 fjernet). Uhåndtert springer den også dual-Verified-fellen: R7s insertVerifiedFields ville stemplet en bold-verdi ved siden av den plain → to motstridende provenance-claims per fil. - ny driver strip-stale-verified-pipe.mjs: frosset 87-manifest (18 advisor + 45 eng + 8 gov + 16 sec), pure verdi-bevarende strip (kun ` | Verified: …`-halen; **Last updated:**-dato byte-eksakt), hard per-fil-invariant (linjeantall uendret, body byte-identisk, dato bevart), idempotent, atomicWriteSync (RX-OPS2 recovery-kontrakt). - audit-corpus-headers.mjs: ny plain-Verified-deteksjon (RE_PLAIN_VERIFIED + plainVerifiedPipe) — gjør M4-blindheten synlig så en stale plain-hale ikke kan gjenoppstå stille (non-advisor scope). - 87 filer strippet; plain Verified i vinduet 0/389; live-audit plainVerifiedPipe 0. Mekanisme: +15 tester (12 strip + 3 audit). Suite 875→890 exit 0. validate-plugin.sh 250/0. Utsatt → RX-KB1b: footer-dato-avvik + label-whitelist (annen dialekt, flag-to-human).
25 KiB
Speech Services - Text-to-Speech and Neural Voices
Last updated: 2026-06-19 Status: GA Type: reference Source: https://learn.microsoft.com/azure/ai-services/speech-service/personal-voice-overview
Status 2026-04: Azure Neural TTS og Custom Neural Voice er begge bekreftet GA og aktivt vedlikeholdt.
nb-NO-PernilleNeuralognb-NO-FinnNeuraler de primære norske stemmene. Custom Neural Voice Pro tilbyr ytterligere tilpasning for enterprise-bruk.
Category: Azure AI Services (Foundry Tools)
Innhold
- Introduksjon
- Kjernekomponenter / Nøkkelegenskaper
- Arkitekturmønstre
- Beslutningsveiledning
- Integrasjon med Microsoft-stakken
- Offentlig sektor (Norge)
- Kostnad og lisensiering
- For arkitekten (Cosmo)
- Kilder og verifisering
Introduksjon
Azure Speech Services sitt Text-to-Speech (TTS) API konverterer tekst til naturlig syntetisk tale ved hjelp av deep neural networks. Tjenesten er en del av Microsoft Foundry Tools og tilbyr over 400 stemmer på 140+ språk og dialekter. TTS gjør det mulig å lage applikasjoner som leser opp tekst, generere lydbøker, bygge chatbots med naturlig tale, og forbedre tilgjengelighet.
Kjernen i moderne TTS er neural voices som bruker dype nevrale nettverk for å overkomme begrensningene til tradisjonell talesyntese når det gjelder stress og intonasjon. Prosody-prediksjon og stemmesyntese skjer samtidig, noe som gir mer flytende og naturlige resultater. Hvert standard neural voice-modell er tilgjengelig i 24 kHz og høy-fidelitet 48 kHz, og output kan opp- eller ned-samples til andre formater.
Microsoft tilbyr tre kategorier av stemmer: standard voices (out-of-the-box neural voices), custom voices (professional voice fine-tuning med Limited Access), og personal voice (rask stemmeopprettelse fra korte prøver). For produksjonsmiljøer er standard voices den vanligste løsningen, mens custom voice krever søknad og godkjenning fra Microsoft.
Kjernekomponenter / Nøkkelegenskaper
| Komponent | Beskrivelse | Bruk |
|---|---|---|
| Standard Neural Voices | Over 400 ferdigtrente stemmer i 140+ språk/dialekter, tilgjengelig i 24kHz og 48kHz | Generell talesyntese, chatbots, accessibility |
| Multilingual Voices | Stemmer som flytende snakker flere språk (eks. en-US-AvaMultilingualNeural støtter 91 locales) |
Flerspråklige applikasjoner, globalreach |
| High Definition (HD) Voices | Høyere kvalitet neural voices for krevende scenarioer | Premium lydkvalitet, professional content |
| OpenAI TTS Voices | OpenAI-stemmer tilgjengelig via Azure Speech (North Central US, Sweden Central) | Integrasjon med OpenAI-baserte løsninger |
| Custom Neural Voice | Limited Access-funksjon for å trene unike merkestemmer | Brand identity, spesialiserte use cases |
| Personal Voice | Rask stemmekloning fra korte lydprøver | Personaliserte applikasjoner, voice assistants |
| SSML | Speech Synthesis Markup Language for kontroll over prosody, rate, pitch, volume, styles | Avansert stemmekontroll |
| Batch Synthesis API | Asynkron syntese for lange lydfiler (>10 min, eks. lydbøker) | Long-form content, batch processing |
| Real-time Synthesis | Speech SDK eller REST API for sanntidssyntese | Interactive applications, voice agents |
| Visemes | Ansiktsposisjoner (leppe-synkronisering) for hver fonem | Leppe-lesing, avatars, animation |
| Audio Effect Processor | Optimalisering for spesifikke miljøer (eq_car, eq_telecomhp8k) |
Bil-audio, telecom, noisy environments |
| Text-to-Speech Avatar | Syntetisk video av avatar som snakker (prebuilt og custom) | Visual chatbots, kiosks, metaverse |
SSML Prosody-kontroll
Med SSML kan du justere følgende prosodiske elementer:
| Element | Verdier | Eksempel |
|---|---|---|
| Rate | 0.5 til 2 (eller x-slow, slow, medium, fast, x-fast) |
<prosody rate="+30%"> |
| Pitch | 0.5 til 1.5 × original (Hz, semitones, %, x-low/low/medium/high/x-high) |
<prosody pitch="high"> |
| Volume | 0.0 til 100.0 (eller silent, x-soft, soft, medium, loud, x-loud) |
<prosody volume="+20%"> |
| Contour | Array av pitch-endringer over tid | <prosody contour="(0%,+20Hz)(10%,-2st)"> |
| Emphasis | reduced, none, moderate, strong (kun visse stemmer) |
<emphasis level="moderate"> |
| Style | Språk- og stemmespesifikke stiler (eks. cheerful, sad, angry, newscast) |
<mstts:express-as style="cheerful"> |
| Role | Aldersrolle/kjønn-imitasjon (Girl, Boy, YoungAdultFemale, etc.) |
<mstts:express-as role="OlderAdultMale"> |
Kodeeksempel (C# med Speech SDK)
using Microsoft.CognitiveServices.Speech;
var speechConfig = SpeechConfig.FromSubscription("YourSpeechKey", "YourSpeechRegion");
// Velg standard neural voice
speechConfig.SpeechSynthesisLanguage = "en-US";
speechConfig.SpeechSynthesisVoiceName = "en-US-Ava:DragonHDLatestNeural";
// Syntetiser til speaker
using var speechSynthesizer = new SpeechSynthesizer(speechConfig);
await speechSynthesizer.SpeakTextAsync("I'm excited to try text to speech");
// Eller til fil
using var audioConfig = AudioConfig.FromWavFileOutput("output.wav");
using var fileSynthesizer = new SpeechSynthesizer(speechConfig, audioConfig);
await fileSynthesizer.SpeakTextAsync("This goes to a file");
SSML-eksempel (med prosody og style)
<speak version="1.0" xmlns="http://www.w3.org/2001/10/synthesis"
xmlns:mstts="https://www.w3.org/2001/mstts" xml:lang="en-US">
<voice name="en-US-AvaMultilingualNeural">
<mstts:express-as style="cheerful" styledegree="2">
<prosody rate="+10%" pitch="+5%">
Welcome to Azure Speech Services!
</prosody>
</mstts:express-as>
</voice>
</speak>
Arkitekturmønstre
Mønster 1: Real-time Interactive Speech
Beskrivelse: Sanntidssyntetisering av tale for chatbots, voice assistants og IVR-systemer.
Implementering:
- Bruk Speech SDK (C#, Python, JavaScript, Java, C++, Objective-C, Swift)
- Konfigurer SpeechConfig med subscription key og region
- Velg neural voice basert på use case (standard/multilingual/HD)
- Send tekst eller SSML til SpeakTextAsync() / SpeakSsmlAsync()
- Output til speaker, fil eller in-memory stream
Fordeler:
- Lav latency (optimalisert for sanntidsrespons)
- Støtter streaming audio output
- Integrasjon med Speech-to-Text for full voice conversation loop
- Viseme-events for ansiktsanimasjon
Ulemper:
- Rate limits per Speech resource (justerbar med business justification)
- Krever konstant nettverkstilkobling
- Ikke egnet for batch-generering av lange lydfiler
Best for: Conversational AI, voice agents, accessibility features, in-car assistants.
Mønster 2: Batch Synthesis for Long-Form Content
Beskrivelse: Asynkron syntese av lange lydfiler (>10 min) som lydbøker, podcasts, e-læring.
Implementering:
- Bruk Batch Synthesis REST API (preview)
- Send text eller SSML med metadata
- Poll for status (pending → running → succeeded)
- Download synthesized audio når klar
- Støtter custom voices og personal voices
Fordeler:
- Ingen tidsbegrensning (støtter timer-lange filer)
- Asynkron prosessering (fire-and-forget)
- Støtter alle output-formater (inkl. 48kHz)
- Optimalisert for throughput over latency
Ulemper:
- Ikke sanntid (kan ta minutter avhengig av lengde)
- Krever polling-logikk i applikasjon
- Ikke støtte for audio-element i SSML (men batch synthesis API har det)
Best for: Audiobooks, training materials, podcast-generering, large-scale content creation.
Mønster 3: Custom Brand Voice med Professional Fine-Tuning
Beskrivelse: Opprett unik merkestemme med professional voice fine-tuning (Limited Access).
Implementering:
- Søk om tilgang via intake form (https://aka.ms/customneural)
- Samle høykvalitets voice recordings (voice talent consent påkrevd)
- Opprett prosjekt i Speech Studio
- Last opp recording scripts og audio (20-40 compute hours training)
- Train modell (cap: 96 compute hours fakturering)
- Deploy endpoint (hosting faktureres per time)
- Bruk custom voice name i SSML
Fordeler:
- Unik brand identity
- Støtter multi-style training (ca. 90 compute hours)
- 48kHz output etter engine upgrade
- Kan kombineres med SSML for ekstra kontroll
Ulemper:
- Limited Access (krever godkjenning)
- Koster å trene (
per compute hour) - Koster å hoste endpoint (
per time) - Voice talent consent og juridiske krav
- Ikke egnet for quick prototyping
Best for: Enterprise brand voice, customer service, media production, long-term investments.
Beslutningsveiledning
Når bruke Standard Neural Voices?
| Scenario | Anbefaling |
|---|---|
| Prototype/MVP | ✅ Ja — rask oppstart, ingen godkjenning |
| Budget-begrenset | ✅ Ja — kun pay-per-character |
| Global reach | ✅ Ja — 140+ språk out-of-the-box |
| Kort time-to-market | ✅ Ja — ingen training-tid |
| Generic voice OK | ✅ Ja — bred støtte, god kvalitet |
Når bruke Custom Neural Voice?
| Scenario | Anbefaling |
|---|---|
| Brand identity kritisk | ✅ Ja — unik merkestemme |
| Celebrity/character voice | ✅ Ja — med consent |
| Langsiktig investering | ✅ Ja — ROI over tid |
| Compliance med voice talent | ✅ Ja — juridisk rammeverk på plass |
| Quick POC | ❌ Nei — for lang lead time |
Når bruke Personal Voice?
| Scenario | Anbefaling |
|---|---|
| User-generated voices | ✅ Ja — rask kloning |
| Personaliserte assistenter | ✅ Ja — hver bruker sin stemme |
| Skalering (mange stemmer) | ✅ Ja — per-voice-per-day fakturering |
| Høy kvalitetskrav | ⚠️ Vurder — lavere kvalitet enn professional |
Beslutningstabell: Batch vs. Real-time
| Kriterium | Real-time Synthesis | Batch Synthesis |
|---|---|---|
| Latency | <1 sekund | Minutter (asynkront) |
| Audio lengde | <10 minutter | Ubegrenset |
| Use case | Interactive/conversational | Long-form content |
| SDK support | Ja (alle språk) | REST API only |
| Streaming | Ja | Nei (download når ferdig) |
Vanlige feil og røde flagg
| Feil | Konsekvens | Løsning |
|---|---|---|
| Hardkodet SSML-stemmer | Ikke flerspråklig-kompatibel | Bruk multilingual voices + lang element |
| Ignorer audio effects | Dårlig lydkvalitet i bil/telefon | Bruk effect="eq_car" eller eq_telecomhp8k |
| Over-tuning prosody | Unaturlig robotlyd | Hold rate mellom 0.5-2, pitch 0.5-1.5 |
| Glemmer rate limits | Throttling i prod | Request rate increase proaktivt |
| Ingen error handling | Dårlig brukeropplevelse | Implementer fallback til alternativ stemme |
| Custom voice uten hosting | Voice ikke tilgjengelig | Budsjett for endpoint hosting-kostnader |
| Chinese characters | Dobbel billing | 1 kinesisk tegn = 2 billable characters |
Integrasjon med Microsoft-stakken
Microsoft Foundry
- TTS er innebygd i AI Foundry Playground
- Testverktøy: Speech Studio Voice Gallery, Audio Content Creation
- Ingen kode-tilnærming: Audio Content Creation tool
- Prosjekt-basert deployment med Foundry resources
Microsoft 365 Copilot & Copilot Studio
- TTS kan integreres via custom connectors (Power Automate)
- Ikke native i M365 Copilot per januar 2026
- Copilot Studio: kan bruke TTS via Power Automate action
Power Platform
- Power Automate: Speech Services-connector tilgjengelig
- Custom connectors: REST API-basert integrasjon
- AI Builder: Ikke direkte TTS-støtte (men kan kalle via Power Automate)
Azure OpenAI
- OpenAI TTS voices tilgjengelig i Azure Speech (North Central US, Sweden Central)
- Også tilgjengelig direkte via Azure OpenAI TTS API
- Støtter
tts-1ogtts-1-hdmodeller (alloy, echo, fable, onyx, nova, shimmer)
Microsoft Agent Framework
- TTS kan brukes som output-kanal i agent-arkitektur
- Voice Live API: Kombinerer STT, LLM, og TTS i én WebSocket-forbindelse
- Avatar-integrasjon: Real-time avatar synthesis med TTS
Azure Services
| Tjeneste | Integrasjonspunkt |
|---|---|
| Azure Functions | Call Speech SDK fra serverless function |
| Azure Logic Apps | HTTP action til REST API |
| Azure Bot Service | Innebygd TTS-støtte via Bot Framework |
| Azure Media Services | TTS output kan lagres i Media Services |
| Azure Blob Storage | Lagring av synthesized audio files |
| Azure CDN | Distribusjon av pre-generated audio |
Offentlig sektor (Norge)
GDPR og personvern
Data som prosesseres:
- Input text (kan inneholde personopplysninger)
- Voice samples (for custom/personal voice — biometrisk data)
- Synthesized audio output
GDPR-vurdering:
- Text input logges ikke av Microsoft (processed in-memory)
- Custom voice training data lagres i Speech resource (customer-controlled)
- Personal voice profiles er biometrisk data — krever eksplisitt consent
- Audio output er ikke persondata med mindre innholdet er det
Anbefalinger:
- Bruk Azure regions i EU (West Europe, North Europe) for data residency
- For custom voice: DPIA (Data Protection Impact Assessment) påkrevd
- Voice talent consent må dekke GDPR Art. 9 (biometric data)
- Implementer logging og audit trail for TTS requests
Schrems II og datasuverenitet
Utfordringer:
- Azure Speech kjører i Microsoft-kontrollerte datasentre
- EU-US Data Privacy Framework gjelder for data transfers
- Custom voice modeller lagres i Azure region (customer choice)
Mitigering:
- Velg EU-baserte regions (West Europe, North Europe)
- Bruk Azure Confidential Computing for ekstra isolasjon (ikke direkte støttet for Speech per jan 2026)
- Contractual clauses: Standard Contractual Clauses (SCCs) dekker transfers
AI Act (EU)
Risikoklassifisering:
- TTS er generelt lav-risiko AI (ikke i high-risk categories)
- Unntak: TTS for deepfakes eller manipulation → transparency-krav
- Custom voice med voice cloning → disclosure-krav
Compliance-krav:
- Disclosure: Brukere må informeres om at stemmen er syntetisk
- Transparency note: Microsoft tilbyr transparency note for custom voice
- Prohibited uses: Ikke bruk for manipulation, misinformation eller skade
Anbefalinger:
- Implementer explicit disclosure i UI ("This voice is AI-generated")
- Følg Microsoft's Code of Conduct for TTS integrations
- Voice talent consent må dekke AI Act-krav
Forvaltningsloven og universell utforming
Tilgjengelighetskrav:
- TTS forbedrer tilgjengelighet for synshemmede (WCAG 2.1 AA)
- Offentlige nettsteder skal tilby skjermleserstøtte (Forvaltningsloven § 42)
Anbefalinger:
- Implementer TTS som standard accessibility feature
- Test med norske stemmer (nb-NO) for norsk offentlig sektor
- Kombiner med STT for full voice-basert navigasjon
Språk og dialekter (Norge)
| Språk | Stemmer tilgjengelig | Kvalitet |
|---|---|---|
Norwegian Bokmål (nb-NO) |
nb-NO-PernilleNeural (F), nb-NO-FinnNeural (M) |
⭐⭐⭐⭐ |
| Norwegian Nynorsk | Ikke støttet (bruk nb-NO med tekst-tilpasning) |
— |
| Samisk | Ikke støttet | — |
Utfordring: Nynorsk og samisk ikke native støttet. Løsning: Translasjon før TTS eller custom voice training.
Kostnad og lisensiering
Prismodell (pr. januar 2026)
| Kategori | Enhet | Pris (estimat, sjekk Azure pricing) |
|---|---|---|
| Standard Neural Voices | Per character | ~$0.015 per 1000 characters |
| HD Voices | Per character | ~$0.03 per 1000 characters |
| Custom Voice Training | Per compute hour | ~$10-$50 per hour (cap: 96h) |
| Custom Voice Hosting | Per endpoint per hour | ~$0.05-$0.50 per hour |
| Personal Voice Storage | Per voice per day | ~$1-$5 per voice per day |
| Personal Voice Synthesis | Per character | Samme som standard voices |
| Batch Synthesis | Per character | Samme som standard voices |
| Text-to-Speech Avatar | Per second of video | ~$0.02-$0.10 per second |
Viktig: Priser varierer per region og er illustrative. Sjekk Azure Pricing Calculator for eksakt prisnivå.
Fakturering av tegn (billable characters)
- Alle tegn teller: bokstaver, tall, mellomrom, tegnsetting
- SSML markup teller: Alt unntatt
<speak>og<voice>tags - Kinesiske tegn = 2× tegn (også kanji, hanja, hanzi)
- Ingen output = faktureres likevel (hvis request er valid)
Eksempel:
<speak><voice name="en-US-AvaNeural">Hello, world!</voice></speak>
Billable characters: Hello, world! = 13 tegn (ikke <speak> eller <voice>)
Kostnadsoptimalisering
| Strategi | Besparelse |
|---|---|
| Cache synthesized audio | 90%+ (for statisk innhold) |
| Use standard voices over HD | 50% |
| Pre-generate common phrases | 100% (ingen runtime-kostnad) |
| Batch synthesis for long-form | Ingen direkte saving, men bedre throughput |
| Rate limit management | Unngå throttling-kostnader |
| Suspend custom voice endpoints | 100% hosting-kostnad når ikke i bruk |
Lisenskrav
- Azure subscription påkrevd (Pay-as-you-go, EA, CSP)
- Speech resource i Azure portal (S0 tier for production)
- Free tier (F0) tilgjengelig: 5 audio requests/month, 0.5M characters/month
- Custom voice: Krever Microsoft Foundry resource + Limited Access approval
TCO-estimat (Total Cost of Ownership) — Eksempel
Scenario: Voice assistant for offentlig sektor (10,000 brukere/måned, 50 requests/bruker, 200 characters/request)
| Komponent | Kalkyle | Kostnad/måned (NOK) |
|---|---|---|
| Characters | 10,000 × 50 × 200 = 100M chars | ~15,000 kr |
| Speech resource (S0) | Fixed cost | 0 kr (PAYG) |
| Bandwidth (egress) | ~100 GB @ 48kHz WAV | ~100 kr |
| Storage (cache) | ~500 GB Blob Storage | ~100 kr |
| Total | — | ~15,200 kr/måned |
Custom voice-tillegg:
- Training (one-time): ~20,000-50,000 kr (40 compute hours × ~500 kr/h)
- Hosting: ~4,000 kr/måned (24/7 endpoint)
- Total første år: ~230,000 kr
For arkitekten (Cosmo)
Spørsmål å stille kunden
-
Hvilke språk må støttes, og er norsk bokmål tilstrekkelig eller trengs nynorsk/samisk?
- Hvis nynorsk: vurder custom voice training eller tekst-tilpasning før TTS.
-
Er det behov for unik merkestemme, eller er standard neural voices godt nok?
- Custom voice krever Limited Access approval (4-6 ukers lead time) og voice talent consent.
-
Skal TTS brukes i sanntid (chatbot) eller batch (audiobook)?
- Sanntid: Speech SDK med low-latency konfigurering.
- Batch: Batch Synthesis API for filer >10 minutter.
-
Hva er volumet av characters per måned, og hva er budsjettet?
- Bruk Azure Pricing Calculator for estimat. Cache statisk innhold for å spare penger.
-
Er det krav til disclosure (AI-generert stemme) eller voice talent consent?
- Offentlig sektor + EU AI Act: Disclosure påkrevd for transparency.
-
Skal løsningen integreres med eksisterende Microsoft-stack (Teams, Power Platform, Azure OpenAI)?
- Power Automate connector tilgjengelig. Azure OpenAI har egen TTS API.
-
Hva er kravet til lydkvalitet: standard (24kHz), HD (48kHz), eller professional custom voice?
- HD voices koster 2× standard. Custom voice for ultimate kvalitet.
-
Er det behov for prosody-kontroll (SSML) eller holder plain text?
- SSML gir kontroll over rate, pitch, volume, style — anbefalt for advanced use cases.
Fallgruver og vanlige feil
| Fallgruve | Konsekvens | Hvordan unngå |
|---|---|---|
| Ikke test med norske stemmer | Dårlig brukeropplevelse | Test nb-NO-PernilleNeural tidlig i prosjektet |
| Over-estimert custom voice ROI | Høye kostnader uten verdi | Start med standard voices, vurder custom etter MVP |
| Glemmer voice talent consent | Juridisk risiko | Følg Microsoft's consent guidelines og mal |
| Ingen error handling | App crasher ved rate limits | Implementer retry logic og fallback-stemme |
| Hard-kodet stemmer | Ikke skalerbart | Bruk konfigurasjon/database for voice selection |
| Ignorerer GDPR | Brudd på personvernforskriften | DPIA for custom voice, data residency i EU |
Anbefalinger per modenhetsnivå
Nivå 1: Pilot / POC
- Bruk: Standard neural voices (
nb-NO-PernilleNeural) - SDK: Speech SDK (C# eller Python)
- Output: Speaker eller in-memory stream
- Kostnad: Free tier (F0) eller minimal PAYG
- Tid: 1-2 uker implementering
Nivå 2: MVP / Production
- Bruk: Standard neural voices eller HD voices
- SDK: Speech SDK med error handling og retry logic
- Caching: Azure Blob Storage for statisk innhold
- Monitoring: Application Insights for latency tracking
- Kostnad: PAYG (S0 tier)
- Tid: 4-6 uker implementering
Nivå 3: Enterprise / Custom Voice
- Bruk: Custom neural voice (Limited Access)
- Training: 40-90 compute hours (single/multi-style)
- Hosting: 24/7 endpoint deployment
- Integration: Power Platform, Azure OpenAI, Teams
- Compliance: GDPR, AI Act, voice talent consent
- Kostnad: 200,000-500,000 kr første år (training + hosting)
- Tid: 3-6 måneder (inkl. approval process)
Nivå 4: Advanced / Multi-Region / Avatar
- Bruk: Multi-region deployment (HA/DR)
- Avatar: Text-to-Speech Avatar (prebuilt eller custom)
- Voice Live API: Integrated STT + LLM + TTS pipeline
- Geo-redundancy: Multiple Speech resources (West Europe + North Europe)
- Kostnad: 500,000+ kr/år
- Tid: 6-12 måneder
Sikkerhetsdesign-tips
- API keys: Bruk Azure Key Vault, ikke hardkod i kode
- Managed Identity: Foretrekk over service principals for Azure-integrasjoner
- Network isolation: Private Endpoints for Speech resources hvis mulig
- Rate limiting: Implementer client-side throttling før Azure rate limits
- Audit logging: Log alle TTS requests for compliance (Analytics Workspace)
Kilder og verifisering
Microsoft Learn (Verified via MCP)
Code Samples (Verified via MCP)
- C# Speech SDK: https://github.com/Azure-Samples/cognitive-services-speech-sdk
- Batch Synthesis samples: https://github.com/Azure-Samples/Cognitive-Speech-TTS
- Avatar samples: https://github.com/Azure-Samples/cognitive-services-speech-sdk/tree/master/samples/js/browser/avatar
Confidence per seksjon
| Seksjon | Confidence | Basert på |
|---|---|---|
| Introduksjon | ✅ Documented | MCP docs_search + docs_fetch |
| Kjernekomponenter | ✅ Documented | MCP docs + code samples |
| Arkitekturmønstre | ⚠️ Baseline + Verified | Patterns fra docs + erfaring |
| Beslutningsveiledning | ⚠️ Baseline | Best practices (ikke eksplisitt i docs) |
| Integrasjon Microsoft-stakken | ✅ Documented (delvis) | Dokumentert for noen, baseline for andre |
| Offentlig sektor (Norge) | ⚠️ Baseline | GDPR/AI Act-vurdering ikke i MS docs |
| Kostnad og lisensiering | ✅ Documented | Pricing docs + examples |
| For arkitekten | ⚠️ Baseline | Praktisk erfaring, ikke dokumentert i MCP |
Totalt antall MCP-kall: 7 (4 × docs_search, 3 × docs_fetch, 1 × code_sample_search) Unike kilder: 10+ Microsoft Learn-artikler