Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Os componentes de tempo de execução do agente são os principais objetos — agentes, conversas e respostas — que alimentam interações com estado contínuo e multiturno no Serviço Microsoft Foundry Agent. Juntos, esses componentes permitem gerar saídas, manter o estado entre turnos e criar aplicativos de conversação.
Este artigo explica as funções de um agente, conversa e resposta e como eles funcionam juntos durante a geração de resposta.
Pré-requisitos
- Um projeto do Microsoft Foundry.
- Familiaridade com o ciclo de vida de desenvolvimento do agente (opcional).
Como os componentes de runtime funcionam juntos
Ao trabalhar com um agente, você segue um padrão consistente:
- Criar um agente: defina um agente para começar a enviar mensagens e receber respostas.
- Criar uma conversa (opcional): use uma conversa para manter o histórico entre turnos. Se você não usar uma conversa, mantenha o contexto usando a saída de uma resposta anterior.
- Gerar uma resposta: o agente processa itens de entrada na conversa e todas as instruções fornecidas na solicitação. O agente pode acrescentar itens à conversa.
- Verificar o status da resposta: monitore a resposta até que ela seja concluída (especialmente no modo de streaming ou em segundo plano).
- Recuperar a resposta: exiba a resposta gerada ao usuário.
O diagrama a seguir ilustra como esses componentes interagem em um loop de agente típico.
Você fornece entrada do usuário (e, opcionalmente, histórico da conversa), o serviço gera uma resposta (incluindo chamadas de ferramenta quando configuradas) e os itens resultantes podem ser reutilizados como contexto para o próximo turno.
O que é um agente?
Um agente é uma definição de orquestração persistente que combina modelos de IA, instruções, código, ferramentas, parâmetros e controles opcionais de segurança ou governança.
Armazene agentes como ativos nomeados e com versão no Microsoft Foundry. Durante a geração de resposta, a definição do agente funciona com o histórico de interação (conversa ou resposta anterior) para processar e responder à entrada do usuário.
O que é uma conversa?
Uma conversa gerencia o estado automaticamente, portanto, você não precisa passar entradas manualmente para cada turno.
As conversas são objetos duráveis com identificadores exclusivos. Após a criação, você pode reutilizá-las entre sessões.
As conversas armazenam itens, que podem incluir mensagens, chamadas de ferramenta, saídas de ferramentas e outros dados.
Quando usar uma conversa
Utilize uma conversa quando desejar:
- Continuidade de múltiplos turnos: mantenha um histórico estável entre turnos sem a necessidade de reconstruir o contexto por si mesmo.
- Continuidade entre sessões: reutilize a mesma conversa para um usuário que retorna mais tarde.
- Depuração mais fácil: inspecione o que aconteceu ao longo do tempo (por exemplo, chamadas de ferramenta e saídas).
Se você não criar uma conversa, ainda poderá criar fluxos de vários turnos usando a saída de uma resposta anterior como ponto de partida para a próxima solicitação. Essa abordagem oferece mais flexibilidade do que o padrão baseado em thread mais antigo, em que o estado estava firmemente acoplado a objetos de thread. Para obter diretrizes de migração, consulte Migrar para o SDK de Agentes.
Itens de conversa
Conversas armazenam itens em vez de apenas mensagens de chat. Os itens capturam o que aconteceu durante a geração de resposta para que o próximo turno possa reutilizar esse contexto.
Os tipos de item comuns incluem:
- Itens de mensagem: mensagens de usuário ou assistente.
- Itens de chamada de ferramenta: registros de invocações de ferramenta que o agente tentou.
- Itens de saída da ferramenta: saídas retornadas por ferramentas (por exemplo, resultados de recuperação).
- Itens de saída: o conteúdo de resposta exibido novamente para o usuário.
Para obter exemplos que mostram como conversas e respostas funcionam juntas no código, consulte Criar e usar memória no Serviço do Foundry Agent.
Como as respostas funcionam
A geração de resposta invoca o agente. O agente usa sua configuração e qualquer histórico fornecido (conversa ou resposta anterior) para executar tarefas chamando modelos e ferramentas. Como parte da geração de resposta, o agente acrescenta itens à conversa.
Você também pode gerar uma resposta sem definir um agente. Nesse caso, você fornece todas as configurações diretamente na solicitação e as usa apenas para essa resposta. Essa abordagem é útil para cenários simples com ferramentas mínimas.
Streaming e respostas em segundo plano
Alguns modos de geração de resposta retornam resultados incrementalmente (streaming) ou são concluídos de forma assíncrona (em segundo plano). Nesses casos, você normalmente monitora a resposta até que ela seja concluída e, em seguida, consuma os itens de saída finais.
Para obter detalhes sobre os modos de resposta e como consumir saídas, consulte a API de Respostas.
Segurança e manipulação de dados
Como conversas e respostas podem persistir conteúdo fornecido pelo usuário e saídas de ferramentas, trate dados de runtime como dados do aplicativo:
- Evite armazenar segredos em prompts ou histórico de conversas. Em vez disso, use conexões e repositórios de segredos gerenciados (por exemplo, configurar uma conexão do Key Vault).
- Use o privilégio mínimo para acesso à ferramenta. Quando uma ferramenta acessa sistemas externos, o agente pode potencialmente ler ou enviar dados por meio dessa ferramenta.
- Tenha cuidado com serviços que não são da Microsoft. Se o agente chamar ferramentas apoiadas por serviços que não são da Microsoft, alguns dados poderão fluir para esses serviços. Para considerações relacionadas, consulte Discover tools no Foundry Tools.
Limites e restrições
Os limites podem depender do modelo, da região e das ferramentas anexadas (por exemplo, disponibilidade de streaming e suporte à ferramenta). Para obter a disponibilidade e as restrições atuais para respostas, consulte a API de Respostas.