Utilizarea orchestrarii simultane
Orchestrarea simultană permite mai multor agenți să lucreze la aceeași sarcină în același timp. Fiecare agent se ocupă de sarcină în mod independent, iar apoi rezultatele lor sunt adunate și combinate. Această metodă funcționează deosebit de bine atunci când doriți abordări sau soluții diverse, cum ar fi în timpul brainstorming-ului, luării deciziilor de grup sau votului.
Acest model este util atunci când aveți nevoie de abordări sau idei diferite pentru a rezolva aceeași problemă. În loc ca agenții să lucreze unul după altul, toți lucrează în același timp. Acest lucru accelerează procesul și acoperă problema din mai multe unghiuri.
De obicei, rezultatele de la fiecare agent sunt combinate pentru a crea un răspuns final, dar acest lucru nu este întotdeauna necesar. Fiecare agent poate produce, de asemenea, propriul rezultat separat, cum ar fi apelarea instrumentelor pentru a finaliza sarcini sau actualizarea diferită a diferitelor depozite de date în mod independent.
Agenții lucrează pe cont propriu și nu împărtășesc rezultatele între ei. Cu toate acestea, un agent poate apela alți agenți AI rulând propria orchestrare ca parte a procesului său. Agenții trebuie să știe ce alți agenți sunt disponibili pentru a lucra la sarcini. Acest model vă permite fie să apelați toți agenții înregistrați de fiecare dată, fie să alegeți ce agenți să rulați în funcție de sarcina specifică.
Când se utilizează orchestrarea simultană
Poate doriți să luați în considerare utilizarea modelului de orchestrare simultană în aceste situații:
- Când sarcinile pot rula în același timp, fie prin utilizarea unui grup fix de agenți, fie prin selectarea dinamică a agenților AI în funcție de ceea ce are nevoie sarcina.
- Când sarcina beneficiază de diferite abilități sau abordări specializate (de exemplu, tehnice, de afaceri sau creative) care funcționează independent, dar contribuie la rezolvarea aceleiași probleme.
Acest tip de lucru în echipă este comun în metodele de luare a deciziilor cu mai mulți agenți, cum ar fi:
- Idei de brainstorming
- Combinarea diferitelor metode de raționament (raționament de ansamblu)
- Luarea deciziilor pe baza votului sau a consensului (cvorum)
- Gestionarea sarcinilor în care viteza contează și rularea agenților în paralel reduce timpul de așteptare
Când să evitați orchestrarea simultană
Poate doriți să evitați utilizarea modelului de orchestrare simultană în următoarele scenarii:
- Agenții trebuie să se bazeze pe munca celuilalt sau să depindă de contextul comun într-o anumită ordine.
- Sarcina necesită o succesiune strictă de pași sau rezultate previzibile și repetabile.
- Limitele de resurse, cum ar fi cotele de utilizare a modelului, fac ca rularea agenților în paralel să fie ineficientă sau imposibilă.
- Agenții nu pot coordona în mod fiabil modificările aduse datelor partajate sau sistemelor externe în timp ce rulează în același timp.
- Nu există o modalitate clară de a rezolva conflictele sau contradicțiile dintre rezultatele diferiților agenți.
- Combinarea rezultatelor este prea complicată sau ajunge să scadă calitatea generală.
Implementarea orchestrarii simultane
Implementați modelul de orchestrare simultană cu Microsoft Agent Framework:
Creați-vă clientul de chat
Configurați un client de chat (de exemplu,AzureOpenAIChatClient) cu acreditările corespunzătoare pentru a vă conecta la furnizorul de servicii AI.Definiți-vă agenții
Creați instanțe de agent folosind metoda clientuluicreate_agentde chat. Fiecare agent ar trebui să aibă instrucțiuni specifice și un nume care să-și definească rolul și zona de expertiză.Construiți fluxul de lucru simultan
Utilizați clasaConcurrentBuilderpentru a crea un flux de lucru care poate rula mai mulți agenți în paralel. Adăugați instanțele agentului ca participanți folosind metodaparticipants(), apoi apelațibuild()pentru a crea fluxul de lucru.Rulați fluxul de lucru
Apelați metoda fluxului derunlucru cu sarcina sau intrarea la care doriți să lucreze agenții. Fluxul de lucru rulează toți agenții simultan și returnează evenimente care conțin rezultatele.Procesați rezultatele
Extrageți ieșirile din evenimentele fluxului de lucru utilizândget_outputs(). Rezultatele conțin conversațiile combinate ale tuturor agenților, cu răspunsul fiecărui agent inclus în rezultatul final.Gestionați răspunsurile agregate
Procesați mesajele agregate de la toți agenții. Fiecare mesaj include numele autorului și conținutul, permițându-vă să identificați ce agent a furnizat fiecare răspuns.
Orchestrarea simultană este un model puternic pentru utilizarea simultană a mai multor agenți AI, permițând o rezolvare mai rapidă și mai diversă a problemelor. Prin rularea agenților în paralel, puteți explora diferite abordări simultan, puteți îmbunătăți eficiența și puteți obține informații mai bogate. Cu toate acestea, este important să alegeți acest model atunci când sarcinile pot funcționa cu adevărat independent și să fiți atenți la constrângerile de resurse și provocările de coordonare. Atunci când este implementată cu atenție cu SDK-ul Microsoft Agent Framework, orchestrarea simultană vă poate îmbunătăți considerabil fluxurile de lucru AI și procesele de luare a deciziilor.