# Akt 2: Zostavte si svoj tím na výrobu podcastu 🎬 ![lab2](../../../../translated_images/sk/lab2.48444b9d549e7863.webp) ## Dej sa vyostruje Alex (váš AI asistent z Aktu 1) je skvelý, ale jeden agent nemôže riadiť celé štúdio podcastu. Potrebujete *tím*: - 🔍 **Výskumný agent**: Prehľadáva internet pre nové informácie - ✍️ **Scenáristický agent**: Premieňa výskum na zaujímavý dialóg - 👤 **Vy (Redaktor)**: Schvaľuje scenáre alebo ich posiela na prepracovanie Vitajte v **orchestrácii AI agentov** — kde sa stanete režisérom svojho vlastného AI tímu. Predstavte si Avengers, ale na produkciu podcastov. ## Čo je to orchestrácia agentov? (Jednoduchá verzia) Predstavte si, že riadite reštauráciu. Neviete robiť všetko sami, však? Máte: - 🍳 Šéfkuchára, ktorý varí - 👨‍🍳 Pomocného kuchára, ktorý pripravuje - 👩‍🍳 Čašníka, ktorý servíruje Orchestrácia agentov je rovnaký koncept, ale s AI. Každý agent má svoju špecializáciu a vy ich koordinujete, aby dosiahli väčšie ciele. Žiadny agent nie je preťažený a práca ide rýchlejšie. ### Analógia kapely 🎸 Vaši AI agenti sú ako kapela: - **Hlavný spevák**: Hlavný agent riešiaci úlohy smerované na zákazníka - **Bubeník**: Drží rytmus, spracováva pozadie - **Basgitarista**: Podporuje všetkých, získava dáta - **Vy (Manažér kapely)**: Koordinujete všetko! Bez koordinácie? Len hluk. S orchestráciou? Krásna hudba. ### Prečo je to dôležité Jeden AI agent, ktorý sa snaží robiť všetko = vyhorenie. Špecializovaní agenti pracujúci spolu = efektivita odomknutá! 🚀 **Pravda na rovinu**: Pamätáte, keď ste sa snažili sami riadiť výskum, písanie aj úpravy podcastu? To je na nič. S orchestráciou každý agent robí to, v čom je najlepší, a vy robíte konečné rozhodnutia. **Príklad zo života**: Zákaznícke chatboty vedia, kedy riešiť fakturáciu, kedy technické problémy, a kedy zavolať človeka. To je orchestrácia! ## Agent vs. Workflow: Aký je rozdiel? Predstavte si to takto: ### 🤖 AI Agent = jazzový hudobník - **Robí rozhodnutia za pochodu** na základe toho, čo počuje - **Improvizuje** riešenia pomocou svojich nástrojov - **Myslí** s mozgom LLM - **Prispôsobuje sa** čomukoľvek, čo mu dáte ### 🎵 Workflow = orchester hrajúci klasickú hudbu - **Nasleduje noty** (preddefinované kroky) - **Predvídateľný** priebeh vykonávania - **Koordinuje** viacerých agentov, ľudí, systémy - **Štruktúrovaný** ako recept **Kúzlo**: Workflows *orchestrujú* agentov! Vy staviate workflow, ktorý agentom hovorí, kedy majú hrať svoju úlohu. Najlepšie z oboch svetov. 🎭 ## Tri spôsoby, ako koordinovať svoj AI tím ### 1. 🎯 Centralizované (Vy ste šéf) Jeden hlavný agent všetko riadi. Predstavte si, že vediete tím — rozhodujete, kto čo robí a kedy. **Výhody**: - ✅ Jasné vedenie (žiadne zmätky) - ✅ Konzistentné rozhodnutia - ✅ Ľahké na ladenie **Použite to na**: - Smerovanie zákazníckeho servisu („Je to fakturácia alebo technická podpora?“) - Schvaľovacie workflow pre obsah („Prejde tento scenár?“) - Produkciu podcastu (presne to, čo staviame!) ### 2. 🤝 Decentralizované (Agenti sa organizujú sami) Agenti komunikujú priamo medzi sebou a riešia veci spoločne. Ako skupinový chat, kde sa všetci koordinujú. **Výhody**: - ✅ Ľahko škálovateľné (kedykoľvek pridáte ďalších agentov) - ✅ Žiadny jediný bod zlyhania - ✅ Agenti spolupracujú prirodzene **Použite to na**: - Výskumné tímy (každý agent skúma iný zdroj) - Brainstormingové sedenia - Distribuované riešenie problémov ### 3. 🔀 Hybridné (Najlepšie z oboch svetov) Vy určujete celkový smer, ale agenti majú slobodu samostatne organizovať konkretnejšie úlohy. Ako CEO, ktorý dôveruje svojmu tímu. **Perfektné pre**: Zložité projekty, ktoré potrebujú kontrolu aj flexibilitu. ## Microsoft Agent Framework: váš nástroj na orchestráciu 🧰 Ideme stavať! Toto použijete: ### Základné súčasti #### 1. 🧱 Executors (Vaši pracovníci) - **Čo sú**: Jednotlivé spracovateľské jednotky — môžu byť agenti alebo vlastná logika - **Čo robia**: Berú vstup, vykonávajú prácu, produkujú výstup - **Myslite na nich ako na**: Stanice na výrobnej linke #### 2. ➡️ Edges (Spojenia) - **Čo sú**: Cesty medzi executormi - **Čo robia**: Kontrolujú tok správ („po A pokračuj na B“) - **Myslite na ne ako na**: Šípky na diagramu toku #### 3. 🗺️ Workflows (Majstrovský plán) - **Čo sú**: Kompletný graf executorov + spojení - **Čo robia**: Definujú celý proces od začiatku po koniec - **Myslite na ne ako na**: Plán výrobnej linky ### Skvelé funkcie, ktoré si obľúbite **🛡️ Typová bezpečnosť**: Správy medzi agentmi sú kontrolované na typ. Žiadne prekvapenia „Ups, zlý dátový typ“. **🔀 Flexibilné smerovanie**: - Podmienky ak-potom („Ak schválené, zverejni; inak prepíš“) - Paralelné spracovanie (viacerí agenti pracujú naraz) - Dynamické cesty (workflow sa prispôsobuje podľa výsledkov) **🔌 Externá integrácia**: - Pripojenie k API - Pridanie kontrolných bodov s človekom v slučke (schváľujete pred zverejnením) - Budovanie tokov žiadosť/odpoveď **💾 Ukladanie checkpointov**: Ukladajte postup! Ak niečo spadne, môžete začať tam, kde sa to prerušilo. **🤝 Koordinácia viacerých agentov**: - Bežte agentov po poradí (A → B → C) - Spustite ich paralelne (A + B + C zároveň) - Odovzdávanie medzi agentmi - Spolupráca na spracovaní ## Najlepšie praktiky (Profesionálne tipy) 🎯 ### 1. Buďte modulárni Každý agent by mal robiť JEDNU vec veľmi dobre. Nerobte „super agenta“ čo robí všetko — pri ladení to budete ľutovať. ### 2. Plánujte na zlyhania Agenti robia chyby. Siete zlyhávajú. Zabudujte spracovanie chýb a záložné plány. Vaša budúca verzia vám poďakuje. ### 3. Sledujte všetko Monitorujte činnosť svojich agentov. Použite DevUI (o tom si povieme!) na zobrazenie workflow v akcii. ### 4. Optimalizujte veľkosť správ Neposielajte medzi agentmi gigantické súbory. Správy držte krátke a výkonné pre rýchlosť. ### 5. Vyberte správny vzor Chcete kontrolu? Choďte centralizovane. Chcete škálovať? Choďte decentralizovane. Neviete sa rozhodnúť? Vyberte hybrid! ## DevUI: váš debugger workflow 🔍 ### Čo je DevUI? DevUI je ako ihrisko na testovanie vašich agentov a workflow. Je to webové rozhranie, kde môžete: - 👀 Sledovať svoj workflow v akcii - 💬 Priamo komunikovať s agentmi - 🔍 Ladenie, keď sa niečo pokazí - 📊 Vidieť záznamy a metriky výkonu > **Dôležité**: DevUI je len pre vývoj! Nepoužívajte ho v produkcii. Predstavte si to ako vaše lokálne testovacie prostredie. ### Čo je na ňom skvelé - **🖥️ Interaktívne webové UI**: Klikajte, píšte, testujte — žiadny terminál nepotrebujete - **📁 Drag-and-Drop pripravené**: Nahrajte súbory, testujte s rôznymi vstupmi - **📂 Automatické objavovanie**: Ukážte mu folder a automaticky nájde všetkých agentov - **📋 Režim bez nastavenia**: Registrujte agentov cez kód, nemusíte mať štruktúru složiek - **🔌 Kompatibilné s OpenAI**: Funguje s OpenAI SDK (kompatibilita je dôležitá!) - **👁️ Zabudované trasovanie**: Presne uvidíte, čo vaši agenti robia ### Ako funguje zadanie vstupu DevUI je múdre na vstupu: - **Testujete agentov?** Dostanete textové polia a tlačidlá na nahrávanie súborov - **Testujete workflow?** UI automaticky vygeneruje vstupné polia podľa toho, čo váš workflow očakáva Je to ako kúzlo, ale vlastne len dobrý kód. ✨ ## Vaše misie: Postavte štúdio na podcast 🎬 ### Misia 1: Vytvorte jedného agenta s DevUI 📂 [01.AgentDevUI](../../../../WorkshopForAgentic/code/02.Workflow/01.AgentDevUI) **Výzva**: Pred zostavením celého tímu otestujte DevUI s jedným agentom: špecialistom na webové vyhľadávanie. **Čo staviate**: Výskumný agent, ktorý dokáže vyhľadávať na internete témy pre podcast. Otestujete ho pomocou webového rozhrania DevUI na `http://localhost:8090`. **Zručnosti, ktoré sa naučíte**: - 🚀 Spúšťanie agentov v DevUI - 🔍 Testovanie odpovedí agenta v reálnom čase - 🛠️ Vytváranie vlastných nástrojov (webové vyhľadávanie) - 📊 Povolenie trasovania na debugovanie problémov - 🖥️ Používanie interaktívneho webového UI **Kód**: - `agent.py`: váš SearchAgent s super schopnosťou vyhľadávania na webe - Používa OllamaChatClient na pripojenie k Qwen - Implementuje funkciu nástroja `web_search()` - Spúšťa sa cez `serve()` — automaticky otvorí DevUI **Podmienka víťazstva**: Spýtajte sa agenta „Čo je trendom v AI?“ a pozrite, ako prehľadáva web! 🎉 ### Misia 2: Postavte workflow s viacerými agentmi 📂 [02.WorkflowDevUI](../../../../WorkshopForAgentic/code/02.Workflow/02.WorkflowDevUI) **Výzva**: Teraz sa začína pravá zábava! Postavte kompletný workflow na produkciu podcastu s: 1. 🔍 **Search Agent** → Vykonáva výskum vašej témy 2. ✍️ **Script Agent** → Píše dialóg medzi dvoma moderátormi (v čínskom jazyku!) 3. 👤 **Review Executor** → Pýta sa VÁS na schválenie alebo zamietnutie 4. 🔄 **Loop Back** → Ak odmietnuté, prepíše podľa vašej spätnej väzby **Zručnosti, ktoré sa naučíte**: - 🧱 Vytváranie špecializovaných agentov na rôzne úlohy - 🔗 Prepojenie agentov cez WorkflowBuilder - 🔀 Implementácia schvaľovacích slučiek (človek v slučke!) - 🚦 Podmienečné smerovanie (schválené vs. zamietnuté) - 🔧 Vytváranie vlastných executorov pre biznis logiku **Workflow**: ``` SearchAgent → ScriptAgent → ReviewExecutor ↑ ↓ (if rejected) ←───────── ``` **Kód**: - `search_agent/agent.py`: váš odborník na výskum - `generate_script_agent/agent.py`: váš scenárista (píše po čínsky!) - `workflow/workflow.py`: tu prebieha orchestrácia - `main.py`: spúšťa všetko v DevUI **Podmienka víťazstva**: Zadajte tému, skontrolujte scenár, raz ho zamietnite na otestovanie slučky, potom schváľte! 🎉 ### Misia 3: Postavte konzolovú aplikáciu 📂 [03.Application](../../../../WorkshopForAgentic/code/02.Workflow/03.Application) **Výzva**: Zoberte svoj workflow z DevUI a premeňte ho na elegantnú terminálovú aplikáciu s farebným výstupom, načítacími spinnermi a ukladaním súborov. Toto je pripravené na produkciu! **Zručnosti, ktoré sa naučíte**: - ⚡ Spúšťanie workflow programovo (bez DevUI) - 📡 Event-driven architektúra so streamovaním - 🎨 Vytváranie pekných terminálových UI (farby, spinnery, progress bary) - 💾 Ukladanie finálnych scenárov do súborov - 🔄 Spracovanie asynchrónnych workflow pomocou Python asyncio **Ako to funguje**: 1. Spýta sa vás na tému podcastu 2. Zobrazuje priebeh v reálnom čase („Search Agent pracuje...“) 3. Ukáže vygenerovaný scenár s farbami 4. Pýta sa na vaše schválenie 5. Ukladá schválený scenár do `podcast.txt` **Kód**: - `podcast_app.py`: vaša hlavná aplikácia s event handlingom - `workflow.py`: znovu používa workflow z Misie 2 - Spracováva eventy: `AgentRunUpdateEvent`, `RequestInfoEvent`, `WorkflowOutputEvent` - Používa ANSI farby pre styling v termináli **Podmienka víťazstva**: Spustite appku, vytvorte scenár podcastu a pozrite, ako sa uloží! Vybudovali ste skutočný nástroj. 🚀 ## Čo ste si osvojili 🏆 Po Akt 2 viete: - ✅ Orchestrovať viacerých AI agentov ako šéf - ✅ Stavať workflow s postupnou i podmienenou logikou - ✅ Pridávať kontrolné body so schválením človekom - ✅ Používať DevUI na testovanie a ladenie workflow - ✅ Vytvárať produkčne pripravené konzolové aplikácie - ✅ Elegantne riešiť chyby v zložitých systémoch - ✅ Vybrať správny vzor orchestrácie pre akýkoľvek projekt ## Keď sa niečo pokazí 🔧 ### „Môj workflow je príliš zložitý!“ **Riešenie**: Rozdeľte ho na menšie sub-workflows. Každý workflow by mal robiť JEDNU vec dobre. Spojte ich dohromady podľa potreby. ### „Nedokážem sledovať, čo sa deje!“ **Riešenie**: Použite ukladanie checkpointov vo workflow. Zapnite trasovanie v DevUI, aby ste videli každý krok. ### „Chyba jedného agenta všetko pokazí!“ **Riešenie**: Pridajte hranice na chyby. Každý agent by mal riešiť svoje vlastné zlyhania a mať záložné správanie. ### „Toto je tak pomalé“ **Riešenie**: Môžu agenti bežať paralelne? Sekvenčné workflow sú jednoduché, ale pomalé. Pozrite sa na možnosti paralelizácie! ## Užitočné zdroje 🔗 - [Workflow dokumentácia](https://learn.microsoft.com/en-us/agent-framework/user-guide/workflows/overview) — Oficiálne návody od Microsoftu - [Orchestračné vzory](https://www.ibm.com/think/topics/ai-agent-orchestration) — IBM pohľad na to - [Agent Framework GitHub](https://github.com/microsoft/agent-framework) — Prezrite si zdrojový kód - [Príklady kódu](https://github.com/microsoft/agent-framework/tree/main/python/samples) — Preberte si odtiaľto vzory --- **Pripravený na finále?** Máš svoj skript. Teraz ho premeňme na skutočné audio! → [Akt 3: Oživte svoj podcast](03.Multi-SpeakerPodcastGenerationWithVibeVoice.md) 🎤 --- **Uviazol si? Zmätený? Nadšený?** Podeľ sa o to v chate workshopu! Všetci sa učíme spoločne. 🚀 --- **Vyhlásenie o vylúčení zodpovednosti**: Tento dokument bol preložený pomocou AI prekladateľskej služby [Co-op Translator](https://github.com/Azure/co-op-translator). Aj keď sa snažíme o presnosť, upozorňujeme, že automatické preklady môžu obsahovať chyby alebo nepresnosti. Originálny dokument v jeho pôvodnom jazyku by mal byť považovaný za autoritatívny zdroj. Pre kritické informácie sa odporúča profesionálny ľudský preklad. Nezodpovedáme za žiadne nedorozumenia alebo nesprávne interpretácie vyplývajúce z použitia tohto prekladu.