O que é o SDK de Agentes do Microsoft 365

O SDK de Agentes do Microsoft 365 é uma estrutura de desenvolvimento para criar agentes conversacionais. Os agentes conversacionais são software e podem receber mensagens dos utilizadores, processá-las e responder-lhes. Pense nisso como a camada de ligação entre um utilizador que envia uma mensagem (seja no Teams, num site, no Slack ou noutro local) e a lógica que criou para responder a essa mensagem.

O SDK trata dos mecanismos de receção e envio de mensagens em diferentes superfícies, permitindo que os programadores se concentrem no que o agente efetivamente faz, em vez de nos protocolos de comunicação de baixo nível.

Idiomas suportados

O SDK de Agentes suporta:

  • C#, utilizando o SDK do .NET 8.0
  • JavaScript com Node.js versão 18 ou posterior
  • Python nas versões 3.9 a 3.11

Três problemas que o SDk de Agentes resolve

  • O agente necessita de funcionar em mais do que um local. Os utilizadores não comunicam todos pelo mesmo canal. Alguns utilizam o Microsoft Teams, outros utilizam o Microsoft 365 Copilot, outros utilizam o site da empresa e alguns utilizam ferramentas que não sejam da Microsoft, como o Slack ou o Facebook Messenger. Sem uma estrutura, o programador precisa de escrever código de integração separado para cada uma dessas superfícies, cada uma com o seu próprio formato de mensagens, esquema de autenticação e protocolo de ligação.

    O SDK oferece uma camada de abstração de canais. Escreva a lógica do seu agente uma única vez e o SDK traduz as mensagens a receber e as mensagens a enviar para o formato esperado por cada canal. Adicionar um novo canal não exige reescrever o comportamento principal do agente.

  • Não se pretende ficar preso a um único serviço de IA. A escolha do serviço de IA que suporta um agente, seja o Azure AI Foundry, o OpenAI, o Kernel Semântico ou qualquer outra solução, muda com frequência à medida que o panorama evolui e surgem diferentes casos de utilização. Uma estrutura de agentes que incorpora um fornecedor de IA específico obriga os programadores a reescrever grandes partes do seu código quando essa escolha muda.

    O SDK é, por conceção, agnóstico em relação à IA. O SDK fornece a infraestrutura para receber mensagens, gerir o estado e encaminhar eventos, mas não faz suposições sobre o que gera a resposta. Os programadores integram os serviços de IA ou as bibliotecas de orquestração que preferirem. O SDK não interfere nessa escolha.

  • Processar o estado da conversação é difícil. As conversações não são sem estado. Um utilizador pode fazer uma pergunta de seguimento, referir-se a algo dito há dois turnos atrás ou abandonar uma conversação e retomá-la mais tarde. Gerir esse contexto, incluindo monitorizar o que aconteceu, onde está armazenado e como flui entre mensagens, é moroso e suscetível a erros quando criado do zero.

    O SDK fornece gestão de estado e armazenamento incorporada. O SDK introduz o conceito de turno (uma única unidade de trabalho numa conversação) e monitoriza o estado ao longo dos turnos, sem exigir que os programadores implementem a sua própria camada de persistência. Isto significa menos código automático e menos erros na lógica do fluxo de conversações.

Como tudo se encaixa

Fundamentalmente, o SDK executa três ações quando uma mensagem é recebida:

  1. Recebe a mensagem do canal que a enviou (Teams, Webchat, Slack, etc.) e normaliza-a num formato comum denominado Activity.

  2. Encaminha a atividade para o processador apropriado no código do seu agente. Por exemplo, uma atividade de mensagem aciona um processador, enquanto que a entrada de um utilizador numa conversação aciona outro.

  3. Envia a resposta através do mesmo canal, traduzindo‑a novamente para o formato esperado pelo canal.

Os programadores escrevem processadores para os tipos de atividade que lhes interessam. O SDK trata de todo o restante, incluindo a autenticação, a tradução dos formatos de mensagens e a conectividade com os canais.

O que é o SDK de Agentes não é

O SDk de Agentes não é um modelo de IA, um motor de orquestração nem um construtor no-code. O SDK de Agentes não determina o que o agente diz. Estes elementos são da responsabilidade de qualquer serviço de IA ou lógica de negócio que o programador integra no agente. O SDK de Agentes é a estrutura que envia e recebe mensagens para e a partir dessa lógica de forma fiável, entre canais, mantendo o estado da conversação intacto.

Passos seguintes