KB-currency refresh (medium priority, 2026-06-19) via /architect:kb-update. 74 medium-prioritets filer re-verifisert mot Microsoft Learn (MCP) — delegert til 15 parallelle Opus-subagenter (3 bølger) gruppert etter delt kilde, med disjunkte fil-sett. Verifisert i hovedkontekst (scope-sjekk + diff-review av de faktatunge gruppene + tester). Hovedendringer (faktuelle korreksjoner + currency): - Azure AI Search semantic ranker: TILGJENGELIG PÅ ALLE TIERS (også Free/Basic m/ gratis månedlig kvote) — gammel KB sa feilaktig "kun S1+". Korrigert i tier-tabell, anti-patterns og beslutningstabell (azure-ai-search-setup). - APIM score-threshold = DISTANSE (lavere = strengere): tuning-tabellen i rag-caching-optimization hadde retningen baklengs — invertert til korrekt. - Agentic retrieval GA/preview-nyanse presisert (hovedkontekst-korreksjon mot agentic-retrieval-how-to-migrate): GA via REST 2026-04-01 returnerer EKSTRAKTIV grounding (references + activity), IKKE syntetiserte svar. Answer synthesis, ikke-minimal reasoning effort (LLM query planning) og multi-turn messages forblir preview (2026-05-01-preview). Subagent hadde overforenklet til "hele kjernepipelinen GA"; rettet i agentic-rag-patterns + citation-tracking. - Copilot Studio modell-tabeller (platforms/copilot-studio): fjernet Claude Opus 4.5 + GPT-5.2 (borte fra kilde), lagt til Claude Sonnet 4.6/Opus 4.6 (GA), Opus 4.7 + Mistral Medium 3.5 (experimental); GPT-5 Reasoning/Auto = preview; A2A GA (apr 2026). - Computer Use (CUA): Copilot Studio GA 2026-05-07; 4 modeller m/ tier/status (OpenAI CUA + Sonnet 4.5 GA, Sonnet 4.6 + Opus 4.6 experimental); 5 credits/ steg standard, 15 premium; US-only region-krav FJERNET i GA-dok; Cloud PC pool + Hosted browser + bring-your-own-machine. - Azure AI Search REST API-versjoner bumpet: 2025-09-01 -> 2026-04-01 (stabil), 2025-11-01-preview -> 2026-05-01-preview (hybrid-search, rag-security-rbac, chunking). - Power Automate-integrasjon: trigger "Run a flow from Copilot" -> "When an agent calls the flow"; App Service innebygd MCP (preview) lagt til. - M365 Copilot-manifest v1.26 -> v1.28 (GA, mai) / v1.29 dokumentert (juni); "Tenant graph grounding" -> "Work IQ". - Speech fast transcription 2t/300MB -> 5t/500MB; multilingual 14 -> 15 locales (+ pt-BR). Content Understanding reasoning preview -> GA (v1.0, 2025-11-01). - Security Copilot E5 -> E5+E7. Død Databricks-URL ci-cd/best-practices -> ci-cd/flows. Prompt Flow retirement (2027-04-20 -> MAF) notert der den presenteres som go-forward. Gateway-topologi-tabell-feil rettet. - Alle 74 Last updated -> 2026-06-19. Discovery ikke kjørt (historisk kun Databricks-støy) -> 389-telling uendret, ingen resync. validate 239 PASS, kb-integrity 115/115 (262 orphan-warnings uendret), gitleaks clean. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01REiKFhP4w6xGXXqWKpPCJJ
415 lines
20 KiB
Markdown
415 lines
20 KiB
Markdown
# Language Services - Text Analytics for Sentiment and Key Phrases
|
||
|
||
**Last updated:** 2026-06-19 | Verified: MCP 2026-06-19
|
||
**Status:** GA (deler avvikles 2029-03-31)
|
||
|
||
> **ADVARSEL — TJENESTER AVVIKLES (2029-03-31):** Sentiment Analysis, Opinion Mining og Custom Text Classification avvikles 31. mars 2029. Migrer til Azure AI Foundry-modeller. PII Detection, Key Phrase Extraction og Language Detection er ikke berørt.
|
||
**Category:** Azure AI Services (Foundry Tools)
|
||
|
||
---
|
||
|
||
## Introduksjon
|
||
|
||
Azure AI Language er en samling av forhåndsopplærte språkmodeller som gjør det mulig å utføre avansert tekstanalyse uten å bygge egne maskinlæringsmodeller. Tjenesten tilbyr flere kjernekapabiliteter for text analytics: **Sentiment Analysis** (med opinion mining), **Key Phrase Extraction**, **Named Entity Recognition (NER)**, og **Language Detection**.
|
||
|
||
Disse kapabilitetene er tilgjengelige både som cloud-baserte REST API-er, SDK-er (C#, Java, Python, JavaScript), og Docker-containere for on-premises deployment. Tjenesten integreres sømløst med Azure AI Foundry, Azure Synapse Analytics, Power BI, og Microsoft Fabric, noe som gjør den egnet for både interactive playgrounds og produksjonsworkflows.
|
||
|
||
Text analytics-funksjonene er stateless — ingen data lagres i kontoen din, og resultater returneres umiddelbart etter analyse. For batch-operasjoner er resultatene tilgjengelige i 24 timer før de slettes automatisk. Tjenesten støtter 94+ språk for key phrase extraction, med bred språkstøtte også for sentiment analysis og NER.
|
||
|
||
---
|
||
|
||
## Kjernekomponenter / Nøkkelegenskaper
|
||
|
||
### Sentiment Analysis
|
||
|
||
Analyserer tekst og returnerer sentiment labels (`positive`, `negative`, `neutral`, `mixed`) med confidence scores (0–1) på både setnings- og dokumentnivå.
|
||
|
||
| Funksjonalitet | Beskrivelse |
|
||
|----------------|-------------|
|
||
| **Sentiment labels** | Positive, negative, neutral (setningsnivå); mixed tilgjengelig på dokumentnivå |
|
||
| **Confidence scores** | 0.0–1.0 per label (summer alltid til 1.0) |
|
||
| **Opinion Mining** | Identifiserer target-aspect (substantiv/verb) og tilhørende assessment (adjektiv) |
|
||
| **Beste use case** | Små tekstblokker (høyere kvalitet enn store) |
|
||
| **Språkstøtte** | [Omfattende liste](https://learn.microsoft.com/en-us/azure/ai-services/language-service/sentiment-opinion-mining/language-support) inkl. norsk |
|
||
|
||
**Eksempel (Opinion Mining):**
|
||
```
|
||
Input: "The room was great, but the staff was unfriendly."
|
||
Output:
|
||
- Target: "room" → Assessment: "great" (positive)
|
||
- Target: "staff" → Assessment: "unfriendly" (negative)
|
||
- Document sentiment: mixed
|
||
```
|
||
|
||
### Key Phrase Extraction
|
||
|
||
Evaluerer ustrukturert tekst og returnerer en liste over viktigste key phrases.
|
||
|
||
| Funksjonalitet | Beskrivelse |
|
||
|----------------|-------------|
|
||
| **Input-optimalisering** | Fungerer best på **større tekstblokker** (motsatt av sentiment) |
|
||
| **Output** | Liste med key phrases, sortert av modellens interne ranking |
|
||
| **Språkstøtte** | 94 språk (inkl. norsk, samisk, finsk, svensk, dansk) |
|
||
| **Use case** | Rask identifikasjon av hovedpoeng i dokumentsamlinger |
|
||
|
||
**Eksempel:**
|
||
```
|
||
Input: "Dr. Smith has a very modern medical office, and she has great staff."
|
||
Output: ["modern medical office", "Dr. Smith", "great staff"]
|
||
```
|
||
|
||
### Named Entity Recognition (NER)
|
||
|
||
Identifiserer og kategoriserer entities i tekst (person, lokasjon, organisasjon, dato, etc.).
|
||
|
||
| Entity-kategori | Typer (eksempler) |
|
||
|-----------------|-------------------|
|
||
| **Person** | Person, PersonType (rolle) |
|
||
| **Organization** | Organization, OrganizationMedical, OrganizationSports, OrganizationStockExchange |
|
||
| **Location** | City, CountryRegion, State, GPE (geopolitical entity), Airport, Continent |
|
||
| **DateTime** | Date, Time, DateRange, TimeRange, Duration, Set |
|
||
| **Quantity** | Number, Percentage, Currency, Age, Temperature, Speed, Weight, Volume, Area, Length |
|
||
| **Event** | Event, NaturalEvent, CulturalEvent, SportsEvent |
|
||
| **Contact** | Email, PhoneNumber, URL, IpAddress, Address |
|
||
| **Product** | Product, ComputingProduct |
|
||
| **Other** | Skill, Information |
|
||
|
||
**Metadata-resolutionsupport:** Mange quantity-entities returnerer strukturert metadata (f.eks. Currency → ISO-kode, normalized verdi).
|
||
|
||
### Language Detection
|
||
|
||
Evaluerer tekst og returnerer språk-identifier (ISO 639-1) med confidence score (0.0–1.0).
|
||
|
||
| Funksjonalitet | Beskrivelse |
|
||
|----------------|-------------|
|
||
| **Output** | Language name, ISO 6391 code, confidence score |
|
||
| **Use case** | Automatisk språkdeteksjon for content stores med mixed-language data |
|
||
| **Default** | Engelsk hvis ikke spesifisert |
|
||
|
||
---
|
||
|
||
## Arkitekturmønstre
|
||
|
||
### Mønster 1: REST API med Fabric/Synapse (Batch Processing)
|
||
|
||
**Use case:** Prosesser store volumer av dokumenter fra data lake (f.eks. kundefeedback, supporttickets).
|
||
|
||
**Fordeler:**
|
||
- Sømløs integrasjon med Azure Storage og Azure AI Search
|
||
- SynapseML gir Spark-optimalisert batch processing
|
||
- Built-in authentication via Fabric workspace credentials
|
||
|
||
**Ulemper:**
|
||
- Krever Spark-kompetanse for SynapseML
|
||
- Batch-mode medfører latency (ikke real-time)
|
||
|
||
**Eksempel (Fabric REST API):**
|
||
```python
|
||
# Auto-authenticated via Fabric
|
||
payload = {
|
||
"kind": "SentimentAnalysis",
|
||
"parameters": {"modelVersion": "latest", "opinionMining": "True"},
|
||
"analysisInput": {"documents": [{"id": "1", "language": "en", "text": "..."}]}
|
||
}
|
||
response = requests.post(service_url, json=payload, headers=auth_headers)
|
||
```
|
||
|
||
### Mønster 2: SDK-basert integrasjon (Client Library)
|
||
|
||
**Use case:** Real-time tekstanalyse i web/mobile apps, chatbots, eller Power Apps.
|
||
|
||
**Fordeler:**
|
||
- Typed responses (C#, Java) reduserer parsing-bugs
|
||
- Async support for skalerbare apps
|
||
- Enklere feilhåndtering enn raw REST
|
||
|
||
**Ulemper:**
|
||
- SDK versioning (må holde tritt med API-versjoner)
|
||
- Større binary footprint enn REST
|
||
|
||
**Eksempel (C# SDK):**
|
||
```csharp
|
||
var client = new TextAnalyticsClient(endpoint, new AzureKeyCredential(key));
|
||
var response = await client.AnalyzeSentimentAsync("The service was excellent!");
|
||
Console.WriteLine($"Sentiment: {response.Value.Sentiment}");
|
||
```
|
||
|
||
### Mønster 3: Docker Container (On-Premises)
|
||
|
||
**Use case:** Compliance-krav som krever data residency i Norge, eller air-gapped environments.
|
||
|
||
**Fordeler:**
|
||
- Full datakontroll (ingen data sendes til cloud)
|
||
- Lav latency (lokal processing)
|
||
- Støtter Sentiment, Language Detection, Key Phrase, Custom NER, Text Analytics for Health
|
||
|
||
**Ulemper:**
|
||
- Krever egne compute-ressurser (CPU/minne)
|
||
- Ingen automatiske modelloppdateringer (må manuelt oppdatere container images)
|
||
- Free F0 tier støttes ikke (kun Standard S tier)
|
||
|
||
---
|
||
|
||
## Beslutningsveiledning
|
||
|
||
### Når bruke Sentiment Analysis vs. Opinion Mining
|
||
|
||
| Scenario | Anbefaling |
|
||
|----------|-----------|
|
||
| Trenger kun overordnet positive/negative/neutral? | **Sentiment Analysis** (uten opinion mining-flag) |
|
||
| Må identifisere *hva* kunder liker/misliker? | **Opinion Mining** (sett `opinionMining=true`) |
|
||
| Analyserer produktanmeldelser med attributter? | **Opinion Mining** (target = produkt-feature, assessment = vurdering) |
|
||
|
||
### Vanlige feil
|
||
|
||
| Feil | Løsning |
|
||
|------|---------|
|
||
| Lav kvalitet på sentiment for lange dokumenter | Del opp tekst i mindre chunks (maks 5000 tegn per record) |
|
||
| Key phrases mangler kontekst | Gi større tekstblokker (key phrase fungerer bedre på større input enn sentiment) |
|
||
| NER feiltolker domene-spesifikke entities | Vurder Custom NER (trener egen modell på dine data) |
|
||
| Mixed sentiment når både positive og negative setninger | Dette er forventet — bruk Opinion Mining for granularitet |
|
||
|
||
### Røde flagg
|
||
|
||
- **Ikke bruk** for medisinsk diagnostikk (selv om Text Analytics for Health finnes — krever spesialistkompetanse)
|
||
- **Ikke bruk** for PII-deteksjon i produksjon uten også å enable [PII Detection feature](https://learn.microsoft.com/en-us/azure/ai-services/language-service/personally-identifiable-information/overview)
|
||
- **Ikke bruk** default English language hvis du vet teksten er på andre språk (spesifiser `language` parameter)
|
||
|
||
### Beslutningstabell: SDK vs. REST vs. Container
|
||
|
||
| Krav | SDK | REST API | Container |
|
||
|------|-----|----------|-----------|
|
||
| Real-time app-integrasjon | ✅ Beste valg | ⚠️ Fungerer, mer boilerplate | ❌ Overkill |
|
||
| Batch processing (millioner dokumenter) | ⚠️ Mulig, men batch APIs bedre | ✅ Med SynapseML | ⚠️ Infrastruktur-overhead |
|
||
| Data residency krav (Norge) | ❌ Må bruke EU-regioner | ❌ Må bruke EU-regioner | ✅ Full kontroll |
|
||
| Lavest kostnads-overhead | ✅ Pay-per-call | ✅ Pay-per-call | ⚠️ Egen infrastruktur |
|
||
|
||
---
|
||
|
||
## Integrasjon med Microsoft-stakken
|
||
|
||
### Azure AI Foundry
|
||
|
||
Language Services er integrert i Foundry Playground med visuell testing av sentiment, key phrases, og NER uten kode.
|
||
|
||
**Workflow:**
|
||
1. Opprett Language resource i Foundry
|
||
2. Velg "Analyze sentiment" eller "Key phrase extraction" fra banneret
|
||
3. Lim inn tekst, velg API-versjon, språk, og kjør
|
||
4. Se resultater med confidence scores og opinion mining-targets
|
||
|
||
### Power BI
|
||
|
||
Power BI Desktop kan integrere direkte med Key Phrase Extraction via Power Query custom functions.
|
||
|
||
**Use case:** Analyser kundefeedback fra Excel/CSV, visualiser key phrases som word cloud.
|
||
|
||
**Tutorial:** [Extract key phrases from Power BI](https://learn.microsoft.com/en-us/azure/ai-services/language-service/key-phrase-extraction/tutorials/integrate-power-bi)
|
||
|
||
### Azure Synapse Analytics / Microsoft Fabric
|
||
|
||
SynapseML (tidligere MMLSpark) gir native Spark support for Language Services.
|
||
|
||
**Fordeler:**
|
||
- Batch processing av DataFrames
|
||
- Auto-authentication i Fabric notebooks (ingen API keys nødvendig)
|
||
- Sømløs integrasjon med lakehouse data
|
||
|
||
**Eksempel (SynapseML for Key Phrases):**
|
||
```python
|
||
from synapse.ml.cognitive.language import AnalyzeText
|
||
|
||
model = AnalyzeText().setTextCol("text").setKind("KeyPhraseExtraction")
|
||
result = model.transform(df).select("text", "keyPhrases")
|
||
```
|
||
|
||
### Copilot Studio
|
||
|
||
Language Services kan brukes i custom Copilot Studio skills for å analysere brukersentiment i conversations før routing til riktig agent.
|
||
|
||
**Use case:** Automatisk eskaler negative sentiment til human agent, neutral til FAQ bot.
|
||
|
||
### Azure Cognitive Search
|
||
|
||
Language Services entities kan indekseres i Azure AI Search som facets, noe som muliggjør entity-basert search filtering (f.eks. "finn dokumenter om Microsoft som organisasjon").
|
||
|
||
---
|
||
|
||
## Offentlig sektor (Norge)
|
||
|
||
### GDPR og Schrems II
|
||
|
||
| Risiko | Mitigering |
|
||
|--------|-----------|
|
||
| Data sendes til Azure EU-regioner (Vest-Europa, Nord-Europa) | ✅ Bruk EU-regioner for Language resource |
|
||
| Potensielle concerns om US Cloud Act | ✅ Bruk Docker containers on-premises for følsom data |
|
||
| PII i tekst (personnummer, navn, e-post) | ✅ Anonymiser først, eller bruk PII Detection-feature |
|
||
| Data retention i 24 timer (batch mode) | ✅ Synkron modus lagrer ikke data (stateless) |
|
||
|
||
### AI Act (EU)
|
||
|
||
Language Services klassifiseres som **lav-risiko AI** (ikke høyrisiko) så lenge det ikke brukes til:
|
||
- Biometric identification
|
||
- Critical infrastructure
|
||
- Law enforcement (uten human oversight)
|
||
|
||
**Krav:**
|
||
- Dokumenter hvordan sentiment/entity detection brukes
|
||
- Vurder bias (trent på hovedsakelig engelske datasett, kan være mindre nøyaktig for norsk)
|
||
|
||
### Forvaltningsloven og transparens
|
||
|
||
Ved bruk i saksbehandling:
|
||
- **Ikke la sentiment score alene avgjøre saker** (kun som beslutningsstøtte)
|
||
- **Logg alle analyser** (hvem, hva, når, resultat) for etterprøvbarhet
|
||
- **Informer brukere** hvis deres tekst analyseres (f.eks. feedback-forms)
|
||
|
||
### Datasuverenitet
|
||
|
||
**Azure Norway datacenters** (Oslo, Stavanger) støtter ikke Language Services per 2026-02. Nærmeste regioner:
|
||
- **West Europe** (Nederland)
|
||
- **North Europe** (Irland)
|
||
|
||
For full datasuverenitet: **Bruk Docker containers** (Sentiment, Language Detection, Key Phrase, Custom NER) hosted i Norge.
|
||
|
||
---
|
||
|
||
## Kostnad og lisensiering
|
||
|
||
### Prismodell (Azure Language)
|
||
|
||
Language Services bruker **pay-per-call** modell (per text record).
|
||
|
||
| Tier | Pris per 1000 text records | Bruksscenario |
|
||
|------|----------------------------|---------------|
|
||
| **Free F0** | 0 NOK (5000 gratis/måned) | Testing, POC, lav-volum apps |
|
||
| **Standard S** | Varierer per region (~$1–2 USD / 1000 records) | Produksjon |
|
||
|
||
**Viktige detaljer:**
|
||
- **Maks 5000 tegn per record** (større dokumenter må splittes)
|
||
- **Opinion Mining** inkludert i Standard tier (ingen ekstra kostnad)
|
||
- **Batch mode** (asynchronous) har samme pris som synchronous
|
||
- **Docker containers** krever Standard tier (Free F0 støttes ikke)
|
||
|
||
### Kostnadseksempel (norsk offentlig virksomhet)
|
||
|
||
**Scenario:** Analyserer 100 000 brukerhenvendelser/måned med sentiment + key phrases (2 API-kall per henvendelse).
|
||
|
||
| Komponent | Kostnad (estimat) |
|
||
|-----------|-------------------|
|
||
| 200 000 text records × $1.50 / 1000 | $300 USD/måned (~3200 NOK) |
|
||
| Azure Language resource (S tier) | Ingen fast månedskostnad (kun per-call) |
|
||
| Azure Storage (hvis batch mode) | ~$20 USD/måned for 1TB (~210 NOK) |
|
||
| **Total** | **~3400 NOK/måned** |
|
||
|
||
### Optimaliseringstips
|
||
|
||
1. **Batch asynkront** — Hvis du kan vente 24 timer, bruk asynchronous API (ingen prisforskjell, men enklere infrastruktur)
|
||
2. **Filtrer ut tom tekst** — Ikke send records uten innhold (koster like mye som reelle records)
|
||
3. **Kombiner features i én request** — Sentiment + Key Phrases + Entities kan kjøres i én `analyze-text` call (sparer HTTP-overhead, ikke pris)
|
||
4. **Bruk containers for høy-volum** — Hvis >1M records/måned, vurder self-hosted containers med Reserved VM Instances
|
||
|
||
---
|
||
|
||
## For arkitekten (Cosmo)
|
||
|
||
### Spørsmål å stille kunden
|
||
|
||
1. **Volum og latency:**
|
||
- Hvor mange dokumenter skal analyseres (per dag/måned)?
|
||
- Kreves real-time respons (<500ms) eller er batch OK (24t)?
|
||
|
||
2. **Språk og multispråklighet:**
|
||
- Er all tekst på norsk, eller blandet språk?
|
||
- Trenger dere automatisk språkdeteksjon?
|
||
|
||
3. **Datakompleksitet:**
|
||
- Er tekstene lange (>5000 tegn) eller korte (f.eks. tweets, SMS)?
|
||
- Inneholder teksten sensitive personopplysninger (navn, personnummer)?
|
||
|
||
4. **Detaljnivå:**
|
||
- Trenger dere kun overordnet sentiment, eller må dere vite *hva* som er positivt/negativt (opinion mining)?
|
||
- Skal entities kobles til eksterne knowledge bases (entity linking)?
|
||
|
||
5. **Infrastruktur og compliance:**
|
||
- Kan data sendes til Azure EU-regioner, eller kreves on-premises?
|
||
- Har dere eksisterende Azure Synapse / Fabric infrastructure?
|
||
|
||
6. **Integrasjoner:**
|
||
- Skal resultatene visualiseres i Power BI, eller bare lagres i database?
|
||
- Brukes det i en eksisterende app (web/mobile), eller ny løsning?
|
||
|
||
7. **Fremtidig utvidelse:**
|
||
- Vil dere senere trenge custom entities (f.eks. organisasjonsspesifikke termer)?
|
||
- Planlegges det translation workflows (Azure Translator integrasjon)?
|
||
|
||
### Fallgruver
|
||
|
||
| Fallgruve | Forklaring | Mitigering |
|
||
|-----------|------------|------------|
|
||
| **"Sentiment = sannhet"** | Sentiment score er en prediktering, ikke en fasit | Alltid ha human-in-the-loop for kritiske beslutninger |
|
||
| **Overfitting til engelsk** | Modellen er best på engelsk, kan være mindre presis på norsk | Test med representative norske datasett før produksjon |
|
||
| **Ignorere PII** | Key phrases kan inneholde personnavn eller sensitiv info | Kjør PII Detection først, eller anonymiser tekst før analyse |
|
||
| **Glemme cost caps** | Per-call pricing kan eskalere ved bugs (infinite loops) | Sett Azure Cost Management alerts på Language resource |
|
||
| **Forvente perfekt NER** | NER kan feiltolke domene-spesifikke entities | Vurder Custom NER hvis standard entities ikke er presise nok |
|
||
|
||
### Anbefalinger per modenhetsnivå
|
||
|
||
#### Nivå 1: Exploring (POC, <1000 records/måned)
|
||
- **Anbefaling:** Free F0 tier + Azure AI Foundry Playground
|
||
- **Verktøy:** REST API via Postman eller Foundry web UI
|
||
- **Fokus:** Teste om sentiment/key phrases gir verdi for use case
|
||
- **Advarsler:** Ikke bygg produksjonsapp på Free tier (5000 records/mnd cap)
|
||
|
||
#### Nivå 2: Building (Pilot, 1000–100K records/måned)
|
||
- **Anbefaling:** Standard S tier + SDK (C#/Python) + Azure App Service
|
||
- **Verktøy:** Azure Language SDK, Application Insights for monitoring
|
||
- **Fokus:** Real-time integrasjon i app, feilhåndtering, retry-logikk
|
||
- **Advarseler:** Implementer circuit breaker pattern (unngå API throttling ved 429 errors)
|
||
|
||
#### Nivå 3: Scaling (Produksjon, >100K records/måned)
|
||
- **Anbefaling:** Standard S tier + SynapseML / Fabric + Batch API
|
||
- **Verktøy:** Azure Synapse Pipelines, Azure Data Lake, Azure AI Search (for entity indexing)
|
||
- **Fokus:** Batch processing, cost optimization, data governance
|
||
- **Advarseler:** Vurder Docker containers hvis kostnad >$1000/måned
|
||
|
||
#### Nivå 4: Optimizing (Enterprise, >1M records/måned)
|
||
- **Anbefaling:** Docker containers on Azure Kubernetes Service (AKS) + Custom NER
|
||
- **Verktøy:** AKS, Azure Monitor, Custom Text Classification (Language Studio)
|
||
- **Fokus:** Self-hosted inference, custom models for domene-spesifikke entities
|
||
- **Advarsler:** Container-licensing krever Standard tier — test kostnad mot cloud API
|
||
|
||
---
|
||
|
||
## Kilder og verifisering
|
||
|
||
### Microsoft Learn-dokumentasjon (Verified via MCP)
|
||
|
||
| Kategori | URL | Konfidensnivå |
|
||
|----------|-----|---------------|
|
||
| **Sentiment Analysis Overview** | https://learn.microsoft.com/en-us/azure/ai-services/language-service/sentiment-opinion-mining/overview | ✅ Verified (2026-02) |
|
||
| **Sentiment Analysis How-To** | https://learn.microsoft.com/en-us/azure/ai-services/language-service/sentiment-opinion-mining/how-to/call-api | ✅ Verified (2026-02) |
|
||
| **Key Phrase Extraction How-To** | https://learn.microsoft.com/en-us/azure/ai-services/language-service/key-phrase-extraction/how-to/call-api | ✅ Verified (2026-02) |
|
||
| **NER Entity Categories** | https://learn.microsoft.com/en-us/azure/ai-services/language-service/named-entity-recognition/concepts/named-entity-categories | ✅ Verified (2026-02) |
|
||
| **Fabric Text Analytics** | https://learn.microsoft.com/en-us/fabric/data-science/ai-services/how-to-use-text-analytics | ✅ Verified (2026-02) |
|
||
| **Key Phrase Language Support** | https://learn.microsoft.com/en-us/azure/ai-services/language-service/key-phrase-extraction/language-support | ✅ Verified (2026-02) |
|
||
| **Sentiment Language Support** | https://learn.microsoft.com/en-us/azure/ai-services/language-service/sentiment-opinion-mining/language-support | ✅ Verified (2026-02) |
|
||
| **Custom Text Classification** | https://learn.microsoft.com/en-us/azure/ai-services/language-service/custom-text-classification/overview | ✅ Verified (2026-02) |
|
||
|
||
### Konfidensnivå per seksjon
|
||
|
||
| Seksjon | Konfidens | Kilde |
|
||
|---------|-----------|-------|
|
||
| Introduksjon | ✅ Verified | Microsoft Learn docs (MCP-fetched) |
|
||
| Kjernekomponenter | ✅ Verified | REST API examples + model outputs fra docs |
|
||
| Arkitekturmønstre | ✅ Verified | Fabric tutorial + Synapse docs + SDK samples |
|
||
| Beslutningsveiledning | ⚠️ Baseline | Best practices (modellkunnskap), ikke eksplisitt dokumentert |
|
||
| Integrasjon med MS-stakken | ✅ Verified | Power BI tutorial + SynapseML docs + Foundry quickstarts |
|
||
| Offentlig sektor (Norge) | ⚠️ Baseline | GDPR-analyse (modellkunnskap) + Azure datacenter geografi |
|
||
| Kostnad og lisensiering | ⚠️ Baseline | Generell Azure pricing structure (ikke eksakte NOK-priser hentet) |
|
||
| For arkitekten (Cosmo) | ⚠️ Baseline | Arkitekturerfaringer (modellkunnskap), ikke dokumentert av Microsoft |
|
||
|
||
**Notater:**
|
||
- Prisestimater er basert på generell Azure-prisstruktur — alltid sjekk [Azure Pricing Calculator](https://azure.microsoft.com/en-us/pricing/calculator/) for eksakte priser.
|
||
- Norge datacenter-status per 2026-02 — verifiser i Azure portal før arkitekturavgjørelser.
|
||
- Custom NER og Custom Text Classification er separate features med egne prismodeller (ikke dekket detaljert her).
|