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.
SDK för Microsoft 365-agenter är ett utvecklingsramverk för att skapa konversationsagenter. Konversationsagenter är programvara som kan ta emot meddelanden från användare, bearbeta dem och svara. Tänk på det som VVS-lagret mellan en användare som skickar ett meddelande (oavsett om det är i Teams, en webbplats, Slack eller någon annanstans) och vilken logik du har skapat för att svara på det meddelandet.
SDK hanterar mekaniken för att ta emot och skicka meddelanden över olika ytor, så att utvecklare kan fokusera på vad agenten faktiskt gör snarare än på kommunikationsprotokoll på låg nivå.
Språk som stöds
SDK för agenter stöder:
- C# med .NET 8.0 SDK
- JavaScript med Node.js version 18 och senare
- Python med version 3.9 till 3.11
Tre problem som Agent SDK löser
Din agent måste arbeta på mer än ett ställe. Alla användare kommunicerar inte via samma kanal. Vissa använder Microsoft Teams, vissa använder Microsoft 365 Copilot, vissa använder en företagswebbplats och vissa använder icke-Microsoft verktyg som Slack eller Facebook Messenger. Utan ett ramverk måste en utvecklare skriva separat integreringskod för var och en av dessa ytor, var och en med sitt eget meddelandeformat, autentiseringsschema och anslutningsprotokoll.
SDK:et tillhandahåller ett kanalabstraktionslager. Du skriver agentlogiken en gång och SDK översätter inkommande och utgående meddelanden till och från det format som varje kanal förväntar sig. Att lägga till en ny kanal kräver inte att agentens kärnbeteende skrivs om.
Du vill inte vara låst i en AI-tjänst. Valet av vilken AI-tjänst som driver en agent, oavsett om det är Azure AI Foundry, OpenAI, Semantic Kernel eller något helt annat, ändras ofta när landskapet utvecklas och när olika användningsfall uppstår. Ett agentramverk som bakas i en specifik AI-provider tvingar utvecklare att skriva om stora delar av sin kod när det valet ändras.
SDK:n är AI-agnostisk avsiktligt. Den tillhandahåller ramverk för att ta emot meddelanden, hantera status och routa händelser, men gör inga antaganden om vad som genererar svaret. Utvecklare ansluter vilka AI-tjänster eller orkestreringsbibliotek de föredrar. SDK:t kommer inte i vägen för det valet.
Det är svårt att hantera konversationstillståndet. Konversationer är inte tillståndslösa. En användare kan ställa en uppföljningsfråga, referera till något som sades för två varv sedan eller överge en konversation och återuppta den senare. Att hantera den kontexten, inklusive spårning av vad som hände, var den lagras och hur den flödar mellan meddelanden, är omständligt och felbenäget att bygga från grunden.
SDK:et tillhandahåller inbyggd tillstånds- och lagringshantering. Det introducerar begreppet tur (en enda arbetsenhet i en konversation) och spårar tillstånd över turer utan att kräva att utvecklare kopplar upp sitt eget persistentlager. Det innebär mindre exempelkod och färre buggar i konversationsflödeslogik.
Hur den passar ihop
I grunden gör SDK:et tre saker när ett meddelande kommer:
Tar emot meddelandet från vilken kanal som än skickade det (Teams, webbchatt, Slack och så vidare) och normaliserar det till ett gemensamt format som kallas för .
ActivityDirigerar aktiviteten till lämplig hanterare i din agentkod. Till exempel utlöser en meddelandeaktivitet en hanterare, en användare som ansluter till en konversation utlöser en annan.
Skickar tillbaka svaret via samma kanal och översätter ditt svar tillbaka till det format som kanalen förväntar sig.
Utvecklare skriver hanterare för de aktivitetstyper de bryr sig om. SDK hanterar allt annat, inklusive autentisering, översättning av meddelandeformat och kanalanslutning.
Vad agent-SDK:et inte är
Agents SDK är inte en AI-modell, en orkestreringsmotor eller en kodfri byggare. Agenternas SDK bestämmer inte vad en agent säger. De här elementen är jobbet för den AI-tjänst eller affärslogik som utvecklaren kopplar in i agenten. Agents SDK är det ramverk som hämtar meddelanden till och från den logiken på ett tillförlitligt sätt, över kanaler, med konversationstillståndet intakt.
Nästa steg
- Läs mer om Aktivitetsprotokoll
- Läs mer om AgentApplication
- Snabbstart: Skapa och testa en grundläggande agent