Merk
Tilgang til denne siden krever autorisasjon. Du kan prøve å logge på eller endre kataloger.
Tilgang til denne siden krever autorisasjon. Du kan prøve å endre kataloger.
Generativ orkestrering støtter også systemer med flere agenter, der én agent kaller en annen agent. Å dele opp problemer i flere spesialiserte agenter kan forbedre modularitet, skalerbarhet og håndterbarhet.
Inline-agenter
Inline-agenter, også kjent som barneagenter, er små, gjenbrukbare arbeidsflyter innenfor samme agent. De er ofte bare temaer som hovedagenten bruker som underprogrammer. For eksempel kan hovedagenten kalle et «Oversett tekst»-tema som ett steg i en større plan. Inline-agenter deler kontekst med hovedagenten, så det er enkelt å sende data mellom dem.
Beste praksis: Hold inline-agenter fokusert på ett enkelt ansvar og grundig testet.
Koblede agenter
Tilknyttede agenter er separate agenter med egen orkestrering, verktøy og kunnskap. Hovedagenten delegerer deler av en forespørsel til en barneagent. For eksempel en IT-agent som ringer en salgsagent for pris. Sammenkoblede agenter muliggjør modularitet, domeneseparasjon og kan omgå planbegrensninger. De kan ha andre privilegier eller kunnskap, så bruk styrings- og revisjonskontroller.
Å bruke tilkoblede agenter krever imidlertid nøye styring:
Orkestrering: Hovedorkestratoren bør ha klare kriterier for når den skal overleveres til en tilknyttet agent. Denne overleveringen skjer vanligvis når brukerens intensjon samsvarer med den tilknyttede agentens domene. For å støtte denne prosessen, beskriv den tilknyttede agentens formål tydelig i foreldrenes konfigurasjon. Behandle hele den tilknyttede agenten som et «verktøy» med en beskrivelse, fra forelderens perspektiv.
Dataoverlevering: Du må administrere dataoverlevering. Bestem hvilken kontekst fra forelderen som skal sendes til den tilknyttede agenten. Copilot Studio videreformidler samtalehistorikken som standard når en agent ringer en annen, slik at den tilknyttede agenten vet hva som allerede er diskutert. Men du må kanskje også oppfylle spesifikke parametere. For eksempel, hvis hovedagenten allerede kjenner brukerens navn fra tidligere, kan den sende det til den tilknyttede agenten for å unngå å spørre igjen.
Sikkerhet: Den tilkoblede agenten kan ha tilgang til ting som hovedagenten ikke har. Sørg for at det å ringe den tilkoblede agenten ikke utilsiktet omgår begrensninger. For eksempel, hvis foreldreagenten ikke har lov til å slette poster, men den tilkoblede agenten kan, bør ikke foreldreagenten ringe den tilkoblede agenten i situasjoner der sletting kan skje uten riktig godkjenning. Behandle en samtale med tilkoblet agent som en hvilken som helst annen kraftfull handling. Hvis den gjør noe sensitivt, underlegg den nødvendige kontroller eller brukersamtykke.
Revisjon og overvåking: Logg når en tilkoblet agent ble kalt og hva den gjorde. Siden det er en separat agent, har du separate utskrifter for det. Det er viktig for feilsøking å korrelere foreldre- og tilknyttede økter. Vanligvis kobler identifikatorene i telemetrien de to.
Når man skal separere agenter
Ikke lag en egen agent for hver deloppgave. Bruk separate agenter hvis deloppgaven:
- Er komplekst nok til å ha sitt eget verktøysett eller kunnskap (et annet fagområde)
- Krever andre styringsregler eller tilgangskontroller enn hovedagenten
- Du planlegger å gjenbruke den funksjonen i mange forskjellige hovedagenter (så det er som en serviceagent)
Hvis ingen av disse betingelsene er relevante, kan et enkelt emne (inline) være tilstrekkelig i stedet for en fullstendig tilkoblet agent. Separate agenter medfører overhead – en litt lengre kjøretid på grunn av kontekstbytte, og kompleksitet i å vedlikeholde flere boter. Så bruk dem med omhu. En praktisk tilnærming er å starte med én agent og kun dele opp i flere agenter når du tydelig ser et behov for modularitet eller en grense som ikke bør krysses av én agent.