ms-ai-architect/skills/ms-ai-advisor/references/prompt-engineering/grounding-and-knowledge-injection.md
Kjell Tore Guttormsen baa2d0220b feat(ultraplan-local): v1.6.0 — /ultraresearch-local deep research command
Add /ultraresearch-local for structured research combining local codebase
analysis with external knowledge via parallel agent swarms. Produces research
briefs with triangulation, confidence ratings, and source quality assessment.

New command: /ultraresearch-local with modes --quick, --local, --external, --fg.
New agents: research-orchestrator (opus), docs-researcher, community-researcher,
security-researcher, contrarian-researcher, gemini-bridge (all sonnet).
New template: research-brief-template.md.

Integration: --research flag in /ultraplan-local accepts pre-built research
briefs (up to 3), enriches the interview and exploration phases. Planning
orchestrator cross-references brief findings during synthesis.

Design principle: Context Engineering — right information to right agent at
right time. Research briefs are structured artifacts in the pipeline:
ultraresearch → brief → ultraplan --research → plan → ultraexecute.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-04-08 08:58:35 +02:00

520 lines
No EOL
23 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# Grounding and Knowledge Injection Techniques
**Last updated:** 2026-02
**Status:** GA
**Category:** Prompt Engineering & LLM Optimization
---
## Introduksjon
Grounding og knowledge injection er fundamentale teknikker for å sikre at store språkmodeller (LLMs) genererer nøyaktige, faktabaserte og troverdige svar. Uten grounding vil en LLM kun stole på sin treningskunnskap, som har en cutoff-dato og ikke inkluderer proprietær eller domene-spesifikk informasjon. Dette fører ofte til "hallucinations" påstander som høres troverdige ut, men som er feilaktige eller ufullstendige.
Grounding innebærer å gi modellen tilgang til ekstern, pålitelig informasjon som den kan trekke sine svar fra. Denne informasjonen kalles "grounding data" eller "grounding sources". Når grounding kombineres med Retrieval-Augmented Generation (RAG), oppnår du et system der modellen henter relevant kontekst fra dokumenter, databaser eller andre kilder før den genererer et svar. Resultatet er svar som er forankret i verifiserbar kunnskap, med mulighet for kildehenvisninger og sporbarhet.
Knowledge injection går hånd i hånd med grounding det handler om hvordan du strukturerer og presenterer denne kunnskapen i promptet. Jo nærmere grounding-dataen er den ønskede svarformen, desto mindre arbeid må modellen gjøre, og desto lavere er risikoen for feil. Microsoft tilbyr flere verktøy og tjenester for grounding: Azure OpenAI "On Your Data", Copilot Studio knowledge sources, Azure AI Search, og Groundedness Detection i Azure AI Content Safety.
---
## Kjernekomponenter
### RAG-arkitektur (Retrieval-Augmented Generation)
RAG er grunnstenen i moderne grounding-systemer. En typisk RAG-workflow består av:
| Steg | Komponent | Beskrivelse |
|------|-----------|-------------|
| **1. Indeksering** | Data Pipeline | Dokumenter chunkes, berikes med metadata, og vektoriseres via embedding-modeller (f.eks. text-embedding-ada-002) |
| **2. Query formulation** | Orchestrator | Brukerens spørsmål transformeres til søkequeries (både keyword og semantisk søk) |
| **3. Retrieval** | Vector Store / Search Engine | Azure AI Search, Azure Cosmos DB, eller annen vector database returnerer top-N relevante chunks |
| **4. Context injection** | Prompt Construction | Retrieved chunks injiseres i system message eller user prompt som grounding context |
| **5. Generation** | LLM (GPT-4, GPT-5) | Modellen genererer svar basert på både sin kunnskap og grounding-dataen |
| **6. Verification** | Groundedness Detection | Azure AI Content Safety validerer at svaret er konsistent med kildene |
### Grounding Sources i Microsoft-stakken
| Kilde | Beskrivelse | Plattform | Autentisering |
|-------|-------------|-----------|---------------|
| **Azure AI Search** | Hybrid search (keyword + vector), semantic ranking | Azure OpenAI "On Your Data" | Managed Identity, API Key |
| **SharePoint Online** | Moderne SharePoint-sider, dokument-libraries | Copilot Studio, Microsoft 365 Copilot | Microsoft Graph, Entra ID |
| **Microsoft Graph** | E-post, kalender, OneDrive, Teams-meldinger | Copilot Studio (Tenant Graph Grounding) | Delegated permissions |
| **Copilot Connectors** | Tredjeparts-systemer (ServiceNow, Salesforce, osv.) | Copilot Studio | OAuth 2.0 via connector |
| **Custom Data Sources** | Egne APIs, SQL-databaser, Cosmos DB | Custom orchestrators (Semantic Kernel, LangChain) | Custom authentication |
| **Web Search (Bing)** | Bing Search API for sanntidsinformasjon | Azure AI Agents, Copilot Studio | API Key |
### Grounding Techniques
#### 1. **Inline Grounding** (Prompt-level)
Grounding-data injiseres direkte i promptet:
```markdown
System: You are an AI assistant. Answer ONLY using the provided context.
Context:
---
[DOCUMENT 1]: Azure AI Foundry is a unified platform for building, testing,
and deploying generative AI applications. Released: Nov 2024.
[DOCUMENT 2]: Azure OpenAI Service offers GPT-4, GPT-4 Turbo, and o-series models...
---
User: What is Azure AI Foundry?
```
**Fordeler:** Enkel å implementere, full kontroll over context.
**Ulemper:** Token-grense begrenser mengde data, krever manuell orkestrering.
#### 2. **Azure OpenAI "On Your Data"**
Azure OpenAI kan hente grounding data direkte fra Azure AI Search eller Azure Blob Storage:
```python
completion = client.chat.completions.create(
model="gpt-4",
messages=[{"role": "user", "content": "What are health benefits?"}],
extra_body={
"data_sources": [{
"type": "azure_search",
"parameters": {
"endpoint": "https://my-search.search.windows.net",
"index_name": "health-plans-index",
"authentication": {"type": "api_key", "key": "***"}
}
}]
}
)
```
**Fordeler:** Zero-code RAG, automatisk chunking og retrieval.
**Ulemper:** Mindre kontroll over retrieval-logikk, støtter kun Azure-tjenester.
#### 3. **Copilot Studio Knowledge Sources**
Copilot Studio støtter flere knowledge sources:
- **SharePoint sites** (automatisk indeksering av moderne sider og dokumenter)
- **Public websites** (URL-based crawling)
- **Custom files** (opplasting av PDF, Word, PowerPoint maks 500 filer, 512 MB per fil)
- **Copilot Connectors** (ServiceNow, Salesforce, Confluence, osv.)
- **Web Search** (Bing Search API for sanntidsdata)
**Tenant Graph Grounding:** Med Microsoft 365 Copilot-lisens får du tilgang til forbedret retrieval fra SharePoint via Microsoft Graph, inkludert metadata-filtrering og semantisk søk.
#### 4. **Custom Orchestrator med Semantic Kernel**
For full kontroll, implementer egen RAG-pipeline:
```python
from azure.search.documents import SearchClient
from openai import AzureOpenAI
# Steg 1: Retrieve
search_results = search_client.search(
search_text=query,
top=5,
select="content,metadata"
)
# Steg 2: Format context
context = "\n".join([doc["content"] for doc in search_results])
# Steg 3: Inject and generate
response = openai_client.chat.completions.create(
model="gpt-4",
messages=[
{"role": "system", "content": f"Answer using this context:\n{context}"},
{"role": "user", "content": query}
]
)
```
---
## Arkitekturmønstre
### Mønster 1: Single-Tenant RAG med Orchestrator
**Beskrivelse:** Én orchestrator henter grounding data fra én eller flere datastores per tenant. LLM-kall inneholder kun data som brukeren har tilgang til.
**Arkitektur:**
```
User → App → Identity Provider → Orchestrator → [Vector DB, SQL, Blob Storage] → LLM
```
**Fordeler:**
- Full kontroll over retrieval og sikkerhet
- Enkel å auditere og logge datahenting
- Støtter custom filtering og security trimming
**Ulemper:**
- Krever egen infrastruktur for orchestrator
- Mer kompleks å vedlikeholde enn "On Your Data"
**Bruk når:** Du har sensitive data, trenger audit-logging, eller har komplekse autorisasjonsregler.
---
### Mønster 2: Multitenant RAG med API-abstraksjon
**Beskrivelse:** En API-layer innkapsler dataaksess-logikk og sikrer at hver tenant kun får tilgang til sine egne data. Orchestrator kaller API-laget i stedet for å snakke direkte med datastores.
**Arkitektur:**
```
User → App → Identity Provider → Orchestrator → API Layer → [Shared DB, Tenant-specific DB] → LLM
```
**Tenant Isolation Strategies:**
| Strategi | Beskrivelse | Fordeler | Ulemper |
|----------|-------------|----------|---------|
| **Store-per-tenant** | Hver tenant har egen database/search index | Sterk isolasjon, enkel kostnadstildeling | Høy overhead, skalerer ikke til tusenvis av tenants |
| **Multitenant store** | Felles database, tenant-ID som partition key | Kostnadseffektivt, skalerer godt | Krever security trimming, risiko for "noisy neighbor" |
| **Shared store** | Felles data for alle tenants (f.eks. offentlig dokumentasjon) | Kostnadseffektivt | Ikke egnet for proprietær data |
**Fordeler:**
- Enkel å validere og teste sikkerhet (all logikk i API-laget)
- Støtter row-level security og custom filtering
- Audit-logging på ett sted
**Ulemper:**
- Ekstra lag øker latency
- Krever vedlikehold av API-kode
**Bruk når:** Du har multitenant SaaS-løsning med strengt definerte autorisasjonsregler.
---
### Mønster 3: Hybrid Grounding (Web + Private Data)
**Beskrivelse:** Kombiner private datastores med web search for å dekke både proprietær kunnskap og sanntidsdata.
**Arkitektur:**
```
User → Orchestrator → [Private Data (RAG)] + [Bing Search API] → LLM
```
**Eksempel-use case:**
- **Private data:** Interne policydokumenter, produktmanualer
- **Web search:** Siste nyheter, konkurranseinformasjon, oppdaterte priser
**Fordeler:**
- Best of both worlds: proprietær + sanntidsdata
- Reduserer hallucinations på time-sensitive spørsmål
**Ulemper:**
- Bing-kall kan øke kostnader
- Cross-geo dataflow (Bing-data forlater enterprise boundary)
- Må håndtere to ulike kildekategorier i responsen
**Bruk når:** Applikasjonen trenger både intern kunnskap og sanntidsdata (f.eks. chatbot for kundeservice).
---
## Beslutningsveiledning
### Når skal du bruke grounding?
| Scenario | Anbefaling | Verktøy |
|----------|------------|---------|
| **Faktabaserte spørsmål** (produktdetaljer, policydokumenter) | ✅ Påkrevd | Azure AI Search + RAG |
| **Sanntidsdata** (valutakurser, nyheter) | ✅ Påkrevd | Web Search (Bing) |
| **Kreativ tekst** (markedsføringstekst, historier) | ⚠️ Valgfritt | Baseline LLM (uten grounding) |
| **Sensitive data** (medisinske journaler, juridiske dokumenter) | ✅ Påkrevd + Groundedness Detection | Azure AI Search + Content Safety |
| **Offentlig kunnskap** (Wikipedia-lignende) | ⚠️ LLM kan håndtere uten grounding | Baseline LLM eller Web Search |
### Grounding Technique Decision Tree
```
START: Trenger du grounding?
├─ Ja → Er dataen sensitiv eller subject to compliance?
│ ├─ Ja → Bruk Azure AI Search + Private endpoints + Groundedness Detection
│ └─ Nei → Er dataen intern eller proprietær?
│ ├─ Ja → Azure OpenAI "On Your Data" eller Custom RAG
│ └─ Nei → Web Search (Bing) eller Public datasets
└─ Nei → Baseline LLM (GPT-4, GPT-5)
```
### Vanlige feil og hvordan unngå dem
| Feil | Symptom | Løsning |
|------|---------|---------|
| **For mye context** | Token limit exceeded, høye kostnader | Chunk data bedre, bruk top-K filtering (f.eks. top-5 chunks) |
| **Irrelevant context** | Modellen gir svar basert på feil kilder | Forbedre retrieval (hybrid search, semantic ranking) |
| **Manglende citations** | Kan ikke verifisere kilder | Instruer modellen: "Include inline citations as [1], [2]" |
| **Ungrounded responses** | Modellen "hallusinerer" fakta | Bruk Groundedness Detection, instruer "Answer ONLY from provided context" |
| **Security leakage** | Modellen lekker data fra andre tenants | Implementer API-layer med security trimming, test grundig |
### Røde flagg (når du IKKE skal bruke grounding)
-**Kreativ skriving der fakta ikke er kritisk** (f.eks. sci-fi-historier)
-**Brainstorming-sesjoner** der modellen skal generere nye idéer
-**Når grounding-data er utdatert** (da blir svaret verre enn baseline LLM)
-**Når retrieval-kvaliteten er dårlig** (irrelevante chunks gir dårligere svar)
---
## Integrasjon med Microsoft-stakken
### Azure OpenAI "On Your Data"
**Setup-steg:**
1. Opprett Azure AI Search-instans
2. Indekser dokumenter (manuelt eller via Azure Data Factory)
3. Konfigurer Azure OpenAI med data source:
```json
{
"dataSources": [{
"type": "AzureCognitiveSearch",
"parameters": {
"endpoint": "https://my-search.search.windows.net",
"indexName": "my-index",
"key": "***",
"semanticConfiguration": "default",
"queryType": "semantic",
"inScope": true,
"strictness": 3
}
}]
}
```
**Parametre å tune:**
- `strictness` (1-5): Hvor strengt modellen skal holde seg til kildene (5 = strengest)
- `top_n_documents`: Antall chunks å inkludere (default: 5)
- `inScope`: Hvis `true`, svarer modellen kun basert på sources (anbefalt for kritiske use cases)
### Copilot Studio Knowledge Configuration
**SharePoint som knowledge source:**
1. Gå til agent → **Knowledge****Add SharePoint**
2. Velg sites/libraries (modern SharePoint pages only)
3. Enable **Tenant Graph Grounding** (krever M365 Copilot-lisens)
4. Konfigurer metadata filters (f.eks. "only files modified last 30 days")
**Web Search (Bing):**
1. **Advanced****Generative answers****Web Search**
2. Velg mellom:
- **Open web search** (hele Bing-index)
- **Custom search** (avgrens til spesifikke domener)
3. Konfigurer user location (for regionsspesifikke resultater)
### Azure AI Content Safety: Groundedness Detection
**Validering av grounded responses:**
```python
conn.request("POST", "/contentsafety/text:detectGroundedness?api-version=2024-09-15-preview",
payload={
"domain": "Generic",
"task": "QnA",
"qna": {"query": "What is the interest rate?"},
"text": "The interest rate is 5%.",
"groundingSources": ["As of July 2024, the interest rate is 4.5%."],
"reasoning": True
}
)
```
**Output:** Groundedness score (boolean), reasoning (why ungrounded), correction suggestions.
**Bruk i produksjon:**
- Kjør post-generation for kritiske use cases (medisin, jus, finans)
- Log ungrounded responses for videre analyse
- Bruk correction feature for automatisk retting
---
## Offentlig sektor (Norge)
### GDPR og datasuverenitet
**Grounding data klassifisert som personopplysninger:**
-**Azure AI Search i Norge-region** (Norway East, Norway West) datalagring i Norge
-**Azure OpenAI** prosessering i EU/Norge (avhengig av deployment)
- ⚠️ **Bing Search API** data sendes til Bing (USA), ikke dekket av DPA (Data Protection Addendum)
-**Tredjepartsconnectors** vurder DPIA (Data Protection Impact Assessment) per connector
**Schrems II compliance:**
- Bruk Azure-tjenester i EU/Norge-regioner
- Unngå Bing Search for personopplysninger
- Dokumenter dataflyt i DPIA
### AI Act (EU AI-forordningen)
**Grounding som risikoreduserende tiltak:**
- **Høyrisiko-systemer** (f.eks. HR-beslutninger, offentlig forvaltning) → Påkrevd grounding + audit logs
- **Begrenset risiko** (chatbots) → Anbefalt grounding for transparens
- **Lav risiko** (kreativ AI) → Valgfritt
**Dokumentasjonskrav:**
- Logg hvilke grounding sources som ble brukt per respons
- Implementer citation tracking (inline citations i svar)
- Oppbevar audit logs i minimum 6 måneder (anbefalt: 2 år)
### Forvaltningsloven og begrunnelsesplikt
**§ 24-25 (begrunnelse av enkeltvedtak):**
- Automatiserte vedtak må kunne spores tilbake til grounding sources
- Inline citations sikrer transparens: "Ifølge [1], er kravet..."
- Lag system for å eksportere full reasoning chain (query → retrieval → LLM response)
**Eksempel:**
```
User: Er jeg kvalifisert for stønad X?
Response: Ja, du oppfyller kriteriene ifølge [1] fordi du har bodd i Norge i over 3 år [2].
Sources:
[1] Stønadsdokument v2.3 (2025-01-15), side 4
[2] Folkeregisteret: Registrert bosatt siden 2021-06-01
```
---
## Kostnad og lisensiering
### Azure OpenAI "On Your Data" kostnadselementer
| Komponent | Prisfaktor | Estimat (NOK/måned) |
|-----------|-----------|---------------------|
| **Azure OpenAI tokens** | Input + output tokens (GPT-4: ~0.35 NOK/1K tokens) | Varierer med volum |
| **Azure AI Search** | Storage (per GB) + queries (per 1000) | 500-5000 NOK (avhengig av tier) |
| **Embedding modell** | text-embedding-ada-002 (~0.001 NOK/1K tokens) | 100-500 NOK |
| **Bing Search API** | Per query (~0.50 NOK/query) | 500-2000 NOK (100-400 queries/dag) |
| **Egress traffic** | Data ut av Azure-region | Typisk neglisjerbart |
**Total estimert kostnad (medium bruk):** 2000-8000 NOK/måned
### Optimaliseringstips
| Tiltak | Besparelse | Trade-off |
|--------|-----------|-----------|
| **Reduser chunk size** | -20-30% token cost | Kan miste kontekst |
| **Bruk GPT-4o mini i stedet for GPT-4** | -90% per token | Lavere kvalitet på komplekse oppgaver |
| **Cache embeddings** | -50% embedding cost | Krever egen cache-løsning |
| **Batch queries** | -10-15% search cost | Høyere latency |
| **Bruk "strictness" parameter** | Reduserer unødvendige LLM-kall | Kan øke "jeg vet ikke"-svar |
### Copilot Studio lisensiering
**Grounding inkludert i lisens:**
- **Microsoft 365 Copilot-lisens:** SharePoint + Microsoft Graph grounding er zero-rated (ingen Copilot Credit usage)
- **Copilot Studio standalone:** Grounding teller mot Copilot Credits (kompleksitet-basert)
**Grounding som teller mot credits:**
- Custom connectors (Power Platform connectors)
- External APIs
- Complex multi-step retrieval
**Anbefaling:** For store organisasjoner, kombiner M365 Copilot-lisens (for SharePoint/Graph) med Copilot Studio for custom logic.
---
## For arkitekten (Cosmo)
### Spørsmål å stille kunden
1. **Datakilde og sensitivitet:**
- Hvor ligger dataen som skal brukes til grounding? (SharePoint, SQL, Blob Storage, on-prem?)
- Inneholder dataen personopplysninger eller sensitive forretningsdata?
- Kreves det audit-logging av datahenting?
2. **Multitenancy og autorisasjon:**
- Er dette en multitenant-løsning?
- Hvilke autorisasjonsregler gjelder? (rolle-basert, dokument-basert, tenant-basert?)
- Skal brukere kun se data de har tilgang til i kildesystemet?
3. **Datakvalitet og aktualitet:**
- Hvor ofte oppdateres dataen? (sanntid, daglig, ukentlig?)
- Hva er akseptabel "staleness" på grounding data?
- Finnes det en "source of truth" for dataen?
4. **Teknisk modenhet:**
- Har organisasjonen eksisterende RAG-erfaring?
- Kan de vedlikeholde en custom orchestrator, eller trenger de managed solution?
- Hvilket team skal eie embeddings-generering og indeksering?
5. **Compliance og risiko:**
- Er dette et høyrisiko-system under AI Act?
- Kreves det DPIA?
- Må svaret kunne spores tilbake til eksakt kilde (inline citations)?
6. **Volum og kostnad:**
- Hvor mange queries per dag forventes?
- Hva er akseptabel responstid? (< 2s, < 5s, < 10s?)
- Hva er budsjettet for grounding-infrastruktur?
7. **Fallback-strategi:**
- Hva skal skje hvis retrieval feiler? (default svar, feilmelding, fallback til baseline LLM?)
- Skal modellen kunne si "jeg vet ikke" hvis dataen mangler?
8. **Citation og transparens:**
- Skal brukerne se hvilke kilder som ble brukt?
- Kreves det inline citations i svaret?
- Skal metadata (f.eks. publish-dato) vises?
### Fallgruver å unngå
| Fallgruve | Konsekvens | Mitigering |
|-----------|-----------|-----------|
| **Dårlig chunking-strategi** | Irrelevante chunks, dårlig retrieval | Bruk semantic chunking (512-1024 tokens), overlapp 10-20% |
| **Manglende metadata** | Kan ikke filtrere på dato, forfatter, sensitivitet | Berik chunks med metadata under indeksering |
| **Ingen citation tracking** | Kan ikke verifisere kilder | Krev inline citations i system prompt |
| **Overpopulert context** | Token limit overskrides, høye kostnader | Bruk top-K filtering, prioriter nyeste/mest relevante |
| **Manglende security trimming** | Data leakage mellom tenants | Implementer API-layer, test grundig |
| **Statiske embeddings** | Retrieval basert på utdatert semantikk | Re-index regelmessig (f.eks. månedlig) |
| **Ingen groundedness validation** | Hallucinations går uoppdaget | Bruk Azure AI Content Safety Groundedness Detection |
### Anbefalinger per modenhetsnivå
#### Nivå 1: Pilot/Proof-of-Concept
- **Verktøy:** Azure OpenAI "On Your Data" + Azure AI Search
- **Grounding:** Inline grounding via system prompt
- **Datakilde:** Statiske dokumenter i Blob Storage (< 100 dokumenter)
- **Fokus:** Proof of concept, iterere på prompt design
- **Kostnad:** < 2000 NOK/måned
#### Nivå 2: Produksjon (begrenset skala)
- **Verktøy:** Copilot Studio med SharePoint knowledge sources
- **Grounding:** "On Your Data" eller Copilot Studio built-in RAG
- **Datakilde:** SharePoint (< 5000 dokumenter), evt. custom files
- **Fokus:** Brukeropplevelse, citation tracking, groundedness detection
- **Kostnad:** 5000-15000 NOK/måned (inkl. Copilot Studio-lisens)
#### Nivå 3: Enterprise (full skala)
- **Verktøy:** Custom orchestrator (Semantic Kernel/LangChain) + Azure AI Search
- **Grounding:** Hybrid (private data + web search)
- **Datakilde:** Multitenant SQL/Cosmos DB, API-layer for security trimming
- **Fokus:** Skalerbarhet, multitenant security, audit logging, compliance
- **Kostnad:** 20000-100000+ NOK/måned (avhengig av volum)
#### Nivå 4: Spesialisert (høyrisiko, regulert)
- **Verktøy:** Custom RAG + Groundedness Detection + audit pipeline
- **Grounding:** Store-per-tenant, inline citations, reasoning tracking
- **Datakilde:** On-prem integration (Azure Arc), private endpoints
- **Fokus:** GDPR, AI Act compliance, full auditability, eksplonerbar reasoning
- **Kostnad:** 100000+ NOK/måned (inkl. compliance overhead)
---
## Kilder og verifisering
**MCP-kilder (Verified):**
1. Microsoft Learn: [Prompt Engineering Techniques](https://learn.microsoft.com/en-us/azure/ai-foundry/openai/concepts/prompt-engineering) Groundedness context, citation best practices
2. Microsoft Learn: [Groundedness Detection Filter](https://learn.microsoft.com/en-us/azure/ai-foundry/openai/concepts/content-filter-groundedness) RAG definition, ungroundedness detection
3. Microsoft Learn: [Secure Multitenant RAG](https://learn.microsoft.com/en-us/azure/architecture/ai-ml/guide/secure-multitenant-rag) Tenant isolation, API-layer, security trimming
4. Microsoft Learn: [Copilot Studio Knowledge Sources](https://learn.microsoft.com/en-us/microsoft-copilot-studio/knowledge-copilot-connectors) SharePoint, connectors, tenant graph grounding
5. Microsoft Learn: [Web Search in Copilot Studio](https://learn.microsoft.com/en-us/microsoft-copilot-studio/data-privacy-security-web-search) Bing integration, privacy considerations
6. Microsoft Learn: [Azure AI Agents (Bing Grounding)](https://learn.microsoft.com/en-us/azure/ai-foundry/agents/how-to/tools/web-overview) Web grounding workflow
**Konfidensnivå per seksjon:**
| Seksjon | Konfidensnivå | Kilde |
|---------|---------------|-------|
| Introduksjon | Verified | MCP: Prompt Engineering, Groundedness Detection |
| RAG-arkitektur | Verified | MCP: Secure Multitenant RAG |
| Grounding Sources | Verified | MCP: Copilot Studio, Azure AI Search |
| Arkitekturmønstre | Verified | MCP: Secure Multitenant RAG |
| Azure OpenAI "On Your Data" | Verified | MCP: Prompt Engineering (code samples) |
| Copilot Studio | Verified | MCP: Knowledge Sources, Web Search |
| Groundedness Detection | Verified | MCP: Content Filter Groundedness |
| GDPR/AI Act | Baseline | Modellkunnskap (januar 2025) + etablert praksis |
| Kostnad | Baseline | Modellkunnskap + Azure pricing (januar 2025) |
| Spørsmål til kunden | Baseline | Arkitekturpraksis |
**Disclaimer:** Kostnadsestimater er basert på januar 2025-priser og kan endres. Verifiser alltid med [Azure Pricing Calculator](https://azure.microsoft.com/en-us/pricing/calculator/) for nøyaktige tall.