Dela via


Personas: Ge din agent en roll

Persona kallas ofta för en "metaprompt" eller "instruktion" och är en uppmaning som används för att påverka hur agenten svarar på stimuli. På så sätt kan du påverka hur dina agenter planerar uppgifter, genererar svar och interagerar med användare. Du kan till exempel använda persona för att uttryckligen be agenten att be om hjälp om den inte vet vad den ska göra, eller att vara mer utförlig när den förklarar något.

I semantisk kernel beskriver vi ofta dessa uppmaningar som "personas" eftersom de liknar persona i användarupplevelsens design. Precis som hur designers och UX-forskare skapar personas för att representera olika typer av användare och de jobb som de har, kan du skapa personas för att representera olika typer av agenter och de uppgifter de ansvarar för.

På så sätt kan du skapa agenter som är mer konsekventa, mer tillförlitliga och mer förutsägbara. Detta är särskilt viktigt när du skapar agenter som ansvarar för kritiska uppgifter eller som interagerar med användare i känsliga situationer.

Semantisk kernelpersona

Resten av den här artikeln innehåller tips och metodtips när du skapar personas i semantisk kernel.

Metodtips för att skapa personas

Att skapa effektiva personas innebär noggrant övervägande av agentens avsedda roll, målgruppen och de specifika uppgifter som agenten kommer att utföra. Här följer några metodtips att tänka på:

Steg beskrivning
1. Definiera tydliga mål Innan du skapar en persona definierar du tydligt de mål som du vill att agenten ska uppnå. Detta inkluderar att förstå de uppgifter som agenten kommer att utföra och vilken typ av interaktioner du förväntar dig att den ska ha med användare.
2. Referensspecifika roller eller offentliga personer En väldefinierad persona bör innehålla specifik information om agentens beteende, ton och stil. Undvik vaga beskrivningar genom att referera till specifika roller eller offentliga personer så att LLM bättre kan efterlikna deras beteende.
3. Ange exempel och scenarier För att hjälpa agenten att bättre förstå sin roll kan du tillhandahålla exempel och scenarier som illustrerar persona i praktiken. Detta kan omfatta exempelkonversationer, användarberättelser eller användningsfall som visar hur agenten ska svara i olika situationer.
4. Inkludera reservinstruktioner Ge instruktioner om vad agenten ska göra när den stöter på en okänd situation eller inte kan ge något svar. Detta kan vara att be om hjälp, tillhandahålla alternativa lösningar eller helt enkelt erkänna att det inte har något svar.
5. Iterera och förfina Personas är inte statiska. Testa och förfina dina personas kontinuerligt baserat på användarfeedback och prestandadata. Detta hjälper till att förbättra agentens effektivitet över tid.

Använda systemmeddelanden för att ange personas

De vanligaste systemmeddelandena som används i semantisk kernel är användar-, assistent- och verktygsmeddelanden. Dessa meddelanden används för att simulera en konversation mellan användaren och agenten.

En tidigare meddelandetyp, systemmeddelandet, kan användas för att ge agenten ytterligare kontext eller instruktioner som inte visas för användaren. Detta kan användas för att ange persona för agenten.

I Semantic Kernel är det lika enkelt att tillhandahålla ett första systemmeddelande för agenten som att lägga till det i ChatHistory konstruktorn. Till exempel:

ChatHistory chatHistory = new("""
   You are a technical support specialist for a software company.
   Your primary task is to assist users with technical issues,
   such as installation problems, software bugs, and feature
   inquiries. Use technical jargon appropriately, but ensure that
   explanations are easy to understand. If a problem is too complex,
   suggest advanced troubleshooting steps or escalate to a higher-level
   support team using the escalate tool.
   """)
chat_history = ChatHistory("""
   You are a technical support specialist for a software company.
   Your primary task is to assist users with technical issues,
   such as installation problems, software bugs, and feature
   inquiries. Use technical jargon appropriately, but ensure that
   explanations are easy to understand. If a problem is too complex,
   suggest advanced troubleshooting steps or escalate to a higher-level
   support team using the escalate tool.
   """)

Om du behöver större kontroll över persona (du vill till exempel ändra instruktionerna när konversationen fortskrider) kan du använda AddSystemMessage metoden för att lägga till ytterligare systemmeddelanden i chatthistoriken.

chatHistory.AddSystemMessage("Remember to ask for help if you're unsure how to proceed.")
chat_history.add_system_message("Remember to ask for help if you're unsure how to proceed.")

Genom att påminna LLM om dess personas på det här sättet kan du se till att din agent är konsekvent, tillförlitlig och förutsägbar i sina interaktioner med användare.