Kommentar
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
En barnagent är en lättviktsagent som finns inom ramen för huvudagenten. Med hjälp av underagent kan du logiskt gruppera verktyg, instruktioner och kunskap i tydligt definierade underagenter inom en större agent. De är idealiska för enskilda fall som svarar på en enda avsikt eller slutför en enda uppgift. Den här artikeln förklarar hur du skapar och hanterar en barnagent.
Skapa en barnagent
Gå till sidan Agenter för huvudagenten och välj Lägg till en agent.
Välj Ny underordnad agent.
Ge ett distinkt namn till din nya underagent.
Bestäm när din agent ska användas. Som standard svarar agenter på användare eller utlösare baserat på deras beskrivning.
- Om du vill använda standardbeteendet (Agenten väljer – Baserat på beskrivning) anger du en kort beskrivning av agentens syfte.
- I annat fall expanderar du listan under När kommer detta att användas? och välj önskat beteende. Mer information om de beteenden som stöds finns i Fastställa när din agent ska användas..
Ange tydliga instruktioner som du vill att agenten ska följa när den anropas. Om du vill referera till verktyg, variabler eller lägga till Power Fx-formler i dina instruktioner anger du ett snedstreck (/) och väljer önskat alternativ på menyn som visas.
Viktigt
När du refererar till befintliga verktyg i dina subagentinstruktioner, avgör om verktyget ska vara tillgängligt direkt av din huvudagent eller bara när det uttryckligen anropas inom subagentinstruktionerna. Att begränsa ett verktygs användning till explicita instruktionsreferenser hjälper till att förhindra förvirring bland orkestratorer när liknande verktyg eller agenter finns. Om du till exempel har en "Kontrollera kontosaldo"-agent och ett liknande verktyg för "Hämta kontosaldo" begränsar du verktyget så att det bara anropas av agenten för att undvika överlappning. Om du vill begränsa att ett verktyg endast ska vara tillgängligt när det refereras från en annan agent avmarkerar du tillåt att agenten bestämmer dynamiskt när den här verktygsegenskapen ska användas i avsnittet Ytterligare information på verktygets informationssida.
Lägg till kunskap och verktyg som endast denna barnagent kan använda:
- I avsnittet Kunskap väljer du Lägg till och fortsätter på samma sätt som när du lägger till kunskap i huvudagenten.
- I avsnittet Verktyg väljer du Lägg till och fortsätter på samma sätt som när du lägger till verktyg i huvudagenten.
Om du inte vill att agenten ska vara aktiv ännu inaktiverar du Aktiverad. Du kan aktivera din underagent senare.
Välj Spara.
Hantera indata och utdata
Som standardinställning tilldelas en underordnad agent en uppgift på naturligt språk från huvudagenten att utföra när agenten anropar den. När den slutför sin uppgift returnerar den en naturlig sammanfattning av vad som hände under dess utförande. I vissa fall kanske du vill ange mer explicita indata- och utdatavärden för agenten.
Konfigurera indata och insamling av indata
Från din sida för överordnade agenter, välj din underordnade agent.
Bläddra till avsnittet Inputs .
Om du vill lägga till indata väljer du Lägg till indata. Definiera ett visningsnamn och en beskrivning som hjälper agenten att förstå syftet med indata så att den kan fylla indata med ett relevant värde när agenten anropas.
Välj en Datatyp.
Du kan också välja Gör denna indata obligatorisk för att kräva att indata har ett värde innan agenten kan anropas.
Välj Spara.
Avancerade inmatningskonfigurationer
Välj Avancerat för att expandera sektionen och se de andra inställningarna du kan konfigurera för inmatningen.
Avancerade inställningar inkluderar följande inställningar relaterade till hur agenten fyller i indatavärdet när den anropar barnagenten:
- Bör fråga användaren: Om denna inställning är aktiverad, ber agenten uttryckligen slutanvändaren om ett värde för indata om agenten inte kan hitta värdet från tillgänglig kontext. Detta är användbart när du vill säkerställa att agenten får ett värde för denna input, även om den anropande agenten inte tillhandahåller något eller inte har relevant kontext för att fylla det. När denna inställning är aktiverad genererar barnagenten en prompt som ber användaren om den nödvändiga informationen, vilket kan hjälpa till att förbättra agentens svar.
- Prompt - Anpassa: Välj att anpassa en specifik promptformulering för insamling för mer kontrollerad styrning.
- Hur många ompromptar: Ange hur många gånger agenten ska omprompta användaren för ett värde för denna indata om det angivna värdet inte är giltigt. Detta är användbart för att säkerställa att agenten får ett giltigt värde för denna indata. Du kan välja upp till två påminnelser.
- Försök om-prompt - Anpassa den: Välj att anpassa specifik promptformulering för reprompts när det angivna värdet inte uppfyller de angivna villkoren, för mer deterministisk kontroll.
- Villkor: Specificera villkor som den givna indata måste uppfylla för att anses giltig.
- Villkor som inte uppfylls prompt: Anpassa en specifik promptformulering så att användaren får ett annat värde när det angivna värdet inte uppfyller de angivna villkoren.
- Åtgärd om ingen enhet hittas: Specificera vilken åtgärd agenten ska vidta om agenten inte kan hitta ett värde för denna indata från tillgänglig kontext eller från prompt. Välj om du vill eskalera, sätta variabeln till ett specifikt värde eller lämna värdet tomt.
- Meddelande om ingen entitet hittad: Om du väljer att låta agenten eskalera när inget värde hittas för denna inmatning, anpassa meddelandet som agenten skickar till användaren.
Konfigurera barnagentens utdata och slutbeteende
Under Output kan du konfigurera de utdatavärden som din barnagent returnerar till föräldraagenten när den är klar. Du kan också konfigurera beteendet hos föräldraagenten efter att barnagenten är klar.
Konfigurera föräldraagentens beteende efter att barnagenten är klar
Du kan specificera beteendet för föräldraagenten efter att barnagenten har avslutat körningen under Efter körning i avsnittet Utdata :
- Svara inte: Som standard fortsätter föräldraagenten med nästa steg i sin orkestreringsplan efter att barnagenten är klar och returnerar eventuella utdata till moderagenten. Du kan också välja att föräldraagenten ska skicka ett meddelande till användaren omedelbart efter att barnagenten är klar, innan nästa steg i orkestreringsplanen fortsätter genom att välja ett av de andra alternativen.
- Skriv svaret med generativ AI: Föräldraagenten skickar ett meddelande till användaren med ett generativt AI-svar omedelbart efter att barnagenten är klar, och använder barnagentens utdata som kontext för svaret.
- Skicka specifikt svar: Föräldraagenten skickar ett specifikt meddelande till användaren omedelbart efter att barnagenten är klar, oavsett vad barnagenten skriver. När du väljer detta alternativ kan du anpassa meddelandets innehåll.
- Skicka ett adaptivt kort: Föräldraagenten skickar ett adaptivt kort till användaren omedelbart efter att barnagenten är klar. När du väljer detta alternativ kan du anpassa innehållet i adaptiva kort.
Konfigurera utdata
Gå till detaljer om barnagenten.
Bläddra till avsnittet Outputs .
Om du vill se den aktuella listan över utdata expanderar du avsnittet Avancerat i avsnittet Utdata.
Om du vill lägga till utdata väljer du Lägg till utdata. Definiera ett visningsnamn och en beskrivning som hjälper agenten att förstå syftet med utdata så att den kan fylla i det med ett relevant värde när värden returneras till den anropande agenten.
Välj en Datatyp.
Välj Spara.
I avsnittet Utdata kan du också välja att ett meddelande ska skickas till användaren direkt efter att den underordnade agenten är klar. Om du vill skicka meddelandet ändrar du markeringen Efter körning.
Ta reda på när du ska använda din agent
Som standardinställning svarar underordnade agenter på en användarfråga utifrån deras beskrivning. Du kan också konfigurera underordnade agenter för att interceptera andra händelser och svara på dem under När kommer detta att användas?.
| Händelse | Beskrivning |
|---|---|
| Ett meddelande tas emot | Anropas när en meddelandeaktivitet – den vanligaste typen av aktivitet – tas emot. Tas emot när en användare skriver eller säger något till handläggaren. Som standard svarar agenten på alla meddelanden. Om du vill begränsa agentsvaret till en viss typ av meddelande använder du listan Aktivitetstyp under Ytterligare information. |
| En anpassad klienthändelse inträffar | Anropas när en händelseaktivitet tas emot. Som standard svarar agenten på alla händelser. Om du vill begränsa agentsvaret till en viss händelse använder du egenskapen Händelsenamn under Ytterligare information. |
| En aktivitet inträffar | Anropas när en aktivitet av någon typ tas emot. Om du vill begränsa agentsvaret till en viss typ av aktivitet använder du listan Aktivitetstyp under Ytterligare information. |
| Konversationsändringarna | Anropas när en konversationsuppdatering tas emot. Till exempel skickar Teams en aktivitet av den här typen när en användare går med i en konversation. |
| Har anropats | Anropas när en anropsaktivitet tas emot. Tas oftast emot från Teams-kanalen, till exempel när användaren interagerar med ett meddelande- eller ett söktillägg i Teams. |
| Omdirigeras till | Anropas när agenten anropas explicit inifrån ett ämne. |
| Användaren är inaktiv en stund | Anropas när användaren inte har interagerat med huvudagenten efter en konfigurerad tidsperiod. Välj det önskade tröskelvärdet för inaktivitet i listan Med varaktighet för inaktivitet under Ytterligare information. |
| En plan slutförs | Anropas när huvudagenten har slutfört genomförandet av alla planerade steg för att svara på en användarfråga eller en autonom triggermekanism. |
| Ett AI-genererat svar är på väg att skickas | Anropas när huvudagenten genererar ett svar för en användare efter att ha anropat ett eller flera ämnen, verktyg eller kunskapskällor.
Response.FormattedText Använd systemvariabeln för att se det genererade svaret. Ange variabeln ContinueResponse till falskt om du vill förhindra att orkestreringssvaret skickas (det vill säga om du ändrar meddelandet och skickar ditt eget med hjälp av en meddelandenod). |
Andra detaljer
Beroende på ditt val för När kommer detta att användas?, kan fler egenskaper vara tillgängliga. Följande egenskaper är alltid tillgängliga.
Förutsättning
Ange villkor som måste uppfyllas för att agenten ska anropas. Du kanske till exempel bara vill att agenten ska anropas om den kanal som används av en anställd Microsoft Teams.
Om du behöver mer komplexa villkor kan du växla till Power Fx-formelredigeraren : välj Builder och sedan Formel.
Prioritet
Fler än en agent kan aktiveras för en ensam inkommande aktivitet, till exempel ett meddelande. Som standardinställning bestämmer alternativet du väljer för När ska detta användas? i vilken ordning agenterna aktiveras.
Underordnade agenter och ämnen delar samma uppsättning utlösande faktorer eller händelser som de kan svara på. Om en agent och ett ämne har konfigurerats för att svara på samma händelse, till exempel användarinaktivitet, ska du använda prioriteringsegenskapen för att avgöra vilken som ska gå först.
Utförandeordning:
- En aktivitet inträffar
- Ett meddelande tas emot / En anpassad klienthändelse inträffar / Konversationen ändras / Den anropas
- Agenten väljer
Om flera agenter eller ämnen måste anropas baserat på samma typ av händelse anropas de i skapandeordningen (äldsta först).
Du kan ange egenskapen Prioritet explicit. Ett lägre tal anger en högre prioritet.
Barnagenter och verktyg som används
Copilot Studio-agenter som använder generativ orkestrering har begränsningar i det maximala och rekommenderade antalet verktyg som de kan använda. För mer information, se Begränsningar för verktyg i agenter.
När en barnagent kallas använder den sina egna verktyg och kunskaper för att svara på användaren eller händelsen. Eftersom barnagenter har sin egen orkestrering, har de sina egna begränsningar för antalet verktyg, skilda från gränserna för föräldraagenten.
Den separata gränsen är en av fördelarna med att använda barnagenter: du kan logiskt gruppera verktyg och kunskap i mindre agenter som fokuserar på specifika uppgifter, utan att påverka huvudagentens övergripande gränser. Det finns dock en kompromiss i latensen som läggs till av det extra lagret av orkestrering.