Egy gyakorlati workshop, amely során saját gépeden futtathatsz nyelvi modelleket, és intelligens alkalmazásokat építhetsz a Foundry Local és a Microsoft Agent Framework segítségével.
Mi az a Foundry Local? A Foundry Local egy könnyű futtatókörnyezet, amely lehetővé teszi nyelvi modellek letöltését, kezelését és kiszolgálását teljes mértékben a saját hardvereden. Egy OpenAI-kompatibilis API-t kínál, így bármely eszköz vagy SDK, amely OpenAI-nyelven kommunikál, csatlakozhat – nem szükséges felhőfiók.
arab | bengáli | bolgár | burmai (Myanmar) | kinai (egyszerűsített) | kinai (hagyományos, Hong Kong) | kinai (hagyományos, Macau) | kinai (hagyományos, Taiwan) | horvát | cseh | dán | holland | észt | finn | francia | német | görög | héber | hindi | magyar | indonéz | olasz | japán | kannada | khmer | koreai | litván | maláj | malayalam | marathi | nepáli | nigériai pidgin | norvég | perzsa (fárszi) | lengyel | portugál (Brazília) | portugál (Portugália) | pandzsábi (Gurmukhi) | román | orosz | szerb (cirill) | szlovák | szlovén | spanyol | szwahili | svéd | tagalog (filippínó) | tamil | telugu | thai | török | ukrán | urdú | vietnami
Inkább helyben klónoznád?
Ez a tároló 50+ nyelvi fordítást tartalmaz, ami jelentősen növeli a letöltési méretet. Fordítások nélkül klónozáshoz használd a spars checkout-ot:
Bash / macOS / Linux:
git clone --filter=blob:none --sparse https://github.com/microsoft-foundry/Foundry-Local-Lab.git cd Foundry-Local-Lab git sparse-checkout set --no-cone '/*' '!translations' '!translated_images'CMD (Windows):
git clone --filter=blob:none --sparse https://github.com/microsoft-foundry/Foundry-Local-Lab.git cd Foundry-Local-Lab git sparse-checkout set --no-cone "/*" "!translations" "!translated_images"Így minden szükséges fájlt megkapsz a tanfolyam elvégzéséhez, sokkal gyorsabb letöltéssel.
A workshop végére képes leszel:
| # | Célkitűzés |
|---|---|
| 1 | Telepíteni a Foundry Local-t és kezelésre használni a CLI-t |
| 2 | Mesteri szintű Foundry Local SDK API használat programozott modellkezeléshez |
| 3 | Csatlakozni a helyi inferencia szerverhez Python, JavaScript és C# SDK-kon keresztül |
| 4 | Összeállítani egy Retrieval-Augmented Generation (RAG) csövet, ami saját adatokra alapozza a válaszokat |
| 5 | AI ügynököket létrehozni tartós instrukciókkal és személyiségekkel |
| 6 | Többügynökös munkafolyamatokat koordinálni visszacsatolási ciklusokkal |
| 7 | Megismerni egy termelési végpontú alkalmazást – a Zava Creative Writer-t |
| 8 | Értékelési keretrendszereket építeni aranykészletekkel és LLM-értékelő pontozással |
| 9 | Hangot átírni Whisper-rel – helyi beszédszöveg átalakítás a Foundry Local SDK-val |
| 10 | Egyedi vagy Hugging Face modelleket fordítani és futtatni ONNX Runtime GenAI-vel és Foundry Local-lal |
| 11 | Engedélyezni a helyi modelleknek külső függvények hívását az eszközhívás minta segítségével |
| 12 | Böngészőalapú UI-t építeni a Zava Creative Writerhez valós idejű adatfolyammal |
| Követelmény | Részletek |
|---|---|
| Hardver | Minimum 8 GB RAM (ajánlott 16 GB); AVX2-kompatibilis CPU vagy támogatott GPU |
| Operációs rendszer | Windows 10/11 (x64/ARM), Windows Server 2025 vagy macOS 13+ |
| Foundry Local CLI | Telepíthető winget install Microsoft.FoundryLocal (Windows) vagy brew tap microsoft/foundrylocal && brew install foundrylocal (macOS) parancsokkal. Részletek a kezdő útmutatóban. |
| Nyelvi futtatókörnyezet | Python 3.9+ és/vagy .NET 9.0+ és/vagy Node.js 18+ |
| Git | A tároló klónozásához |
# 1. Klónozd a tárat
git clone https://github.com/microsoft-foundry/foundry-local-lab.git
cd foundry-local-lab
# 2. Ellenőrizd, hogy a Foundry Local telepítve van-e
foundry model list # Elérhető modellek listázása
foundry model run phi-3.5-mini # Interaktív beszélgetés indítása
# 3. Válaszd ki a nyelvi sávodat (a teljes beállításhoz lásd a 2. részt)| Nyelv | Gyors kezdés |
|---|---|
| Python | cd python && pip install -r requirements.txt && python foundry-local.py |
| C# | cd csharp && dotnet run |
| JavaScript | cd javascript && npm install && node foundry-local.mjs |
Labor útmutató: labs/part1-getting-started.md
- Mi az a Foundry Local és hogyan működik
- CLI telepítése Windows és macOS rendszereken
- Modellek felfedezése – listázás, letöltés, futtatás
- Modell aliasok és dinamikus portok megértése
Labor útmutató: labs/part2-foundry-local-sdk.md
- Miért használjuk az SDK-t a CLI helyett alkalmazásfejlesztéshez
- Teljes SDK API referencia Python, JavaScript és C# nyelveken
- Szolgáltatáskezelés, katalógus böngészés, modell életciklus (letöltés, betöltés, kirakás)
- Gyorsindítási minták: Python konstruktor bootstrap, JavaScript
init(), C#CreateAsync() FoundryModelInfometaadatok, aliasok és hardverilletékes modellválasztás
Labor útmutató: labs/part3-sdk-and-apis.md
- Csatlakozás a Foundry Localhoz Python, JavaScript és C# segítségével
- A Foundry Local SDK használata a szolgáltatás programozott kezeléséhez
- Streaming chat befejezések az OpenAI-kompatibilis API-n keresztül
- Módszerreferencia minden nyelvhez
Kódpéldák:
| Nyelv | Fájl | Leírás |
|---|---|---|
| Python | python/foundry-local.py |
Alap streaming chat |
| C# | csharp/BasicChat.cs |
Streaming chat .NET-tel |
| JavaScript | javascript/foundry-local.mjs |
Streaming chat Node.js-sel |
Labor útmutató: labs/part4-rag-fundamentals.md
- Mi az a RAG és miért fontos
- Memóriabeli tudásbázis építése
- Kulcsszó-átfedés alapú lekérdezés pontozással
- Alapozott rendszerüzenetek alkotása
- Teljes RAG cső futtatása az eszközön
Kódpéldák:
| Nyelv | Fájl |
|---|---|
| Python | python/foundry-local-rag.py |
| C# | csharp/RagPipeline.cs |
| JavaScript | javascript/foundry-local-rag.mjs |
Labor útmutató: labs/part5-single-agents.md
- Mi az az AI ügynök (szemben egy nyers LLM hívással)
- A
ChatAgentminta és a Microsoft Agent Framework - Rendszerutasítások, személyiségek és többszörös fordulós beszélgetések
- Strukturált kimenet (JSON) az ügynököktől
Kódpéldák:
| Nyelv | Fájl | Leírás |
|---|---|---|
| Python | python/foundry-local-with-agf.py |
Egyedi ügynök Agent Framework-kel |
| C# | csharp/SingleAgent.cs |
Egyedi ügynök (ChatAgent minta) |
| JavaScript | javascript/foundry-local-with-agent.mjs |
Egyedi ügynök (ChatAgent minta) |
Labor útmutató: labs/part6-multi-agent-workflows.md
- Többügynökös csövek: Kutató → Író → Szerkesztő
- Szekvenciális koordináció és visszacsatolási hurkok
- Megosztott konfiguráció és strukturált átadások
- Saját többügynökös munkafolyamat megtervezése
Kódpéldák:
| Nyelv | Fájl | Leírás |
|---|---|---|
| Python | python/foundry-local-multi-agent.py |
Háromügynökös cső |
| C# | csharp/MultiAgent.cs |
Háromügynökös cső |
| JavaScript | javascript/foundry-local-multi-agent.mjs |
Háromügynökös cső |
Labor útmutató: labs/part7-zava-creative-writer.md
- Termelési stílusú többügynökös alkalmazás 4 specializált ügynökkel
- Szekvenciális cső értékelő vezérelt visszacsatolási hurkokkal
- Streaming kimenet, termékkatalógus keresés, strukturált JSON átadások
- Teljes implementáció Pythonban (FastAPI), JavaScriptben (Node.js CLI) és C#-ban (.NET konzol)
Kódpéldák:
| Nyelv | Könyvtár | Leírás |
|---|---|---|
| Python | zava-creative-writer-local/src/api/ |
FastAPI webszolgáltatás orchestratorral |
| JavaScript | zava-creative-writer-local/src/javascript/ |
Node.js CLI alkalmazás |
| C# | zava-creative-writer-local/src/csharp/ |
.NET 9 konzol alkalmazás |
Labor útmutató: labs/part8-evaluation-led-development.md
- Rendszeres értékelési keretrendszer építése AI ügynökök számára aranykészletekkel
- Szabályalapú ellenőrzések (hossz, kulcsszó lefedettség, tiltott kifejezések) + LLM-értékelő pontozás
- Azonnali összehasonlítás promptváltozatokról összesített pontokkal
- Kiterjeszti a 7. rész Zava Editor ügynök mintáját offline tesztcsomaggá
- Python, JavaScript és C# nyelvű útvonalak
Kódpéldák:
| Nyelv | Fájl | Leírás |
|---|---|---|
| Python | python/foundry-local-eval.py |
Értékelési keretrendszer |
| C# | csharp/AgentEvaluation.cs |
Értékelési keretrendszer |
| JavaScript | javascript/foundry-local-eval.mjs |
Értékelési keretrendszer |
Labor útmutató: labs/part9-whisper-voice-transcription.md
- Beszéd szöveggé alakítása OpenAI Whisper lokális futtatásával
- Adatvédelmet előtérbe helyező hangfeldolgozás – a hanganyag soha nem hagyja el az eszközödet
- Python, JavaScript és C# példák a
client.audio.transcriptions.create()(Python/JS) ésAudioClient.TranscribeAudioAsync()(C#) használatával - Zava témájú minta hangfájlok a gyakorláshoz
Kódminták:
| Nyelv | Fájl | Leírás |
|---|---|---|
| Python | python/foundry-local-whisper.py |
Whisper hangfelismerés |
| C# | csharp/WhisperTranscription.cs |
Whisper hangfelismerés |
| JavaScript | javascript/foundry-local-whisper.mjs |
Whisper hangfelismerés |
Megjegyzés: Ez a labor a Foundry Local SDK-t használja, amely programozottan tölti le és tölti be a Whisper modellt, majd a hanganyagot a helyi, OpenAI-kompatibilis végpontra küldi át szövegfelismerés céljából. A Whisper modell (
whisper) megtalálható a Foundry Local katalógusban, és teljes egészében az eszközön fut – nincs szükség felhő API kulcsokra vagy hálózati kapcsolatra.
Labor útmutató: labs/part10-custom-models.md
- Hugging Face modellek optimalizált ONNX formátumba fordítása az ONNX Runtime GenAI modellkészítő eszközével
- Hardverspecifikus fordítás (CPU, NVIDIA GPU, DirectML, WebGPU) és kvantálás (int4, fp16, bf16)
- Chat-sablon konfigurációs fájlok létrehozása a Foundry Local számára
- Fordított modellek hozzáadása a Foundry Local gyorsítótárához
- Egyéni modellek futtatása CLI-n, REST API-n és az OpenAI SDK-n keresztül
- Referencia példa: Qwen/Qwen3-0.6B teljes körű fordítása
Labor útmutató: labs/part11-tool-calling.md
- Helyi modellek engedélyezése külső funkciók (eszköz/funkcióhívás) meghívására
- Eszközsémák definiálása az OpenAI funkcióhívás formátumban
- Többfordulós eszközhívó párbeszéd kezelése
- Eszközhívások helyi végrehajtása és eredmények visszaküldése a modellnek
- Megfelelő modell kiválasztása eszközhívási forgatókönyvekhez (Qwen 2.5, Phi-4-mini)
- SDK natív
ChatClienthasználata eszközhíváshoz (JavaScript)
Kódminták:
| Nyelv | Fájl | Leírás |
|---|---|---|
| Python | python/foundry-local-tool-calling.py |
Eszközhívás időjárás/népesség eszközökkel |
| C# | csharp/ToolCalling.cs |
Eszközhívás .NET-tel |
| JavaScript | javascript/foundry-local-tool-calling.mjs |
Eszközhívás ChatClienttel |
Labor útmutató: labs/part12-zava-ui.md
- Böngészőalapú felület hozzáadása a Zava Kreatív Íróhoz
- Megosztott UI kiszolgálása Pythonból (FastAPI), JavaScriptből (Node.js HTTP) és C#-ból (ASP.NET Core)
- Streaming NDJSON feldolgozása böngészőben Fetch API és ReadableStream segítségével
- Élő ügynök státuszjelzők és valós idejű cikk szöveg streamelés
Kód (megosztott UI):
| Fájl | Leírás |
|---|---|
zava-creative-writer-local/ui/index.html |
Oldal elrendezés |
zava-creative-writer-local/ui/style.css |
Stíluslap |
zava-creative-writer-local/ui/app.js |
Stream olvasó és DOM frissítő logika |
Backend bővítések:
| Nyelv | Fájl | Leírás |
|---|---|---|
| Python | zava-creative-writer-local/src/api/main.py |
Frissítve a statikus UI kiszolgálására |
| JavaScript | zava-creative-writer-local/src/javascript/server.mjs |
Új HTTP szerver az orchestrator köré építve |
| C# | zava-creative-writer-local/src/csharp-web/Program.cs |
Új ASP.NET Core minimális API projekt |
Labor útmutató: labs/part13-workshop-complete.md
- Összefoglaló mindenről, amit a 12 rész során építettél
- További ötletek alkalmazásaid bővítéséhez
- Linkek forrásokra és dokumentációra
├── python/ # Python examples
│ ├── foundry-local.py # Basic chat
│ ├── foundry-local-with-agf.py # Single agent (AGF)
│ ├── foundry-local-rag.py # RAG pipeline
│ ├── foundry-local-multi-agent.py # Multi-agent workflow
│ ├── foundry-local-eval.py # Agent evaluation framework
│ ├── foundry-local-whisper.py # Whisper voice transcription
│ ├── foundry-local-tool-calling.py # Tool/function calling
│ └── requirements.txt
├── csharp/ # C# examples
│ ├── Program.cs # CLI router (chat|rag|agent|multi|eval|whisper|toolcall)
│ ├── BasicChat.cs # Basic chat
│ ├── RagPipeline.cs # RAG pipeline
│ ├── SingleAgent.cs # Single agent (ChatAgent pattern)
│ ├── MultiAgent.cs # Multi-agent workflow
│ ├── AgentEvaluation.cs # Agent evaluation framework
│ ├── WhisperTranscription.cs # Whisper voice transcription
│ ├── ToolCalling.cs # Tool/function calling
│ └── csharp.csproj
├── javascript/ # JavaScript examples
│ ├── foundry-local.mjs # Basic chat
│ ├── foundry-local-with-agent.mjs # Single agent
│ ├── foundry-local-rag.mjs # RAG pipeline
│ ├── foundry-local-multi-agent.mjs # Multi-agent workflow
│ ├── foundry-local-eval.mjs # Agent evaluation framework
│ ├── foundry-local-whisper.mjs # Whisper voice transcription
│ ├── foundry-local-tool-calling.mjs # Tool/function calling
│ └── package.json
├── zava-creative-writer-local/ # Production multi-agent app
│ ├── ui/ # Shared browser UI (Part 12)
│ │ ├── index.html # Page layout
│ │ ├── style.css # Styling
│ │ └── app.js # Stream reader and DOM updates
│ └── src/
│ ├── api/ # Python FastAPI service
│ │ ├── main.py # FastAPI server (serves UI)
│ │ ├── orchestrator.py # Pipeline coordinator
│ │ ├── foundry_config.py # Shared Foundry Local config
│ │ ├── requirements.txt
│ │ └── agents/ # Researcher, Product, Writer, Editor
│ ├── javascript/ # Node.js CLI and web server
│ │ ├── main.mjs # CLI entry point
│ │ ├── server.mjs # HTTP server with UI (Part 12)
│ │ ├── foundryConfig.mjs
│ │ └── package.json
│ ├── csharp/ # .NET 9 console app
│ │ ├── Program.cs
│ │ └── ZavaCreativeWriter.csproj
│ └── csharp-web/ # .NET 9 web API (Part 12)
│ ├── Program.cs
│ └── ZavaCreativeWriterWeb.csproj
├── labs/ # Step-by-step lab guides
│ ├── part1-getting-started.md
│ ├── part2-foundry-local-sdk.md
│ ├── part3-sdk-and-apis.md
│ ├── part4-rag-fundamentals.md
│ ├── part5-single-agents.md
│ ├── part6-multi-agent-workflows.md
│ ├── part7-zava-creative-writer.md
│ ├── part8-evaluation-led-development.md
│ ├── part9-whisper-voice-transcription.md
│ ├── part10-custom-models.md
│ ├── part11-tool-calling.md
│ ├── part12-zava-ui.md
│ └── part13-workshop-complete.md
├── samples/
│ └── audio/ # Zava-themed WAV files for Part 9
│ ├── generate_samples.py # TTS script (pyttsx3) to create WAVs
│ └── README.md # Sample descriptions
├── AGENTS.md # Coding agent instructions
├── package.json # Root devDependency (mermaid-cli)
├── LICENSE # MIT licence
└── README.md
| Forrás | Link |
|---|---|
| Foundry Local weboldal | foundrylocal.ai |
| Modell katalógus | foundrylocal.ai/models |
| Foundry Local GitHub | github.com/microsoft/foundry-local |
| Kezdő útmutató | Microsoft Learn - Foundry Local |
| Foundry Local SDK Referencia | Microsoft Learn - SDK Reference |
| Microsoft Agent Framework | Microsoft Learn - Agent Framework |
| OpenAI Whisper | github.com/openai/whisper |
| ONNX Runtime GenAI | github.com/microsoft/onnxruntime-genai |
Ez a műhelyanyag oktatási célokat szolgál.
Jó munkát kívánunk! 🚀
Jogi nyilatkozat:
Ez a dokumentum az Co-op Translator AI fordítószolgáltatás segítségével készült. Bár a pontosságra törekszünk, kérjük, vegye figyelembe, hogy az automatikus fordítások hibákat vagy pontatlanságokat tartalmazhatnak. Az eredeti dokumentum az anyanyelvén tekintendő hiteles forrásnak. Kritikus információk esetén professzionális, emberi fordítás ajánlott. Nem vállalunk felelősséget a fordítás használatából eredő félreértésekért vagy téves értelmezésekért.