Muistiinpano
Tämän sivun käyttö edellyttää valtuutusta. Voit yrittää kirjautua sisään tai vaihtaa hakemistoa.
Tämän sivun käyttö edellyttää valtuutusta. Voit yrittää vaihtaa hakemistoa.
Generatiivinen orkestrointi tukee myös usean agentin järjestelmiä, joissa yksi agentti kutsuu muita agentteja. Kun jaat ongelmia useisiin erikoistuneisiin agentteihin, teet sovelluksestasi modulaarisen, skaalattavamman ja hallittavamman.
Sisäiset agentit
Inline-agentit, joita kutsutaan myös lapsiagenteiksi, ovat pieniä, uudelleenkäytettäviä työnkulkuja saman agentin sisällä. Ne ovat usein vain aiheita, joita pääagentti käyttää aliohjelmana. Esimerkiksi pääasiamies voi kutsua "Käännä teksti" -aiheen yhtenä askeleena laajemmassa suunnitelmassa. Inline-agentit jakavat kontekstin pääagentin kanssa, joten datan välittäminen niiden välillä on helppoa.
Hyvä käytäntö: Pidä rivinsisäiset agentit keskittyneinä yhteen tehtävään ja testaa ne huolellisesti.
Yhdistetyt agentit
Yhdistetyt agentit ovat erillisiä agentteja, joilla on oma orkestrointinsa, työkalunsa ja tietonsa. Pääasiamies delegoi osan pyynnöstä lapsiagentille. It-agentti esimerkiksi kutsuu myyntiedustajan saadakseen tietoja hinnoittelusta. Yhdistetyt agentit mahdollistavat modulaarisuuden ja toimialueen erottamisen ja voivat ohittaa suunnitelmarajoitukset. Heillä voi olla erilaisia etuoikeuksia tai tietoa, joten käytä hallinto- ja tarkastusvalvontaa.
Kuitenkin yhdistettyjen agenttien käyttö vaatii huolellista hallintaa:
Orkestrointi: Emoorkestroijalla tulisi olla selkeät kriteerit sille, milloin luovuttaa yhteyshenkilölle. Orkestroija tekee siirron, kun käyttäjän tarkoitus vastaa yhdistetyn agentin toimialuetta. Tämän prosessin tueksi kuvaa yhdistetyn agentin tarkoitus selkeästi vanhemman konfiguraatiossa. Käsittele koko yhdistettyä agenttia agenttina "työkaluna" kuvauksella vanhemman näkökulmasta.
Tietojen siirto: Sinun täytyy hallita tietojen siirtoa. Päätä, minkä kontekstin vanhemmalta välität yhdistetylle agentille. Copilot Studio siirtyy oletusarvoisesti keskusteluhistoriaan, kun yksi agentti soittaa toiselle, jotta yhdistetty agentti ymmärtää keskustelun aiemman kontekstin. Mutta saatat joutua läpäisemään myös tiettyjä parametreja. Esimerkiksi, jos pääagentti tietää käyttäjän nimen aiemmin, se saattaa lähettää sen yhdistetylle agentille välttääkseen uudelleenkysymisen.
Turvallisuus: Yhdistetyllä agentilla saattaa olla pääsy asioihin, joita emoagentilla ei ole. Varmista, ettei yhteydenotto liitetylle agentille vahingossa kierrätä rajoituksia. Esimerkiksi, jos vanhempi agentti ei saa poistaa tietueita, mutta yhdistetty agentti voi, vanhempiagentin ei pitäisi kutsua yhdistettyä agenttia tilanteissa, joissa poisto voi tapahtua ilman asianmukaista hyväksyntää. Käsittele yhdistetyn agentin kutsua kuten mitä tahansa muuta voimakasta toimintaa. Jos se tekee jotain arkaluontoista, tee tarvittavat tarkistukset tai käyttäjän suostumuksen.
Auditointi ja valvonta: Loki, milloin yhdistetty agentti kutsuttiin käyttöön ja mitä se teki. Koska kyseessä on erillinen agentti, sinulla on erilliset opintosuoritusotteet. On tärkeää debuggauksessa yhdistää vanhempien ja niihin liittyvät istunnot. Tyypillisesti telemetrian tunnisteet yhdistävät nämä kaksi.
Milloin agentit erotetaan
Älä luo erillistä agenttia jokaiselle alitehtävälle. Käytä erillisiä agentteja, jos alitehtävä:
- On tarpeeksi monimutkainen, että sillä on oma työkalu- tai tietopakettinsa (eri asiantuntemuksen alue)
- Vaatii erilaisia hallintosääntöjä tai käyttöoikeuksien hallintaa kuin pääagentti
- Voidaan käyttää uudelleen monissa eri pääagenteissa (joten se on kuin palveluagentti)
Jos mikään näistä ehdoista ei päde, yksinkertainen sisäinen agentti voi käsitellä työtä hyvin ja olla myös yksinkertaisempi kuin täysi yhdistetty agentti. Erilliset agentit tuovat järjestelmään kuormituskustannuksia. Kontekstin vaihtamisen ja useiden agenttien ylläpidon monimutkaisuuden vuoksi suoritusaika on hieman pidempi. Joten käytä niitä harkiten. Käytännön lähestymistapaa varten aloita yhdestä agentista. Jaa sitten useisiin agentteihin vain, kun näet selvästi tarpeen modulaarisyydelle tai rajalle, jota yksittäisen agentin ei pitäisi ylittää.
Useiden agenttien orkestrointiin liittyvät parhaat käytännöt
Seuraavat parhaat käytännöt koskevat pää- ja alikansioiden ohjeiden luomista usean agentin asetuksissa.
1. Yhden vastauksen periaate
Varmista, että vain yksi agentti puhuu käyttäjälle vuorollaan. Usean agentin asetuksissa pääagentti on ainoa, jonka pitäisi antaa lopullinen vastaus. Aliagenttit ovat tutkijoita, eivät vastaajia.
- Tee: Lisää ylemmän tason ohjeisiin: "Olet ainoa agentti, joka viestii käyttäjän kanssa. Yhdistä kaikkien aliagenttien löydökset yhdeksi vastaukseksi."
- Älä tee näin: Jätä se moniselitteiseen. Ilman eksplisiittisiä ohjeita aliagenssit vastaavat suoraan käyttäjälle aiheuttaen kaksoiskappaleita tai osittaisia sanomia.
2. Aliagenttiohjeiden on ilmoitettava roolinsa
Kerro aina aliagentteille, että ne ovat aliagenteja. Aliagenttisit eivät luonnostaan tiedä kuuluvansa orkestrointiin. Ilman eksplisiittisiä ohjeita ne toimivat erillisinä agentteina ja lähettävät viestejä suoraan käyttäjälle.
- Tee: Lisää jokaisen aliagentin ohjeisiin: "Olet aliagentti. ÄLÄ vastaa suoraan käyttäjälle. Sinun tehtäväsi on etsiä tietoja ja palauttaa havainnot pääagentille. Pääagentti käsittelee kaiken tiedonsiirron käyttäjän kanssa."
- Älä tee niin: Oleta aliagenttien selvittävän orkestrointimallin itse.
3. Käytä ohjeissa selkeää, suoraa kieltä
Käytä aina direktiivin kieltä. Vältä pehmeitä tai kohteliaita muotoiluja. Käyttöympäristö lisää järjestelmätason ohjeita käyttämällä vahvaa kieltä (MUST, DO NOT, NEVER). Pehmeällä kielellä kirjoitetut ohjeet ("yritä", "sinun pitäisi", "olisi hyvä") menettää prioriteetin, kun he ovat ristiriidassa.
- Tee: "ÄLÄ KOSKAAN vastaa suoraan käyttäjälle. Palauta vain havaintosi."
- Tee: "Lopullinen vastaus on oltava täsmälleen yksi lopullinen kysymystä kohden."
- Älä: "Yritä välttää viestien lähettämistä käyttäjälle ja palauta sen sijaan havaintosi."
- Älä: "Ihannetapauksessa haluamme yhden yhdistetyn vastauksen."
4. Käytä yhtä tietolähdettä kutakin alilähdettä kohden (ei päällekkäisyyttä)
Määritä kullekin aliagentille erillisiä, lisäämättömiä tietolähteitä. Jos kaksi aliagenttia etsii samasta tietokannasta, yksi aliagentti löytää vastauksen ensin. Toinen aliagentti joko palauttaa tulosten kaksoiskappaleet tai ohittaa haun kokonaan ilman lisäarvoa.
- Tee: CA-1 hakee tietolähteestä A (esimerkiksi henkilöstöhallintokäytännöt). CA-2 hakee tietolähteestä B (esimerkiksi IT-dokumentaatio).
- Don't: Anna kummallekin aliagentille samat käyttöoikeudet samoihin asiakirjoihin, Dataverse-taulukoihin tai SharePoint sivustoihin.
- Huomautus: Jos sinulla on vain yksi tietolähde, käytä yhtä tietämyksen sisältävää agenttia sen sijaan, että jakaisit sen kahdeksi aliagenksiksi. Usean agentin lisää arvoa vain, kun lähteet ovat aidosti erilaisia.
5. Käytä aliagenttien tarkkoja ja erillisiä kuvauksia
Kirjoita selkeästi erilliset kuvaukset kullekin alikohteelle, joka näkyy pääkohteelle. Pääagentti käyttää aliagentikuvauksia reitityksen päättämiseen. Jos kuvaukset ovat epämääräisiä, identtisiä tai epätarkkoja, vanhempi ei voi tehdä hyviä reitityspäätöksiä.
- Tee: CA-1: "Hakee henkilöstökäytäntöasiakirjoista työntekijöihin liittyviä kysymyksiä". CA-2: "Hakee IT-tietokannasta teknistä tukea koskeviin kysymyksiin."
- Älä tee niin: Anna molemmille agenteille sama kuvaus, kun he palvelevat eri toimialueita.
- Älä käytä: Käytä yleisiä kuvauksia, kuten "Tämä agentti voi auttaa kysymyksissä".
6. Pääohjeiden on määritettävä orkestrointimalli
Kerro pääagentille, miten järjestät. Älä vain sano "käytä lapsiagentteja". Pääkohde tarvitsee eksplisiittiset ohjeet malliin: agenttien kutsuminen, tulosten odottaminen, yhdistäminen ja vastaaminen.
- Tee: "Kun käyttäjä esittää kysymyksen: 1. Kutsu molemmat aliagentit keräämään tietoja. 2. Odota, että molemmat lapsiagentit palauttavat löydöksensä. 3. Yhdistä havainnot yhdeksi, yhtenäiseksi vastaukseksi. 4. Anna käyttäjälle täsmälleen yksi vastaus. Aliagentit eivät saa vastata suoraan käyttäjälle."
- Älä tee näin: "Kun käyttäjä esittää kysymyksen, käynnistä aliagentit ja saa vastaus molemmista lähteistä ja anna yksi yhdistetty vastaus." (Liian epämääräinen. Ohjeessa ei käsketä aliagenteja pysymään vaiti.)
7. Sisällytä "ei suoraa vastausta" -direktiivi tehtävän delegoinniin
Jopa selkeillä aliagenttiohjeilla vahvistuksen lisääminen delegoituun tehtävään toimii varmistuksena.
- Do: Lisää ylemmän tason ohjeisiin: "Kun delegoit aliagenttiin, sisällytä aina tehtävään: "Palauta vain havaintosi. Älä vastaa käyttäjälle.'"
- Älä luota: Luota pelkästään aliagentin omiin ohjeisiin. Tehtävän konteksti antaa aliagentille enemmän signaaleja, jotka vahvistavat mallia.
8. Toimialueristiriitakyselyiden testaaminen
Testaa aina kysymyksillä, jotka eivät vastaa minkään aliagentin toimialuetta. Tämä testaus paljastaa, palauttavatko aliagentit hallitusti viestin "tietoa ei löytynyt" sen sijaan, että ne palauttaisivat mahdollisesti virheellistä tietoa, jumiutuisivat tai lähettäisivät hämmentäviä viestejä.
- Tee: Testaa kyselyillä kaikkien aliagenttitoimialueiden ulkopuolella (kysy esimerkiksi säästä, milloin agentit käsittelevät HR:ää ja IT:tä).
- Toiminta: Varmista, että ylätaso käsittelee kumpikaan agenteista ei löytänyt mitään -tilanteen asiallisesti.
- Älä tee näin: Testaa vain yksinkertaisimmilla palvelupyyntökyselyillä, jotka vastaavat täydellisesti yhden aliagentin toimialuetta.
9. Pyydä mieluummin tietoja, kun odotat jatkotoimia
Käytä kysymys- ja kysymystyylisiä vuorovaikutuksia, kun odotat käyttäjän reagoivan. Käytä inform/send-tyyliä vain lopullisille yksisuuntaisille viesteille. Jos agentti kysyy käyttäjältä jotakin yksisuuntaisen viestin (inform) avulla, käyttäjän vastaus lähetetään takaisin pääsuunnittelijalle täysin uutena kyselynä. Tässä tapauksessa on parempi jatkaa samaa keskustelua aliagentin kanssa.
- Tee: Kirjoita ohjeet, kuten: "Jos tarvitset selvennystä, esitä käyttäjälle kysymys ja odota vastausta."
- Älä: Kirjoita ohjeet, kuten: "Kerro käyttäjälle vaihtoehdoista ja anna heidän valita". "Inform" on yksisuuntainen viesti, kun taas "kysy" on kaksisuuntainen vaihto.
Pikaviittausten tarkistusluettelo
| # | Tarkista |
|---|---|
| 1 | Pääohjeissa nimenomaan todetaan "vain minä vastaan käyttäjälle" |
| 2 | Jokaisessa aliagenttioppaassa lukee "älä vastaa käyttäjälle suoraan" |
| 3 | Ohjeissa käytetään vahvaa direktiivin kieltä (MUST, NEVER, ONLY) |
| 4 | Kullakin aliagentilla on yksilöivä, ei-lomittamaton tietolähde |
| 5 | Aliagenttikuvaukset ovat tarkkoja, erillisiä ja tarkkoja |
| 6 | Ylätason ohjeet määrittävät koko orkestrointimallin (kutsu → odota, → yhdistä → vastaa) |
| 7 | Emo välittää "ei suoraa vastausta" delegoidun tehtävän kontekstissa |
| 8 | Testattu toimialueristiriitakyselyillä |
| 9 | Kysy vs. inform-ero on oikea aliagenttiohjeissa |
Aiheeseen liittyvät tiedot
- Lisää muiden agenttien yleiskatsaus
- Lisää lapsiagentti
- Yhdistä olemassa olevaan Copilot Studio -agenttiin
- Yhdistä Microsoft Foundry -agenttiin
- Yhdistä Microsoft Fabric tietoagenttiin
- Yhdistä Microsoft 365 -agenttien SDK agenttiin
- Yhdistä agentti, joka on saatavilla Agent2Agent (A2A) -protokollan kautta