Skip to content

Latest commit

 

History

History
311 lines (239 loc) · 16.2 KB

File metadata and controls

311 lines (239 loc) · 16.2 KB

Foundry Toolkit + Foundry Hosted Agents Workshop

Python Microsoft Agent Framework Hosted Agents Microsoft Foundry Azure OpenAI Azure CLI Azure Developer CLI Docker Foundry Toolkit License

Byg, test og implementer AI-agenter til Microsoft Foundry Agent Service som Hosted Agents - helt fra VS Code ved brug af Microsoft Foundry-udvidelsen og Foundry Toolkit.

Hosted Agents er i øjeblikket i preview. Understøttede regioner er begrænsede - se regional tilgængelighed.

Mappen agent/ inde i hver lab bliver automatisk opsat af Foundry-udvidelsen - du tilpasser så koden, tester lokalt og implementerer.

🌐 Multisprogunderstøttelse

Understøttet via GitHub Action (Automatiseret & Altid Opdateret)

Arabic | Bengali | Bulgarian | Burmese (Myanmar) | Chinese (Simplified) | Chinese (Traditional, Hong Kong) | Chinese (Traditional, Macau) | Chinese (Traditional, Taiwan) | Croatian | Czech | Danish | Dutch | Estonian | Finnish | French | German | Greek | Hebrew | Hindi | Hungarian | Indonesian | Italian | Japanese | Kannada | Khmer | Korean | Lithuanian | Malay | Malayalam | Marathi | Nepali | Nigerian Pidgin | Norwegian | Persian (Farsi) | Polish | Portuguese (Brazil) | Portuguese (Portugal) | Punjabi (Gurmukhi) | Romanian | Russian | Serbian (Cyrillic) | Slovak | Slovenian | Spanish | Swahili | Swedish | Tagalog (Filipino) | Tamil | Telugu | Thai | Turkish | Ukrainian | Urdu | Vietnamese

Foretrækker du at klone lokalt?

Dette repository inkluderer over 50 sprogoversættelser, hvilket markant øger downloadstørrelsen. For at klone uden oversættelser, brug sparse checkout:

Bash / macOS / Linux:

git clone --filter=blob:none --sparse https://github.com/microsoft-foundry/Foundry_Toolkit_for_VSCode_Lab.git
cd Foundry_Toolkit_for_VSCode_Lab
git sparse-checkout set --no-cone '/*' '!translations' '!translated_images'

CMD (Windows):

git clone --filter=blob:none --sparse https://github.com/microsoft-foundry/Foundry_Toolkit_for_VSCode_Lab.git
cd Foundry_Toolkit_for_VSCode_Lab
git sparse-checkout set --no-cone "/*" "!translations" "!translated_images"

Dette giver dig alt, du behøver for at gennemføre kurset med en meget hurtigere download.


Arkitektur

flowchart TB
    subgraph Local["Lokal Udvikling (VS Code)"]
        direction TB
        FE["Microsoft Foundry
        Extension"]
        FoundryToolkit["Foundry Toolkit
        Extension"]
        Scaffold["Scaffolded Agent Code
        (main.py · agent.yaml · Dockerfile)"]
        Inspector["Agent Inspector
        (Local Testing)"]
        FE -- "Create New
        Hosted Agent" --> Scaffold
        Scaffold -- "F5 Fejlretning" --> Inspector
        FoundryToolkit -.- Inspector
    end

    subgraph Cloud["Microsoft Foundry"]
        direction TB
        ACR["Azure Container
        Registry"]
        AgentService["Foundry Agent Service
        (Hosted Agent Runtime)"]
        Model["Azure OpenAI
        (gpt-4.1 / gpt-4.1-mini)"]
        Playground["Foundry Playground
        & VS Code Playground"]
        ACR --> AgentService
        AgentService -- "/responses API" --> Model
        AgentService --> Playground
    end

    Scaffold -- "Deploy
    (Docker build + push)" --> ACR
    Inspector -- "POST /responses
    (localhost:8088)" --> Stillads
    Playground -- "Test anmodninger" --> AgentService

    style Local fill:#f0f4ff,stroke:#4a6cf7,stroke-width:2px
    style Cloud fill:#fff4e6,stroke:#f59e0b,stroke-width:2px
Loading

Flow: Foundry-udvidelsen opsætter agenten → du tilpasser kode og instruktioner → tester lokalt med Agent Inspector → implementerer til Foundry (Docker-billede pushes til ACR) → verificerer i Playground.


Hvad du vil bygge

Lab Beskrivelse Status
Lab 01 - Enkelt Agent Byg "Forklar som om jeg er en leder" Agenten, test den lokalt og implementer til Foundry ✅ Tilgængelig
Lab 02 - Multi-Agent Workflow Byg "CV → Job Fit Evaluator" - 4 agenter samarbejder om at vurdere CV'ets egnethed og generere en læringsplan ✅ Tilgængelig

Mød Executive Agenten

I denne workshop vil du bygge "Forklar som om jeg er en leder" Agenten - en AI-agent der omsætter kompliceret teknisk jargon til rolige, bestyrelsesklare resuméer. For lad os være ærlige, ingen i C-suite vil høre om "tråd-pool udmattelse forårsaget af synkrone kald introduceret i v3.2."

Jeg byggede denne agent efter alt for mange situationer, hvor mit perfekt udfærdigede efter-analyse-indlæg fik svaret: "Så... er hjemmesiden nede eller ej?"

Sådan fungerer den

Du giver den en teknisk opdatering. Den svarer med et ledelsesresumé - tre punkter, uden jargon, uden stack traces, uden eksistentiel frygt. Bare hvad der skete, forretningspåvirkning og næste skridt.

Se den i aktion

Du siger:

"API-latencen steg på grund af tråd-pool udmattelse forårsaget af synkrone kald introduceret i v3.2."

Agenten svarer:

Ledelsesresumé:

  • Hvad skete der: Efter seneste release gik systemet langsommere.
  • Forretningspåvirkning: Nogle brugere oplevede forsinkelser ved brug af servicen.
  • Næste skridt: Ændringen er rullet tilbage, og en rettelse er ved at blive forberedt før ny implementering.

Hvorfor denne agent?

Det er en dødsimpel, enkeltformålsagent - perfekt til at lære hosted agent workflow fra ende til anden uden at blive fastlåst i komplekse værktøjskæder. Og ærligt talt? Ethvert ingeniørteam kunne bruge en af disse.


Workshop struktur

📂 Foundry_Toolkit_for_VSCode_Lab/
├── 📄 README.md                      ← You are here
└── 📂 workshop/
    ├── 📂 lab01-single-agent/        ← Full lab: docs + agent code
    │   ├── README.md                 ← Hands-on lab instructions
    │   ├── 📂 docs/                  ← Step-by-step tutorial modules
    │   │   ├── 00-prerequisites.md
    │   │   ├── 01-setup.md
    │   │   ├── 02-create-hosted-agent.md
    │   │   ├── 03-configure-and-code.md
    │   │   ├── 04-test-locally.md
    │   │   ├── 05-deploy-to-foundry.md
    │   │   ├── 06-verify-in-playground.md
    │   │   ├── 07-summary.md
    │   │   └── 08-troubleshooting.md
    │   └── 📂 agent/                 ← Reference solution (auto-scaffolded by Foundry extension)
    │       ├── agent.yaml
    │       ├── Dockerfile
    │       ├── main.py
    │       └── requirements.txt
    └── 📂 lab02-multi-agent/         ← Resume → Job Fit Evaluator
        ├── README.md                 ← Hands-on lab instructions (end-to-end)
        ├── 📂 docs/                  ← Step-by-step tutorial modules
        │   ├── 00-prerequisites.md
        │   ├── 01-understand-multi-agent.md
        │   ├── 02-scaffold-multi-agent.md
        │   ├── 03-configure-agents.md
        │   ├── 04-orchestration-patterns.md
        │   ├── 05-test-locally.md
        │   ├── 06-deploy-to-foundry.md
        │   ├── 07-verify-in-playground.md
        │   └── 08-troubleshooting.md
        └── 📂 PersonalCareerCopilot/ ← Reference solution (multi-agent workflow)
            ├── agent.yaml
            ├── Dockerfile
            ├── main.py
            └── requirements.txt

Bemærk: Mappen agent/ inde i hver lab er det, som Microsoft Foundry-udvidelsen genererer, når du kører Microsoft Foundry: Create a New Hosted Agent fra Kommandopalletten. Filene tilpasses så med din agents instruktioner, værktøjer og konfiguration. Lab 01 guider dig gennem at genskabe dette fra bunden.


Kom godt i gang

1. Klon repository'et

git clone https://github.com/microsoft-foundry/Foundry_Toolkit_for_VSCode_Lab.git
cd Foundry_Toolkit_for_VSCode_Lab

2. Sæt et Python virtuelt miljø op

python -m venv venv

Aktivér det:

  • Windows (PowerShell):
    .\venv\Scripts\Activate.ps1
  • macOS / Linux:
    source venv/bin/activate

3. Installer afhængigheder

pip install -r workshop/lab01-single-agent/agent/requirements.txt

4. Konfigurer miljøvariabler

Kopiér eksempel .env-filen inde i agentmappen og udfyld dine værdier:

cp workshop/lab01-single-agent/agent/.env.example workshop/lab01-single-agent/agent/.env

Rediger workshop/lab01-single-agent/agent/.env:

AZURE_AI_PROJECT_ENDPOINT=https://<your-account>.services.ai.azure.com/api/projects/<your-project>
AZURE_AI_MODEL_DEPLOYMENT_NAME=<your-model-deployment-name>

5. Følg workshop labs

Hver lab er selvstændig med egne moduler. Start med Lab 01 for at lære det grundlæggende, og fortsæt derefter med Lab 02 for multi-agent workflows.

Lab 01 - Enkelt Agent (fulde instruktioner)

# Modul Link
1 Læs forudsætninger 00-prerequisites.md
2 Installer Foundry Toolkit & Foundry udvidelse 01-setup.md
3 Opret et Foundry-projekt 01-setup.md
4 Opret en hosted agent 02-create-hosted-agent.md
5 Konfigurer instruktioner & miljø 03-configure-and-code.md
6 Test lokalt 04-test-locally.md
7 Implementér til Foundry 05-deploy-to-foundry.md
8 Verificer i playground 06-verify-in-playground.md
9 Fejlfinding 08-troubleshooting.md

Lab 02 - Multi-Agent Workflow (fulde instruktioner)

# Modul Link
1 Forudsætninger (Lab 02) 00-prerequisites.md
2 Forstå multi-agent arkitekturen 01-understand-multi-agent.md
3 Opsæt multi-agent projekt 02-scaffold-multi-agent.md
4 Konfigurer agenter & miljø 03-configure-agents.md
5 Orkestreringsmønstre 04-orchestration-patterns.md
6 Test lokalt (multi-agent) 05-test-locally.md

| 7 | Udrul til Foundry | 06-deploy-to-foundry.md | | 8 | Verificer i playground | 07-verify-in-playground.md | | 9 | Fejlfinding (multi-agent) | 08-troubleshooting.md |


Vedligeholder

Shivam Goyal
Shivam Goyal


Påkrævede tilladelser (hurtig reference)

Scenario Påkrævede roller
Opret nyt Foundry-projekt Azure AI Owner på Foundry-ressource
Udrul til eksisterende projekt (nye ressourcer) Azure AI Owner + Contributor på abonnement
Udrul til fuldt konfigureret projekt Reader på konto + Azure AI User på projekt

Vigtigt: Azure Owner og Contributor roller inkluderer kun administrations tilladelser, ikke udviklings (data-handling) tilladelser. Du har brug for Azure AI User eller Azure AI Owner for at bygge og udrulle agenter.


Referencer


Licens

MIT


Ansvarsfraskrivelse: Dette dokument er blevet oversat ved hjælp af AI-oversættelsestjenesten Co-op Translator. Selvom vi bestræber os på nøjagtighed, skal du være opmærksom på, at automatiserede oversættelser kan indeholde fejl eller unøjagtigheder. Det originale dokument på dets oprindelige sprog bør betragtes som den autoritative kilde. For kritisk information anbefales professionel menneskelig oversættelse. Vi påtager os intet ansvar for misforståelser eller fejltolkninger, der opstår som følge af brugen af denne oversættelse.