Ler em inglês

Partilhar via


Como agentes e copilots trabalham com LLMs

Agentes e copilots ampliam os recursos de um LLM invocando de forma inteligente funcionalidades externas, como o envio de um e-mail.

  • Um agente é uma inteligência artificial que pode responder a perguntas e automatizar processos para os utilizadores. Os agentes podem determinar quais funções atenderão ao objetivo de um usuário e, em seguida, chamar essas funções em nome do usuário.
  • Um copiloto é um tipo de agente que trabalha lado a lado com um usuário. Ao contrário de um agente, um copiloto não é totalmente automatizado — depende da interação do usuário. Um copiloto pode ajudar um utilizador a concluir uma tarefa, fornecendo sugestões e recomendações.

Por exemplo, suponha que você esteja criando um aplicativo auxiliar de bate-papo por e-mail. Junto com o LLM, você também precisará de um plugin para executar ações relacionadas ao e-mail, bem como plugins para pesquisar, resumir, determinar a intenção e afins. Você pode usar funções nativas, plugins prontos para uso e seus próprios plug-ins personalizados.

Criar os plugins é apenas metade da batalha: você ainda precisa invocar as funções certas no momento certo, um processo que pode ser propenso a erros e ineficiente. Um agente pode lidar melhor com isso.

Um agente decide automaticamente qual sequência de funções um LLM pode usar para atingir uma meta do usuário. Por exemplo, suponha que você tenha um aplicativo de bate-papo que revise novos itens da caixa de entrada e determine qual ação cada item requer. Se você configurar um agente, ele pode orquestrar as funções de plug-in necessárias e executar as etapas automaticamente.

Componentes de um agente

Cada agente tem três blocos de construção principais: uma persona, plugins e planejadores.

  • As personas determinam a maneira como os agentes respondem aos usuários ou executam ações.
  • Os plug-ins permitem que os agentes recuperem informações do usuário ou de outros sistemas. Você pode usar plugins pré-construídos e seus próprios plugins personalizados.
  • Os planejadores permitem que os agentes planejem como usar os plug-ins disponíveis.

Pessoas

A persona de um agente é sua identidade: quaisquer plugins e planejadores que o agente usa são ferramentas, mas a persona determina como ele usa essas ferramentas. Você usa instruções em um prompt para estabelecer a persona de um agente.

Por exemplo, você pode usar instruções para dizer a um agente que ele está ajudando as pessoas a gerenciar e-mails e explicar suas decisões à medida que as toma. Seu prompt pode ter esta aparência:

C#
prompt = $"""
    <message role="system">
    You are a friendly assistant helping people with emails.
    When you decide to perform an action, explain your decision and then perform the action.
    </message>
"""

Plug-ins

Você usa plugins para fazer coisas que um LLM não pode fazer sozinho, como recuperar dados de fontes de dados externas ou concluir tarefas no mundo real.

Por exemplo, um LLM não pode enviar um e-mail, portanto, para adicionar essa função a um aplicativo de bate-papo, você precisa criar um plugin. Para processar o texto dos e-mails, você pode usar plug-ins principais, como o ConversationSummaryPlugin.

Certifique-se de documentar claramente as funções em seus plug-ins — os planejadores usam essas informações para determinar quais funções estão disponíveis.

Planejadores

Um planejador pode analisar as funções disponíveis e encontrar maneiras alternativas de alcançar o objetivo.

Chamar funções de plugin nem sempre é eficiente. Por exemplo, digamos que você queira somar os números entre 1 e 100. Você poderia chamar um plugin de matemática, mas o LLM precisaria fazer uma chamada separada para cada número.

Além disso, a melhor sequência e combinação de funções para alcançar um objetivo depende dos detalhes. Por exemplo, suponha que você esteja criando um aplicativo auxiliar de bate-papo por e-mail, para incluir um plug-in para habilitar o envio de e-mails. No entanto, alguns e-mails podem precisar de uma ação diferente, como uma solicitação de reunião sem RSVP — enviar uma resposta não é necessário, mas adicionar um item de calendário é. Um planejador analisa todas as funções disponíveis e cria maneiras eficientes de alcançar metas.

Copilots adicionam interação do usuário

A automação de processos tem muitos benefícios, mas às vezes o usuário precisa tomar decisões ao longo do caminho. Um agente não pode automatizar as ações do usuário. É aí que entram os copilots.

Um agente em seu aplicativo de bate-papo por email pode produzir o seguinte plano para enviar um email:

  1. Obter o endereço de e-mail e o nome do usuário
  2. Obter o endereço de e-mail do destinatário
  3. Obter o tópico do e-mail
  4. Gerar o assunto e o corpo do e-mail
  5. Envie o e-mail

Muito útil, mas e se o usuário não gostar do corpo do e-mail? Um copiloto adiciona uma etapa de interação do usuário ao plano:

  1. Obter o endereço de e-mail e o nome do usuário
  2. Obter o endereço de e-mail do destinatário
  3. Obter o tópico do e-mail
  4. Gerar o assunto e o corpo do e-mail
  5. Revise o e-mail com o usuário e faça ajustes
  6. Envie o e-mail

Aplicação Semantic Kernel Chat Copilot

Para começar a usar copilotos, experimente o Semantic Kernel Chat Copilot, um aplicativo de referência para criar uma experiência de bate-papo com um agente de IA.