docs(architect): weekly KB update — 106 files refreshed (2026-04)
Updates across all 5 skills: ms-ai-advisor, ms-ai-engineering, ms-ai-governance, ms-ai-security, ms-ai-infrastructure. Key changes: - Language Services (Custom Text Classification, Text Analytics, QnA): retirement warning 2029-03-31, migration guides to Foundry/GPT-4o - Agentic Retrieval: 50M free reasoning tokens/month (Public Preview) - Computer Use: Claude Sonnet 4.5 (preview) + OpenAI CUA models - Agent Registry: Risks column (M365 E7), user-shared/org-published types - Declarative agents: schema v1.5 → v1.6, Store validation requirements - MLflow 3: 13 built-in LLM judges, production monitoring, Genie Code - AG-UI HITL: ApprovalRequiredAIFunction (C#) + @tool(approval_mode) (Python) - Entra ID Ignite 2025: Agent ID Admin/Developer RBAC roles, Conditional Access - Security Copilot: 400 SCU/month per 1000 M365 E5 licenses, auto-provisioned - Fast Transcription API: phrase lists, 14-language multi-lingual transcription - Azure Monitor Workbooks: Bicep support, RBAC specifics - Power Platform Copilot: data residency (Norway/Europe → EU DB, Bing → USA) - RAG security-rbac: 4-approach table (GA + 3 preview access control methods) - IaC MLOps: Well-Architected OE:05 principles, Bicep/Terraform patterns - Translator: image file batch translation Preview (JPEG/PNG/BMP/WebP) All 106 files: Last updated 2026-04 | Verified: MCP 2026-04 Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
parent
0eb30fa853
commit
6645e93205
104 changed files with 1986 additions and 520 deletions
|
|
@ -1,6 +1,6 @@
|
|||
# Model Distillation for Performance
|
||||
|
||||
**Last updated:** 2026-02
|
||||
**Last updated:** 2026-04 | Verified: MCP 2026-04
|
||||
**Status:** GA
|
||||
**Category:** Performance & Scalability
|
||||
|
||||
|
|
@ -352,6 +352,80 @@ print(f"ROI: {savings['roi_months']} måneder")
|
|||
| Hyppig endring i oppgave | Unngå distillation | Re-training overhead |
|
||||
| Latens-kritisk (<500ms) | Distiller til nano + PTU | Lavest mulig responstid |
|
||||
|
||||
|
||||
## Modellvalg og routing-strategi (oppdatert 2026-04)
|
||||
|
||||
Microsoft dokumenterer nå **10 seleksjonskriterier** ved valg av AI-modell for distillasjon:
|
||||
|
||||
| Kriterium | Relevans for distillasjon |
|
||||
|-----------|--------------------------|
|
||||
| Task fit | Velg teacher og student basert på oppgavens art |
|
||||
| **Routing strategy** | Definer routing FØR distillasjon — påvirker teacher-modellvalg |
|
||||
| Cost | Studentmodellens kostnad er primær motivasjon |
|
||||
| Context window | Student må håndtere samme kontekst som teacher |
|
||||
| Security | Studentmodell arver ikke teachers sikkerhetstiltak — re-evaluer |
|
||||
| Region | Student deployes i samme region som teacher for dataresidency |
|
||||
| Deployment | PTU vs Standard — student er oftest Standard til start |
|
||||
| Domain | Domene-spesifikk teacher gir bedre student |
|
||||
| Performance | Latens- og throughput-krav til student (se modellmatrise) |
|
||||
| **Tunability** | Studentmodellen MÅ støtte fine-tuning (f.eks. GPT-4o-mini, GPT-4.1-nano) |
|
||||
|
||||
### Modell-routing som distillasjonsstrategi
|
||||
|
||||
```python
|
||||
# Model routing strategy i distillasjonskontekst
|
||||
# Teacher: GPT-4.1 (høyeste kvalitet)
|
||||
# Router: Klassifiser oppgavekompleksitet → velg modell dynamisk
|
||||
# Student: GPT-4.1-mini eller GPT-4.1-nano (basert på klassifisering)
|
||||
|
||||
from openai import AzureOpenAI
|
||||
import json
|
||||
|
||||
client = AzureOpenAI(
|
||||
azure_endpoint="https://my-foundry.openai.azure.com",
|
||||
api_key="...",
|
||||
api_version="2024-10-21"
|
||||
)
|
||||
|
||||
def classify_task_complexity(user_input: str) -> str:
|
||||
"""Klassifiser oppgavekompleksitet for routing."""
|
||||
response = client.chat.completions.create(
|
||||
model="gpt-4.1-nano", # Rask og billig til routing
|
||||
messages=[{
|
||||
"role": "system",
|
||||
"content": "Klassifiser denne brukerforespørselen: 'simple' (fakta, svar, klassifisering) eller 'complex' (resonnering, kreativt, multi-steg). Svar med ett ord."
|
||||
}, {"role": "user", "content": user_input}]
|
||||
)
|
||||
return response.choices[0].message.content.strip().lower()
|
||||
|
||||
def route_to_model(user_input: str) -> str:
|
||||
"""Route til riktig modell basert på kompleksitet."""
|
||||
complexity = classify_task_complexity(user_input)
|
||||
|
||||
if complexity == "simple":
|
||||
model = "ft:gpt-4.1-nano:distilled-v1" # Distillert nano for enkle oppgaver
|
||||
else:
|
||||
model = "gpt-4.1" # Teacher for komplekse oppgaver
|
||||
|
||||
response = client.chat.completions.create(
|
||||
model=model,
|
||||
messages=[{"role": "user", "content": user_input}]
|
||||
)
|
||||
return response.choices[0].message.content
|
||||
|
||||
# Routing strategy gir: lavere kostnad for enkle oppgaver + høy kvalitet for komplekse
|
||||
```
|
||||
|
||||
### Oppdatert modellmatrise for distillasjon
|
||||
|
||||
| Modell | Tunability | TPM (PTU, input) | Anbefalt student-rolle |
|
||||
|--------|-----------|-----------------|----------------------|
|
||||
| GPT-4.1-nano | Ja | 59,400 | Enkle oppgaver, latens-kritisk |
|
||||
| GPT-4o-mini | Ja | 37,000 | Generelle oppgaver, kostnadsoptimal |
|
||||
| GPT-4.1-mini | Ja | 14,900 | Moderate oppgaver, god balanse |
|
||||
| GPT-4.1 | Nei (direkte) | 3,000 | Teacher (ikke student) |
|
||||
| GPT-4o | Nei (direkte) | 2,500 | Teacher (ikke student) |
|
||||
|
||||
## Referanser
|
||||
|
||||
- [Azure OpenAI stored completions & distillation](https://learn.microsoft.com/azure/ai-foundry/openai/how-to/stored-completions) — Distillation workflow
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue