Sju entries lukket, aatte linjer slettet (26l hadde linja som eget avsnitt og
mistet ogsaa blanklinja). Ingen erstatningstekst: formen sier slett, ikke rett.
idx-26r trengte aldri form-beslutningen den var bokfoert for. «Kall eller
runder?» handler om om TALLET er riktig; under en slette-form er riktighet ikke
i mulighetsrommet, og linja er uverifiserbar under begge lesninger. Sjekket, ikke
paastaatt: idx-26k baerer eksplisitt sperre, idx-26r baerer ingen. STATEs «ikke
mekanisk» bar videre entry-teksten skrevet 14:11 — ti minutter FOER da16608
(14:21) oppløste den. Spoersmaal #15 er moot for slettingen.
Tre av sju BEHOLDTE linjer feilet verifiseringen. Formen sier «behold og
verifiser» og forutsatte at de ville passere. Bokfoert, ikke reparert:
- idx-26t: «10 unike URLer» er sann som kilder (10 entries), usann som URL-er
(11; entry 8 baerer to). Avviket gaar samme vei som alle aatte.
- idx-26u: «File size: ~14 KB» er FALSIFISERBAR, ikke bare uverifiserbar — git
ER artefaktet. 17388 -> 17963 -> 17965 -> 18554 byte, og linja staar ordrett i
den ELDSTE versjonen. Aldri sann paa noe punkt repoet kan observere.
- idx-26v: 80/20 uten nevner. 26j-presedensen «lukk i samme edit» ble TESTET mot
forutsetningen, ikke kopiert: 26j hadde en partisjon (12/5), denne fila har
ingen (8/8 Verified, seksjoner 3/3). Aa re-uttrykke ville krevd aa finne paa
en nevner — defektklassen den skulle lukke.
- idx-26w: 7/7 stemmer som aritmetikk, men 2 av 7 URL-er er ikke Learn, saa «fra
MCP-research» overklager. Proveniens, ikke telling.
TYNGSTE FUNN — korpusmaalingen som grunnla ratifiseringen var en underteljing.
«23 linjer i 23 filer, fire dialekter» er engelsk-spraaklig maalt. Dialekt-bred
sveip: 47 kandidater, 2 haandluket falske positive (kilde-tellinger), 1 ekte
under feil etikett => 45 EKTE LINJER I 45 FILER, minst 16 feltnavn-dialekter.
Norske former (MCP-kall, MCP-kall utfoert, Totalt antall MCP-kall), MCP call
summary, listeform og overskriftsform falt alle utenfor.
Dette ugyldiggjoer INGEN av de ni editene — slettegrunnen er uverifiserbarhet og
gjelder uansett populasjon. Det ugyldiggjoer REKKEVIDDEN: spoersmaal #17 gjaldt
«14 ubokfoerte filer»; reell populasjon er 45. Boettene er bevisst IKKE oppgitt —
et maskinforsoek i oekten reproduserte nøyaktig artefaktet haanden maatte rette
sist (leser «3 (search) + 2 (fetch) = 5 total» som «oppgitt 3»).
Alle 11 ankere (7 eksisterende + 4 nye) unikhetssjekket med grep -cF, ikke med
gatens text.includes. Koe: 11 aapne / 20 resolved. Suite: 1047/1047.
Docs: §9.15.
559 lines
26 KiB
Markdown
559 lines
26 KiB
Markdown
# Foundry Agent Service (GA)
|
||
|
||
**Last updated:** 2026-06-18 (currency-verifisert mot Learn)
|
||
**Status:** GA — **ny agent-modell** (Prompt agents GA + Hosted agents preview)
|
||
**Category:** Agent Orchestration & Automation
|
||
**Type:** reference
|
||
**Source:** https://learn.microsoft.com/azure/foundry/agents/overview
|
||
|
||
> **VIKTIG currency-korreksjon (verifisert 2026-06-18 mot learn.microsoft.com/azure/foundry/agents/overview):**
|
||
> Dagens GA-modell for Foundry Agent Service har to agenttyper:
|
||
> - **Prompt agents** (GA) — konfig-definert (instruksjoner + modell + verktøy), fullt administrert runtime.
|
||
> - **Hosted agents** (Public Preview) — din egen kode/container (Agent Framework, LangGraph, OpenAI/Anthropic Agents SDK …) kjørt av Foundry.
|
||
>
|
||
> **Responses API er «single entry point»** for alle agenttyper (modell-inferens + tool-orkestrering).
|
||
> **«Connected Agents» tilhører Foundry (classic) og er DEPRECATED — pensjoneres 31. mars 2027.** Den finnes IKKE i nye Foundry Agent Service. For multi-agent: bruk **Workflows** (`2025-11-15-preview` API) + **A2A-tool** (preview). Migrasjonsguide: learn.microsoft.com/azure/foundry/agents/how-to/migrate.
|
||
> Seksjoner under som beskriver Connected Agents og threads/runs-API gjelder **classic-banen** (fortsatt brukbar til 2027-03-31), ikke ny GA.
|
||
|
||
---
|
||
|
||
## Innhold
|
||
|
||
- [Introduksjon](#introduksjon)
|
||
- [Hva er Foundry Agent Service?](#hva-er-foundry-agent-service)
|
||
- [GA-modell og feature-status (per 2026-06)](#ga-modell-og-feature-status-per-2026-06)
|
||
- [Kjernefunksjoner](#kjernefunksjoner)
|
||
- [Agenttyper og verktøy](#agenttyper-og-verktøy)
|
||
- [Multi-agent mønstre](#multi-agent-mønstre)
|
||
- [Integrasjon med Semantic Kernel](#integrasjon-med-semantic-kernel)
|
||
- [Prising](#prising)
|
||
- [Regional tilgjengelighet](#regional-tilgjengelighet)
|
||
- [Enterprise-sikkerhet og governance](#enterprise-sikkerhet-og-governance)
|
||
- [Offentlig sektor (Norge)](#offentlig-sektor-norge)
|
||
- [For Cosmo: Beslutningsveiledning](#for-cosmo-beslutningsveiledning)
|
||
- [Grenser og kvoter](#grenser-og-kvoter)
|
||
- [Kilder og verifisering](#kilder-og-verifisering)
|
||
|
||
## Introduksjon
|
||
|
||
Foundry Agent Service er Microsofts fullt administrerte runtime for å bygge, deploye og skalere AI-agenter i produksjon. Tjenesten nådde General Availability (GA) 19. mai 2025 og er nå kjernen i Microsoft Foundry-plattformen.
|
||
|
||
I stedet for å bygge én monolittisk agent som kan alt, lar Foundry Agent Service deg komponere spesialiserte agenter som samarbeider i strukturerte, langvarige workflows. Tjenesten håndterer infrastruktur, state management, sikkerhet og observability — slik at utviklere kan fokusere på forretningslogikk.
|
||
|
||
Den kritiske verdien: **produksjonsklar fra dag én** med innebygd enterprise-sikkerhet (Microsoft Entra, RBAC, content filtering), persistent conversation state, server-side tool orchestration og full sporbarhet — uten å måtte bygge og drifte noe av dette selv.
|
||
|
||
## Hva er Foundry Agent Service?
|
||
|
||
Foundry Agent Service er limet som kobler sammen de fire kjernekomponentene i Microsoft Foundry:
|
||
|
||
| Komponent | Rolle |
|
||
|-----------|-------|
|
||
| **AI-modeller** | GPT-4o, o3, Llama, Grok, DeepSeek m.fl. |
|
||
| **Verktøy og rammeverk** | Code Interpreter, File Search, MCP, OpenAPI, Azure Functions |
|
||
| **Governance og compliance** | Microsoft Entra, RBAC, content filters, audit logs |
|
||
| **Orkestrering** | Workflows + A2A-tool (Connected Agents er classic/deprecated) |
|
||
|
||
En agent i Foundry har tre kjernekomponenter:
|
||
1. **Modell (LLM)**: Driver resonnering og språkforståelse
|
||
2. **Instruksjoner**: Definerer agentens mål, atferd og begrensninger
|
||
3. **Verktøy**: Lar agenten hente kunnskap eller utføre handlinger
|
||
|
||
## GA-modell og feature-status (per 2026-06)
|
||
|
||
| Feature | Status |
|
||
|---------|--------|
|
||
| Foundry Agent Service kjerne | **GA** |
|
||
| Prompt agents (konfig-definert, managed runtime) | **GA** |
|
||
| Responses API (single entry point for alle agenttyper) | **GA** |
|
||
| Hosted agents (din egen kode/container) | **Preview** |
|
||
| Workflows (multi-agent orkestrering, `2025-11-15-preview`) | **Preview** |
|
||
| A2A-tool (agent-to-agent) | **Preview** |
|
||
| Agent tracing og debugging | **GA** |
|
||
| Logic Apps-triggerintegrasjon | **GA** |
|
||
| MCP tool (Model Context Protocol) | **GA** |
|
||
| Deep Research tool (o3-deep-research) | **GA** |
|
||
| Connected Agents (multi-agent) | **Classic — DEPRECATED, pensjoneres 2027-03-31 → bruk Workflows + A2A** |
|
||
| Memory Store API | **Preview** |
|
||
|
||
## Kjernefunksjoner
|
||
|
||
### 1. Persistent Conversation Threads
|
||
|
||
Foundry Agent Service støtter persistent samtalestate via **threads**, **messages** og **runs**:
|
||
|
||
| Komponent | Beskrivelse |
|
||
|-----------|-------------|
|
||
| **Thread** | Konversasjonssesjon mellom agent og bruker. Lagrer meldinger og håndterer automatisk truncation for å passe i modellens context window. |
|
||
| **Message** | Individuelle meldinger i en thread — kan inneholde tekst, bilder og filer. Lagres som en strukturert liste. |
|
||
| **Run** | Aktivering av agenten på en thread. Agenten prosesserer meldingshistorikken, kaller modeller og verktøy, og legger til nye meldinger. |
|
||
| **Run Steps** | Detaljert liste over hvert steg agenten tok i en run — nyttig for debugging og audit. |
|
||
|
||
**Nøkkelegenskaper:**
|
||
- Opptil **100 000 meldinger** per thread
|
||
- Automatisk context-truncation
|
||
- Vedvarende på tvers av sesjoner (cross-session continuity)
|
||
- BYO Storage: thread-data kan lagres i **Azure Cosmos DB** du kontrollerer
|
||
- State eksponert via `PersistentAgentsClient` (.NET) og `azure-ai-agents` (Python)
|
||
|
||
```python
|
||
# Opprett thread og kjør agent (Python SDK)
|
||
from azure.ai.projects import AIProjectClient
|
||
from azure.ai.agents.models import MessageRole
|
||
from azure.identity import DefaultAzureCredential
|
||
|
||
project_client = AIProjectClient(
|
||
endpoint=os.environ["PROJECT_ENDPOINT"],
|
||
credential=DefaultAzureCredential(),
|
||
)
|
||
|
||
thread = project_client.agents.threads.create()
|
||
message = project_client.agents.messages.create(
|
||
thread_id=thread.id,
|
||
role=MessageRole.USER,
|
||
content="Analyser årsrapporten og gi en sammendrag",
|
||
)
|
||
run = project_client.agents.runs.create_and_process(
|
||
thread_id=thread.id, agent_id=agent.id
|
||
)
|
||
```
|
||
|
||
### 2. Feilhåndtering og resiliens
|
||
|
||
Foundry Agent Service har innebygd server-side tool orchestration med automatisk retry:
|
||
|
||
- **Automatisk verktøy-retry**: Tool calls re-kjøres ved midlertidige feil uten manuell håndtering
|
||
- **Run status tracking**: States inkluderer `queued`, `in_progress`, `requires_action`, `completed`, `failed`, `cancelled`, `expired`
|
||
- **Exponential backoff**: Anbefalt klientstrategi ved 429 rate limit-feil
|
||
- **Tool depth protection**: Connected agents har maks dybde 2 for å unngå cascading failures
|
||
- **Content filtering**: Innebygde content safety filters på alle outputs
|
||
|
||
### 3. MCP-støtte (Model Context Protocol)
|
||
|
||
Fra juni 2025 støtter Foundry Agent Service Model Context Protocol (MCP) — en åpen standard for verktøyintegrasjon via JSON-RPC:
|
||
|
||
**Bruksmønster:**
|
||
|
||
```csharp
|
||
// Definer MCP-verktøy (C# SDK)
|
||
MCPToolDefinition mcpTool = new(mcpServerLabel, mcpServerUrl);
|
||
mcpTool.AllowedTools.Add("search_azure_rest_api_code");
|
||
|
||
PersistentAgent agent = agentClient.Administration.CreateAgent(
|
||
model: deploymentName,
|
||
name: "mcp-agent",
|
||
instructions: "Bruk tilgjengelige MCP-verktøy for å svare på spørsmål.",
|
||
tools: [mcpTool]);
|
||
```
|
||
|
||
**Autentiseringsmetoder for MCP-servere:**
|
||
- Uautentisert (dev/test)
|
||
- Key-based (x-functions-key header)
|
||
- Microsoft Entra (Project Managed Identity eller OAuth passthrough)
|
||
|
||
**Integrering via Azure Functions:**
|
||
- MCP-server kan hostes på Azure Functions og eksponeres som `https://{app}.azurewebsites.net/runtime/webhooks/mcp`
|
||
- Støtter både synkrone (MCP) og asynkrone (Azure Queue) meldingsmønstre
|
||
|
||
**NB for offentlig sektor:** Foundry Agent Service kobler kun til **offentlig tilgjengelige** MCP-endepunkter. Interne endepunkter krever eksponering via API Gateway eller Azure Application Proxy.
|
||
|
||
### 4. A2A-protokollstøtte
|
||
|
||
Foundry Agent Service støtter Agent-to-Agent (A2A) interoperabilitet:
|
||
|
||
- **A2APreviewTool**: Koble Foundry-agenter til A2A-kompatible remote agenter
|
||
- Agenter fra ulike rammeverk (Semantic Kernel, AutoGen, LangGraph) kan kommunisere via A2A
|
||
- Kombineres med Agent Registry (Microsoft Entra) for enterprise discovery og audit
|
||
|
||
```csharp
|
||
// A2A-verktøy i Foundry-agent
|
||
A2APreviewTool a2aTool = new()
|
||
{
|
||
ProjectConnectionId = connection.Id,
|
||
BaseUri = new Uri("https://remote-agent/a2a")
|
||
};
|
||
PromptAgentDefinition agentDef = new(model: "gpt-4o")
|
||
{
|
||
Instructions = "Du er en hjelpsom assistent.",
|
||
Tools = { a2aTool }
|
||
};
|
||
```
|
||
|
||
Se separat KB `agent-to-agent-communication.md` for fullstendig A2A-dokumentasjon.
|
||
|
||
## Agenttyper og verktøy
|
||
|
||
### Innebygde verktøy
|
||
|
||
| Verktøy | Type | Formål | Tilgjengelighet |
|
||
|---------|------|--------|-----------------|
|
||
| **Code Interpreter** | Action | Kjøre Python-kode i sandkasse, generere filer og visualiseringer | GA |
|
||
| **File Search** | Knowledge | RAG over opplastede filer via Azure AI Search | GA (ikke tilgjengelig i Italy North, Brazil South) |
|
||
| **Grounding with Bing Search** | Knowledge | Webgrunnlag via Bing | GA |
|
||
| **Bing Custom Search** | Knowledge | Webgrunnlag begrenset til definerte domener | GA |
|
||
| **SharePoint** | Knowledge | Tilgang til interne dokumenter via SharePoint | Preview |
|
||
| **Azure Functions** | Action | Kalle serverless-funksjoner (synkron via MCP eller asynkron via Queue) | GA |
|
||
| **Azure Logic Apps** | Action/Trigger | Over 1400 forhåndsbygde koblinger, event-trigget invokasjon | GA |
|
||
| **OpenAPI tool** | Action | Kalle HTTP-endepunkter beskrevet med OpenAPI 3.0-spec | GA |
|
||
| **MCP tool** | Action/Knowledge | Koble til MCP-servere (remote) | GA (juni 2025) |
|
||
| **Deep Research tool** | Knowledge | Flerstegs research via o3-deep-research + Bing | GA (juni 2025) |
|
||
| **Fabric Data Agent** | Knowledge | Chat med strukturert data i Microsoft Fabric | GA |
|
||
| **Morningstar tool** | Knowledge | Finansdata fra Morningstar | GA |
|
||
|
||
### Hosted agents (Preview)
|
||
|
||
Containeriserte agenter som kjøres på Foundry-administrert infrastruktur:
|
||
|
||
| Rammeverk | Python | C# |
|
||
|-----------|--------|----|
|
||
| Microsoft Agent Framework | ✅ | ✅ |
|
||
| LangGraph | ✅ | ❌ |
|
||
| Custom code | ✅ | ✅ |
|
||
|
||
## Multi-agent mønstre
|
||
|
||
### Connected Agents (classic — DEPRECATED, pensjoneres 2027-03-31)
|
||
|
||
> Connected Agents finnes kun i Foundry (classic) (`2025-05-15-preview` API) og er deprecated. I nye Foundry Agent Service erstattes multi-agent av **Workflows** (`2025-11-15-preview`) + **A2A-tool**. Mønsteret under er fortsatt brukbart til 2027-03-31, men nye løsninger bør bruke Workflows/A2A.
|
||
|
||
Primæragenten delegerer til spesialiserte subagenter via naturlig språk — **ingen ekstern orkestrator nødvendig**:
|
||
|
||
**Arkitektureksempel:**
|
||
|
||
```
|
||
Primæragent (Kontraktsgjennomgang)
|
||
├── Subagent 1: clause-summarizer (File Search + Code Interpreter)
|
||
├── Subagent 2: compliance-validator (File Search + OpenAPI)
|
||
└── Subagent 3: risk-scorer (Azure Functions)
|
||
```
|
||
|
||
**Begrensninger:**
|
||
- Maks dybde: **2 nivåer** (primær → subagent, ikke sub-sub-agenter)
|
||
- Connected agents kan ikke bruke lokale funksjoner direkte (bruk OpenAPI tool eller Azure Functions)
|
||
- Sitater fra subagenter kan ikke garanteres å propagere til primærsvar
|
||
|
||
```python
|
||
# Opprett Connected Agent-oppsett (Python)
|
||
connected_agent = ConnectedAgentTool(
|
||
id=stock_agent.id,
|
||
name=stock_agent.name,
|
||
description="Henter børskurs for selskaper"
|
||
)
|
||
main_agent = project_client.agents.create_agent(
|
||
model=os.environ["MODEL_DEPLOYMENT_NAME"],
|
||
name="research-agent",
|
||
instructions="Bruk tilgjengelige verktøy for markedsanalyse.",
|
||
tools=connected_agent.definitions,
|
||
)
|
||
```
|
||
|
||
### Multi-Agent Workflows (Preview)
|
||
|
||
YAML-basert deklarativ konfigurasjon for komplekse, stateful orkestreringer:
|
||
|
||
- Visuell designer i Foundry-portalen
|
||
- Versjonering og change logs
|
||
- Koordinering av multiple agenter med kontekst og state
|
||
|
||
### Orchestration-mønstre
|
||
|
||
| Mønster | Beskrivelse | Brukstilfelle |
|
||
|---------|-------------|---------------|
|
||
| **Supervisor (Connected Agents)** | Primæragent router til spesialiserte subagenter | Modulære workflows, dokumentanalyse |
|
||
| **Peer-to-Peer (A2A)** | Agenter kommuniserer direkte uten sentral koordinering | Tight-coupled systemer, lav latens |
|
||
| **Hierarkisk (Workflows)** | YAML-definert hierarki med explicit state | Komplekse prosesser, compliance-krav |
|
||
| **Event-drevet (Logic Apps)** | Agenter trigges av hendelser (e-post, ticket, fil) | Automatiserte forretningsprosesser |
|
||
|
||
## Integrasjon med Semantic Kernel
|
||
|
||
Semantic Kernel integrerer med Foundry Agent Service via `AzureAIAgent`-klassen:
|
||
|
||
### GA-krav (Semantic Kernel)
|
||
|
||
| Plattform | Minimumsversjon | Pakke |
|
||
|-----------|-----------------|-------|
|
||
| .NET | SK 1.53.1+ | `Azure.AI.Agents.Persistent` 1.0.0 |
|
||
| Python | SK 1.31.0+ | `azure-ai-agents` 1.0.0+ |
|
||
|
||
**NB:** Foundry-prosjekter opprettet etter 19. mai 2025 bruker nytt endpoint-format. Pre-GA-prosjekter brukte connection string.
|
||
|
||
```python
|
||
# Semantic Kernel AzureAIAgent (Python)
|
||
from semantic_kernel.agents import AzureAIAgent
|
||
from azure.identity import DefaultAzureCredential
|
||
|
||
async with (
|
||
DefaultAzureCredential() as creds,
|
||
AzureAIAgent.create_client(credential=creds) as client,
|
||
):
|
||
agent = await AzureAIAgent.create(
|
||
client=client,
|
||
id=agent_id,
|
||
kernel=kernel,
|
||
)
|
||
# Kjør agent
|
||
response = await agent.invoke(messages, thread=thread)
|
||
```
|
||
|
||
```csharp
|
||
// Semantic Kernel AzureAIAgent (.NET)
|
||
PersistentAgentsClient agentsClient = AzureAIAgent.CreateAgentsClient(
|
||
"<endpoint>", new DefaultAzureCredential());
|
||
|
||
PersistentAgent definition = await agentsClient.Administration.CreateAgentAsync(...);
|
||
AzureAIAgent agent = new(definition, agentsClient);
|
||
```
|
||
|
||
**Semantic Kernel Orchestration-støtte:**
|
||
- `GroupChatOrchestration` — group chat pattern mellom agenter
|
||
- `SequentialOrchestration` — kjede agenter i sekvens
|
||
- `HandoffOrchestration` — agent A overlater kontroll til agent B
|
||
- Kombineres med A2A for cross-framework interoperabilitet
|
||
|
||
## Prising
|
||
|
||
Foundry Agent Service følger en **pay-as-you-go**-modell uten fast månedsavgift for selve agenttjenesten:
|
||
|
||
| Kostnadselement | Modell | Estimat |
|
||
|-----------------|--------|---------|
|
||
| **LLM inference** | Per token (input + output) for valgt modell | Varierer per modell (GPT-4o: ca. 37–148 NOK/1M tokens) |
|
||
| **Code Interpreter** | Per sesjon (aktiv i 1 time som default) | Ca. 0,55 USD per sesjon |
|
||
| **File Search / Vector Storage** | Per GB lagret per dag | Ca. 0,10 USD/GB/dag |
|
||
| **Thread/Message storage** | Inkludert i tjenesten | Gratis |
|
||
| **BYO Cosmos DB** | Egne Cosmos DB-priser | Varierer |
|
||
| **Azure Logic Apps-triggers** | Per kjøring | Ca. 0,00017 USD per kjøring |
|
||
| **MCP server hosting (Azure Functions)** | Consumption-plan | Fra gratis nivå |
|
||
|
||
**Faktureringsprinsipper:**
|
||
1. Du betaler for inference av base-modellen per agent (hvis du har 3 agenter med GPT-4o, betaler du for alle 3)
|
||
2. Code Interpreter: Per sesjon, ikke per kall — ett aktivt thread-run i 45 min = én sesjon
|
||
3. Ingen egne rate limits på Agent Service API — throttling skjer på modellnivå
|
||
|
||
**Viktig for budsjett:**
|
||
- Bruk `azd down` eller slett ressurser ved test for å unngå løpende kostnader
|
||
- Sett opp Azure Cost Management-varsler på Foundry-ressurser
|
||
- Container Registry (Basic) og Application Insights påløper ved hosted agents
|
||
|
||
Se: [azure.microsoft.com/pricing/details/ai-foundry](https://azure.microsoft.com/pricing/details/ai-foundry/)
|
||
|
||
## Regional tilgjengelighet
|
||
|
||
Foundry Agent Service er tilgjengelig i følgende Azure-regioner (per februar 2026):
|
||
|
||
| Region | Status |
|
||
|--------|--------|
|
||
| **Norway East** | **Tilgjengelig** |
|
||
| Sweden Central | Tilgjengelig |
|
||
| West Europe | Tilgjengelig |
|
||
| Germany West Central | Tilgjengelig |
|
||
| France Central | Tilgjengelig |
|
||
| Switzerland North | Tilgjengelig |
|
||
| UK South | Tilgjengelig |
|
||
| East US / East US 2 | Tilgjengelig |
|
||
| ... (19 regioner totalt) | Se docs for full liste |
|
||
|
||
**Viktig for norsk offentlig sektor:**
|
||
- **Norway East er støttet** — dette er foretrukket region for virksomheter med krav til datasuverenitet
|
||
- **Sweden Central** er alternativ region innenfor EØS
|
||
- **Ikke alle verktøy er tilgjengelige i alle regioner** — sjekk tool-by-region-matrisen i dokumentasjonen
|
||
- File Search er ikke tilgjengelig i Italy North og Brazil South
|
||
- Code Interpreter er ikke tilgjengelig i alle regioner
|
||
|
||
**Sjekk regional verktøytilgjengelighet:**
|
||
[learn.microsoft.com/azure/foundry/agents/concepts/tool-best-practice#tool-support-by-region-and-model](https://learn.microsoft.com/azure/foundry/agents/concepts/tool-best-practice?view=foundry#tool-support-by-region-and-model)
|
||
|
||
## Enterprise-sikkerhet og governance
|
||
|
||
| Funksjon | Beskrivelse |
|
||
|----------|-------------|
|
||
| **Microsoft Entra ID** | Identitet og RBAC for agenter og ressurser |
|
||
| **Content filtering** | Innebygde content safety filters og prompt injection-beskyttelse (XPIA) |
|
||
| **Network isolation** | Private endpoints og virtual network-integrasjon |
|
||
| **BYO Storage** | Bruk eget Azure Cosmos DB og Azure AI Search — data forlater ikke din kontroll |
|
||
| **Audit logs** | Full sporbarhet av agent-kjøringer via Application Insights |
|
||
| **Tracing** | End-to-end OpenTelemetry-instrumentering |
|
||
| **Encryption** | Data kryptert i transit og at rest |
|
||
|
||
## Offentlig sektor (Norge)
|
||
|
||
### GDPR og personvern
|
||
|
||
| Krav | Foundry Agent Service-implementasjon |
|
||
|------|--------------------------------------|
|
||
| **Datasuverenitet** | Norway East-region, BYO Cosmos DB for thread-lagring |
|
||
| **Behandlingsgrunnlag** | Logg `threadId` + `runId` for å spore behandlinger |
|
||
| **Slettingsrett** | `DELETE /threads/{threadId}` for sletting av konversasjonshistorikk |
|
||
| **Dataportabilitet** | Eksporter meldingshistorikk via `GET /threads/{id}/messages` |
|
||
| **Personvern by design** | Deklarér data-kategorier i agentens instruksjoner og dokumentasjon |
|
||
|
||
### AI Act (EU Forordning 2024)
|
||
|
||
| Krav | Implementasjon |
|
||
|------|----------------|
|
||
| **Transparens** | Agentens navn og formål må kommuniseres til bruker |
|
||
| **Human oversight** | Bruk Logic Apps triggers med godkjenningssteg for høyrisiko-handlinger |
|
||
| **Sporbarhet** | Application Insights + Run Steps for full auditabilitet |
|
||
| **Risikovurdering** | DPIA for agenter som behandler persondata (bruk `/architect:dpia`) |
|
||
|
||
### Forvaltningsloven § 11a (Automatiserte vedtak)
|
||
|
||
Agenter som bidrar til vedtaksprosesser **må**:
|
||
1. Logge alle agent-runs med `runId` og `threadId`
|
||
2. Muliggjøre manuell overstyring via human-in-the-loop i workflow
|
||
3. Vedlegge agent-konversasjonshistorikk som saksgrunnlag
|
||
|
||
## For Cosmo: Beslutningsveiledning
|
||
|
||
### Velg Foundry Agent Service når
|
||
|
||
| Scenario | Begrunnelse |
|
||
|----------|-------------|
|
||
| **Du trenger produksjonsklar agent fra dag én** | Innebygd enterprise-sikkerhet, compliance, skalering |
|
||
| **Persistent conversation state er nødvendig** | Threads håndterer state automatisk |
|
||
| **Multi-agent workflow uten custom orkestrator** | Workflows (`2025-11-15-preview`) + A2A — IKKE classic Connected Agents (deprecated 2027-03-31) |
|
||
| **Regulerte virksomheter (offentlig sektor, helse, finans)** | Content filtering, audit logs, Entra-integrasjon |
|
||
| **Rike verktøy ut-av-boksen** | Code Interpreter, File Search, MCP, Logic Apps (1400+ koblinger) |
|
||
| **Semantic Kernel / Microsoft Agent Framework** | Native integrasjon via `AzureAIAgent` |
|
||
| **Integrasjon med eksisterende Azure-infrastruktur** | Logic Apps triggers, Azure Functions, Cosmos DB, AI Search |
|
||
|
||
### Velg Copilot Studio i stedet når
|
||
|
||
| Scenario | Begrunnelse |
|
||
|----------|-------------|
|
||
| **Innholdsforvaltere og forretningsbrukere bygger agenten** | Lav-kode/no-kode oppsett |
|
||
| **Agent primært skal svare på spørsmål (Q&A)** | Enkel knowledge base-integrasjon |
|
||
| **Microsoft 365-integrasjon er primærkrav** | Teams, Outlook, SharePoint out-of-box |
|
||
| **Power Platform-workflows er kjernen** | Dypere Power Automate-integrasjon |
|
||
| **Citizen developers** | Ingen programmeringskrav |
|
||
|
||
### Velg Microsoft Agent Framework over Foundry Agent Service når
|
||
|
||
| Scenario | Begrunnelse |
|
||
|----------|-------------|
|
||
| **POC / eksperimentell utvikling** | Raskere iterasjon uten production constraints |
|
||
| **Custom orchestration patterns** | Mer fleksibel enn Connected Agents |
|
||
| **LangGraph Python-workflows** | Støttet via hosted agents, men bedre i Agent Framework direkte |
|
||
|
||
### Migrasjon fra preview til GA
|
||
|
||
**Breaking changes ved GA (19. mai 2025):**
|
||
|
||
| Pre-GA | GA |
|
||
|--------|-----|
|
||
| Tilkobling via `connection_string` | Tilkobling via `endpoint` URL |
|
||
| `azure.ai.projects.models` imports | `azure.ai.agents.models` imports |
|
||
| `AIProjectClient.get_agents_client()` | `PersistentAgentsClient(endpoint, credential)` |
|
||
| `AgentsClient.CreateAgentAsync()` | `PersistentAgentsClient.Administration.CreateAgentAsync()` |
|
||
| SK Python < 1.31.0 | SK Python >= 1.31.0 |
|
||
| SK .NET < 1.53.1 | SK .NET >= 1.53.1 |
|
||
| `Azure.AI.Projects` beta | `Azure.AI.Agents.Persistent` 1.0.0 |
|
||
|
||
**Migrasjonsguide (Semantic Kernel):**
|
||
- .NET: https://learn.microsoft.com/semantic-kernel/support/migration/azureagent-foundry-ga-migration-guide
|
||
- Python: Samme URL, velg Python-fanen
|
||
|
||
### Spørsmål å stille
|
||
|
||
1. **Trenger du persistent state?** → Ja: Foundry Agent Service (threads). Nei: Vurder stateless Responses API
|
||
2. **Antall agenter og orkestreringslogikk?** → multi-agent: Workflows (`2025-11-15-preview`) + A2A. (Classic Connected Agents er deprecated — pensjoneres 2027-03-31.)
|
||
3. **Hvem bygger agenten?** → Utviklere: Foundry Agent Service. Forretningsbrukere: Copilot Studio
|
||
4. **Krav til datasuverenitet?** → Norway East + BYO Cosmos DB
|
||
5. **Budget-sensitivitet?** → Dimensjoner Code Interpreter-bruk (per sesjon) og vector storage nøye
|
||
6. **Finnes det eksisterende Logic Apps-workflows?** → Bruk triggers for event-drevet agent-aktivering
|
||
|
||
### Røde flagg
|
||
|
||
- **"Vi vil ikke ha noe på Azure"** → Foundry Agent Service er Azure-eksklusivt
|
||
- **"Vi trenger on-premises"** → Microsoft Agent Framework med private hosting
|
||
- **"Agenten trenger å kalle interne MCP-servere"** → Krever offentlig tilgjengelig endpoint eller API Gateway
|
||
- **"Vi har ikke Microsoft Entra"** → Foundry krever Entra for RBAC og identitet
|
||
- **"Sub-agenter må kunne ha egne sub-agenter"** → Connected Agents har maks dybde 2
|
||
|
||
### Modenhetsnivåer
|
||
|
||
#### Nivå 1: POC (0-3 måneder)
|
||
- Enkel agent med 1-2 verktøy (File Search eller Code Interpreter)
|
||
- REST API quickstart eller Foundry-portalen
|
||
- Standard Microsoft-lagring (ikke BYO Cosmos DB)
|
||
|
||
#### Nivå 2: Pilot (3-12 måneder)
|
||
- Multi-agent: Workflows + A2A (ikke classic Connected Agents — deprecated 2027-03-31)
|
||
- MCP-integrasjon med interne systemer
|
||
- Application Insights for observability
|
||
- BYO Cosmos DB for thread storage
|
||
|
||
#### Nivå 3: Produksjon (12+ måneder)
|
||
- Multi-Agent Workflows med YAML
|
||
- Logic Apps triggers for event-drevet invokasjon
|
||
- Full audit compliance (GDPR, AI Act)
|
||
- VNet-integrasjon og private endpoints
|
||
|
||
## Grenser og kvoter
|
||
|
||
| Grense | Verdi |
|
||
|--------|-------|
|
||
| Maks filer per agent/thread | 10 000 |
|
||
| Maks filstørrelse | 512 MB |
|
||
| Total opplastet filstørrelse | 300 GB |
|
||
| Maks tokens for vector store-tilknytning | 2 000 000 tokens |
|
||
| Maks meldinger per thread | 100 000 |
|
||
| Maks tegn per melding | 1 500 000 |
|
||
| Maks verktøy per agent | 128 |
|
||
| Connected agent maks dybde | 2 |
|
||
|
||
Rate limiting skjer på modell-deployment-nivå, ikke Agent Service-nivå. Se Azure OpenAI kvoter for TPM/RPM-grenser per region og modell.
|
||
|
||
## Kilder og verifisering
|
||
|
||
### Microsoft Learn (Verified)
|
||
|
||
1. **What is Foundry Agent Service?**
|
||
- https://learn.microsoft.com/azure/foundry/agents/overview?view=foundry-classic
|
||
- Confidence: **Verified** (offisiell oversikt, GA-dokumentasjon)
|
||
|
||
2. **What's new in Foundry Agent Service (GA mai 2025)**
|
||
- https://learn.microsoft.com/azure/foundry-classic/agents/whats-new?view=foundry-classic
|
||
- Confidence: **Verified** (changelog, mai–juni 2025)
|
||
|
||
3. **Connected Agents**
|
||
- https://learn.microsoft.com/azure/foundry-classic/agents/how-to/connected-agents?view=foundry-classic
|
||
- Confidence: **Verified** (multi-agent SDK guide og eksempler)
|
||
|
||
4. **Foundry Agent Service limits, quotas, and regional support**
|
||
- https://learn.microsoft.com/azure/foundry/agents/concepts/limits-quotas-regions?view=foundry
|
||
- Confidence: **Verified** (komplett region- og grense-tabell)
|
||
|
||
5. **MCP tool — Foundry Agent Service**
|
||
- https://learn.microsoft.com/azure/foundry-classic/agents/how-to/tools-classic/model-context-protocol-samples?view=foundry-classic
|
||
- Confidence: **Verified** (C# og Python code samples)
|
||
|
||
6. **Threads, runs, and messages**
|
||
- https://learn.microsoft.com/azure/foundry-classic/agents/concepts/threads-runs-messages?view=foundry-classic
|
||
- Confidence: **Verified** (kjernekonsept-dokumentasjon)
|
||
|
||
7. **AzureAIAgent Foundry GA Migration Guide (SK Python)**
|
||
- https://learn.microsoft.com/semantic-kernel/support/migration/azureagent-foundry-ga-migration-guide
|
||
- Confidence: **Verified** (breaking changes og migrasjonsguide)
|
||
|
||
8. **Transparency Note for Azure Agent Service**
|
||
- https://learn.microsoft.com/azure/foundry/responsible-ai/agents/transparency-note?view=foundry-classic
|
||
- Confidence: **Verified** (ansvarlig AI-rammeverk)
|
||
|
||
9. **Foundry Agent Service FAQ (prising)**
|
||
- https://learn.microsoft.com/azure/foundry/agents/faq?view=foundry-classic
|
||
- Confidence: **Verified** (offisiell prisingsforklaring)
|
||
|
||
### Confidence per seksjon
|
||
|
||
| Seksjon | Confidence | Kilde |
|
||
|---------|-----------|-------|
|
||
| GA-milepæler og features | Verified | MS Learn whatsnew |
|
||
| Thread/message/run model | Verified | MS Learn threads-runs-messages |
|
||
| Connected Agents | Verified | MS Learn connected-agents (med kodeeksempler) |
|
||
| MCP-støtte | Verified | MS Learn MCP samples + Functions integration |
|
||
| A2A-protokoll | Verified | MS Learn agent framework |
|
||
| Regional tilgjengelighet | Verified | MS Learn limits-quotas-regions |
|
||
| Semantic Kernel integrasjon | Verified | SK migration guide + SK docs |
|
||
| Prising | Baseline | MS Learn FAQ + Azure pricing page (estimater i NOK) |
|
||
| GDPR/AI Act-mapping | Baseline | LLM kunnskap + NO compliance praksis |
|
||
|
||
**Total sources cited:** 9 primærkilder fra MCP-research
|