# Acte 2 : Assemblez votre Ă©quipe de production de podcast 🎬 ![lab2](../../../../translated_images/fr/lab2.48444b9d549e7863.webp) ## L'intrigue se corse Alex (votre assistant IA de l’Acte 1) est gĂ©nial, mais un seul agent ne peut pas gĂ©rer tout un studio de podcast. Vous avez besoin d’une *Ă©quipe* : - 🔍 **Agent de Recherche** : Parcourt Internet pour trouver des informations fraĂźches - ✍ **Agent de Script** : Transforme la recherche en dialogues captivants - đŸ‘€ **Vous (l’Éditeur)** : Approuvez les scripts ou les renvoyez pour correction Bienvenue dans **l’Orchestration d’Agents IA** — oĂč vous devenez le rĂ©alisateur de votre propre Ă©quipe d’IA. Pensez aux Avengers, mais pour la production de podcasts. ## Qu’est-ce que l’Orchestration d’Agents ? (La version simple) Imaginez que vous gĂ©rez un restaurant. Vous ne faites pas tout vous-mĂȘme, n’est-ce pas ? Vous avez : - 🍳 Un chef qui cuisine - 👹‍🍳 Un sous-chef qui prĂ©pare - đŸ‘©â€đŸł Un serveur qui livre L’orchestration d’agents, c’est la mĂȘme idĂ©e, mais avec l’IA. Chaque agent a une spĂ©cialitĂ©, et vous les coordonnez pour atteindre des objectifs plus larges. Aucun agent unique n’est surchargĂ©, et le travail est fait plus rapidement. ### L’Analogie du Groupe 🎾 Vos agents IA sont comme un groupe de musique : - **Chanteur principal** : L’agent principal qui gĂšre les tĂąches en contact avec le client - **Batteur** : Maintient le rythme, gĂšre le traitement en arriĂšre-plan - **Bassiste** : Soutient tout le monde, rĂ©cupĂšre des donnĂ©es - **Vous (le Manager du groupe)** : Coordonne tout ! Sans coordination ? Juste du bruit. Avec orchestration ? Une belle musique. ### Pourquoi c’est important Un agent IA qui essaie de tout faire = Ă©puisement. Des agents spĂ©cialisĂ©s qui travaillent ensemble = efficacitĂ© dĂ©cuplĂ©e ! 🚀 **HonnĂȘtement** : Vous vous souvenez d’avoir essayĂ© de faire la recherche, l’écriture ET l’édition de votre podcast tout seul ? Oui, c’est galĂšre. Avec l’orchestration, chaque agent fait ce qu’il sait faire de mieux. Vous prenez juste les dĂ©cisions finales. **Exemple rĂ©el** : Les bots de support client qui savent quand gĂ©rer la facturation, les problĂšmes techniques ou quand passer la main Ă  un humain. VoilĂ  l’orchestration ! ## Agent vs. Workflow : Quelle diffĂ©rence ? Pensez-y comme ceci : ### đŸ€– Agent IA = Musicien de jazz - **Prend des dĂ©cisions spontanĂ©es** selon ce qu’il entend - **Improvise** des solutions avec ses outils - **RĂ©flĂ©chit** avec un cerveau LLM - **S’adapte** Ă  ce que vous lui lancez ### đŸŽ” Workflow = Orchestre jouant de la musique classique - **Suit une partition** (Ă©tapes prĂ©dĂ©finies) - **ExĂ©cution prĂ©visible** - **Coordonne** plusieurs agents, humains, systĂšmes - **StructurĂ©** comme une recette **La magie** : Les workflows *orchestrent* les agents ! Vous construisez un workflow qui dit Ă  chaque agent quand jouer sa partition. Le meilleur des deux mondes. 🎭 ## Trois façons de coordonner votre Ă©quipe IA ### 1. 🎯 CentralisĂ© (Vous ĂȘtes le patron) Un agent principal donne toutes les instructions. Imaginez que vous gĂ©rez une Ă©quipe — vous dĂ©cidez qui fait quoi et quand. **Avantages** : - ✅ Direction claire (pas de confusion) - ✅ DĂ©cisions cohĂ©rentes - ✅ Facile Ă  dĂ©boguer **À utiliser pour** : - Routage du service client (« Est-ce la facturation ou le support technique ? ») - Processus d’approbation de contenu (« Ce script est-il validĂ© ? ») - Production de podcast (exactement ce qu’on construit !) ### 2. đŸ€ DĂ©centralisĂ© (Agents auto-organisĂ©s) Les agents communiquent directement entre eux et dĂ©finissent les choses en groupe. Comme une discussion de groupe oĂč tout le monde s’organise. **Avantages** : - ✅ Facilement Ă©volutif (ajoutez des agents Ă  tout moment) - ✅ Pas de point de dĂ©faillance unique - ✅ Collaboration naturelle entre agents **À utiliser pour** : - Équipes de recherche (chaque agent explore des sources diffĂ©rentes) - Sessions de brainstorming - RĂ©solution de problĂšmes distribuĂ©e ### 3. 🔀 Hybride (Le meilleur des deux mondes) Vous donnez la direction globale, mais les agents s’organisent eux-mĂȘmes sur les tĂąches. Comme un PDG qui fait confiance Ă  son Ă©quipe. **IdĂ©al pour** : Projets complexes qui demandent Ă  la fois contrĂŽle et flexibilitĂ©. ## Microsoft Agent Framework : votre boĂźte Ă  outils d’orchestration 🧰 Il est temps de construire ! Voici ce que vous utiliserez : ### Les Briques de Construction #### 1. đŸ§± ExĂ©cuteurs (vos travailleurs) - **Ce que c’est** : unitĂ©s de traitement individuelles — agents ou logique personnalisĂ©e - **Ce qu’ils font** : reçoivent une entrĂ©e, travaillent, produisent une sortie - **Imaginez-les comme** : des postes sur une chaĂźne de montage #### 2. âžĄïž ArĂȘtes (les connexions) - **Ce que c’est** : chemins entre les exĂ©cuteurs - **Ce qu’ils font** : contrĂŽlent le flux des messages (« AprĂšs A, va Ă  B ») - **Imaginez-les comme** : des flĂšches sur un organigramme #### 3. đŸ—ș Workflows (le plan maĂźtre) - **Ce que c’est** : le graphe complet des exĂ©cuteurs + arĂȘtes - **Ce qu’ils font** : dĂ©finissent le processus entier du dĂ©but Ă  la fin - **Imaginez-les comme** : le plan de votre pipeline de production ### FonctionnalitĂ©s GĂ©niales que Vous Aimerez **đŸ›Ąïž SĂ©curitĂ© des types** : Les messages entre agents sont vĂ©rifiĂ©s au niveau du type. Plus de surprises "Oups, mauvais type de donnĂ©e". **🔀 Routage flexible** : - Conditions if-then (« Si approuvĂ©, publier ; sinon, réécrire ») - Traitement parallĂšle (plusieurs agents travaillent en mĂȘme temps) - Chemins dynamiques (le workflow s’adapte selon les rĂ©sultats) **🔌 IntĂ©gration externe** : - Connexion aux API - Ajout de points de contrĂŽle humain (vous validez avant publication) - CrĂ©ation de flux demande/rĂ©ponse **đŸ’Ÿ Point de sauvegarde** : Sauvegardez la progression ! En cas de plantage, reprenez lĂ  oĂč vous vous ĂȘtes arrĂȘtĂ©. **đŸ€ Coordination multi-agent** : - ExĂ©cution sĂ©quentielle (A → B → C) - ExĂ©cution parallĂšle (A + B + C en mĂȘme temps) - Passage entre agents - Traitement collaboratif ## Bonnes pratiques (astuces de pro) 🎯 ### 1. Restez modulaire Chaque agent doit faire UNE seule chose trĂšs bien. Ne crĂ©ez pas un « super agent » qui fait tout — vous le regretterez au dĂ©bogage. ### 2. PrĂ©voyez les pannes Les agents font des erreurs. Les rĂ©seaux tombent. IntĂ©grez gestion des erreurs et plans de secours. Votre futur vous remerciera. ### 3. Surveillez tout Suivez ce que font vos agents. Utilisez DevUI (nous allons en parler !) pour voir les workflows en action. ### 4. Optimisez la taille des messages Ne faites pas passer de fichiers gĂ©ants entre agents. Gardez les messages lĂ©gers et rapides. ### 5. Choisissez le bon modĂšle Besoin de contrĂŽle ? Optez pour le centralisĂ©. Besoin d’échelle ? PrivilĂ©giez le dĂ©centralisĂ©. Impossible de choisir ? Allez hybride ! ## DevUI : votre dĂ©bogueur de workflows 🔍 ### Qu’est-ce que DevUI ? DevUI est comme un terrain de jeu pour tester vos agents et workflows. C’est une interface web oĂč vous pouvez : - 👀 Voir votre workflow en action - 💬 Dialoguer directement avec les agents - 🔍 DĂ©boguer en cas de problĂšme - 📊 Visualiser les traces et les mesures de performance > **Important** : DevUI est destinĂ© uniquement au dĂ©veloppement ! Ne l’utilisez pas en production. ConsidĂ©rez-le comme votre environnement de test local. ### Pourquoi c’est gĂ©nial - **đŸ–„ïž Interface Web interactive** : Cliquez, tapez, testez — pas besoin de ligne de commande - **📁 Glisser-dĂ©poser prĂȘt** : Importez des fichiers, testez avec diffĂ©rentes entrĂ©es - **📂 DĂ©tection automatique** : Pointez-le sur un dossier, il trouve automatiquement tous vos agents - **📋 Mode sans configuration** : Enregistrez les agents en code, aucune structure de dossier nĂ©cessaire - **🔌 Compatible OpenAI** : Fonctionne avec le SDK OpenAI (compatibilitĂ© assurĂ©e !) - **đŸ‘ïž Traçage intĂ©grĂ©** : Voyez exactement ce que font vos agents ### Fonctionnement de la saisie DevUI est malin avec les entrĂ©es : - **Test des agents ?** Vous avez des zones de texte et des boutons pour importer des fichiers - **Test des workflows ?** L’UI gĂ©nĂšre automatiquement les champs d’entrĂ©e attendus par le workflow C’est de la magie, mais c’est juste du bon code. ✹ ## Vos missions : Construisez un studio de podcast 🎬 ### Mission 1 : CrĂ©ez un agent unique avec DevUI 📂 [01.AgentDevUI](../../../../WorkshopForAgentic/code/02.Workflow/01.AgentDevUI) **Le dĂ©fi** : Avant de bĂątir une Ă©quipe complĂšte, testons DevUI avec un agent : un spĂ©cialiste de la recherche web. **Ce que vous construisez** : Un agent de recherche capable d’explorer Internet pour des sujets de podcast. Vous le testerez via l’interface web DevUI Ă  `http://localhost:8090`. **CompĂ©tences Ă  acquĂ©rir** : - 🚀 Lancer des agents dans DevUI - 🔍 Tester les rĂ©ponses des agents en temps rĂ©el - đŸ› ïž CrĂ©er des outils personnalisĂ©s (recherche web) - 📊 Activer le traçage pour dĂ©boguer - đŸ–„ïž Utiliser l’interface web interactive **Le code** : - `agent.py` : votre SearchAgent avec super-pouvoirs de recherche web - Utilise OllamaChatClient pour se connecter Ă  Qwen - ImplĂ©mente la fonction outil `web_search()` - DĂ©marre avec `serve()` — ouvre automatiquement DevUI **Condition de victoire** : Demandez Ă  votre agent « Quelles sont les tendances en IA ? » et regardez-le chercher sur le web ! 🎉 ### Mission 2 : Construisez un workflow multi-agent 📂 [02.WorkflowDevUI](../../../../WorkshopForAgentic/code/02.Workflow/02.WorkflowDevUI) **Le dĂ©fi** : Maintenant, la vraie partie amusante commence ! Construisez un workflow complet de production de podcast avec : 1. 🔍 **Agent de Recherche** → Recherche votre sujet 2. ✍ **Agent de Script** → Écrit un dialogue entre deux animateurs (en chinois !) 3. đŸ‘€ **ExĂ©cuteur de Revue** → Vous demande d'approuver ou de rejeter 4. 🔄 **Boucle** → En cas de rejet, réécrit selon vos retours **CompĂ©tences Ă  acquĂ©rir** : - đŸ§± CrĂ©er des agents spĂ©cialisĂ©s pour diffĂ©rents rĂŽles - 🔗 Connecter les agents avec WorkflowBuilder - 🔀 ImplĂ©menter des boucles d’approbation (humain dans la boucle !) - 🚩 Routage conditionnel (approuvĂ© vs rejetĂ©) - 🔧 Construire des exĂ©cuteurs personnalisĂ©s pour la logique mĂ©tier **Le workflow** : ``` SearchAgent → ScriptAgent → ReviewExecutor ↑ ↓ (if rejected) ←───────── ``` **Le code** : - `search_agent/agent.py` : votre spĂ©cialiste recherche - `generate_script_agent/agent.py` : votre scĂ©nariste (Ă©crit en chinois !) - `workflow/workflow.py` : la magie de l’orchestration ici - `main.py` : lance tout dans DevUI **Condition de victoire** : Donnez un sujet, rĂ©visez le script, rejetez-le une fois pour tester la boucle, puis approuvez ! 🎉 ### Mission 3 : Construisez une application console 📂 [03.Application](../../../../WorkshopForAgentic/code/02.Workflow/03.Application) **Le dĂ©fi** : Prenez votre workflow de DevUI et transformez-le en une app terminale Ă©lĂ©gante avec sortie colorĂ©e, spinners de chargement et sauvegarde de fichiers. C’est du prĂȘt pour la production ! **CompĂ©tences Ă  acquĂ©rir** : - ⚡ ExĂ©cuter les workflows programmatiquement (sans DevUI) - 📡 Architecture Ă©vĂ©nementielle avec streaming - 🎹 CrĂ©er des interfaces terminales magnifiques (couleurs, spinners, barres de progression) - đŸ’Ÿ Sauvegarder les scripts finaux dans des fichiers - 🔄 GĂ©rer les workflows asynchrones avec asyncio de Python **Ce que ça fait** : 1. Vous demande un sujet de podcast 2. Montre la progression en temps rĂ©el (« Agent de Recherche en cours... ») 3. Affiche le script gĂ©nĂ©rĂ© avec couleurs 4. Demande votre approbation 5. Sauvegarde le script validĂ© dans `podcast.txt` **Le code** : - `podcast_app.py` : votre app principale avec gestion d’évĂ©nements - `workflow.py` : rĂ©utilise le workflow de la Mission 2 - GĂšre les Ă©vĂ©nements : `AgentRunUpdateEvent`, `RequestInfoEvent`, `WorkflowOutputEvent` - Utilise les couleurs ANSI pour le style terminal **Condition de victoire** : Lancez l’app, crĂ©ez un script de podcast et voyez-le sauvegardĂ© ! Vous avez créé un vrai outil. 🚀 ## Ce que vous avez maĂźtrisĂ© 🏆 AprĂšs l’Acte 2, vous pouvez : - ✅ Orchestrer plusieurs agents IA comme un pro - ✅ Construire des workflows avec logique sĂ©quentielle ET conditionnelle - ✅ Ajouter des points de contrĂŽle d’approbation humaine - ✅ Utiliser DevUI pour tester et dĂ©boguer les workflows - ✅ CrĂ©er des applications console prĂȘtes pour la production - ✅ GĂ©rer les erreurs avec Ă©lĂ©gance dans des systĂšmes complexes - ✅ Choisir le bon modĂšle d’orchestration pour chaque projet ## Quand ça casse 🔧 ### « Mon workflow est trop compliquĂ© ! » **La solution** : Divisez-le en sous-workflows plus petits. Chaque workflow doit faire UNE chose bien. EnchaĂźnez-les si besoin. ### « Je ne parviens pas Ă  suivre ce qui se passe ! » **La solution** : Utilisez le checkpointing des workflows pour sauvegarder l’état. Activez le traçage dans DevUI pour voir chaque Ă©tape. ### « L’erreur d’un agent plante tout ! » **La solution** : Ajoutez des limites d’erreur. Chaque agent doit gĂ©rer ses propres Ă©checs et prĂ©voir des comportements de secours. ### « C’est trop lent » **La solution** : Des agents peuvent-ils tourner en parallĂšle ? Les workflows sĂ©quentiels sont simples mais lents. Cherchez des opportunitĂ©s de parallĂ©lisation ! ## Ressources utiles 🔗 - [Documentation Workflow](https://learn.microsoft.com/en-us/agent-framework/user-guide/workflows/overview) — Guides officiels Microsoft - [ModĂšles d’orchestration](https://www.ibm.com/think/topics/ai-agent-orchestration) — L’approche IBM - [Agent Framework GitHub](https://github.com/microsoft/agent-framework) — Parcourez le code source - [Exemples de code](https://github.com/microsoft/agent-framework/tree/main/python/samples) — Inspirez-vous des modĂšles ici --- **PrĂȘt pour la finale ?** Vous avez votre script. Passons maintenant Ă  la transformation en audio rĂ©el ! → [Acte 3 : Donnez vie Ă  votre podcast](03.Multi-SpeakerPodcastGenerationWithVibeVoice.md) đŸŽ€ --- **BloquĂ© ? Confus ? ExcitĂ© ?** Partagez dans le chat de l’atelier ! Nous apprenons tous ensemble. 🚀 --- **Avertissement** : Ce document a Ă©tĂ© traduit Ă  l’aide du service de traduction automatique [Co-op Translator](https://github.com/Azure/co-op-translator). Bien que nous nous efforçons d’assurer l’exactitude, veuillez noter que les traductions automatiques peuvent contenir des erreurs ou des inexactitudes. Le document original dans sa langue natale doit ĂȘtre considĂ©rĂ© comme la source faisant autoritĂ©. Pour les informations critiques, une traduction professionnelle humaine est recommandĂ©e. Nous ne sommes pas responsables des malentendus ou des mauvaises interprĂ©tations rĂ©sultant de l’utilisation de cette traduction.