Uma visão geral da arquitetura do agente (experimental)
Aviso
O Semantic Kernel Agent Framework é experimental, ainda está em desenvolvimento e está sujeito a alterações.
Este artigo aborda conceitos-chave na arquitetura do Agent Framework, incluindo princípios fundamentais, objetivos de design e metas estratégicas.
Objetivos
O Agent Framework foi desenvolvido com as seguintes prioridades-chave em mente:
- A estrutura do Kernel Semântico serve como base para a implementação de funcionalidades do agente.
- Vários agentes podem colaborar em uma única conversa, ao mesmo tempo em que integram a entrada humana.
- Um agente pode participar e gerenciar várias conversas simultâneas simultaneamente.
- Diferentes tipos de agentes podem participar da mesma conversa, cada um contribuindo com suas capacidades únicas.
Agente
A classe abstrata Agent serve como a abstração central para todos os tipos de agentes, fornecendo uma estrutura fundamental que pode ser estendida para criar agentes mais especializados. Uma subclasse chave é o Kernel Agent, que estabelece uma associação direta com um objeto Kernel . Esse relacionamento forma a base para implementações de agentes mais específicas, como o Chat Completion Agent e o Open AI Assistant Agent, que aproveitam os recursos do Kernel para executar suas respetivas funções.
Os agentes estão atualmente indisponíveis em Java.
Os agentes podem ser invocados diretamente para executar tarefas ou orquestrados dentro de um Chat do Agente, onde vários agentes podem colaborar ou interagir dinamicamente com as entradas do usuário. Essa estrutura flexível permite que os agentes se adaptem a vários cenários conversacionais ou orientados por tarefas, fornecendo aos desenvolvedores ferramentas robustas para a criação de sistemas inteligentes e multiagentes.
Deep Dive:
Bate-papo do agente
A classe Agent Chat serve como o componente fundamental que permite que agentes de qualquer tipo participem de uma conversa específica. Essa classe fornece os recursos essenciais para gerenciar interações do agente em um ambiente de chat. Com base nisso, a classe Agent Group Chat amplia esses recursos oferecendo um contêiner baseado em stategy, que permite que vários agentes colaborem em várias interações dentro da mesma conversa.
Essa estrutura facilita cenários mais complexos e multiagentes, onde diferentes agentes podem trabalhar juntos, compartilhar informações e responder dinamicamente a conversas em evolução, tornando-se uma solução ideal para casos de uso avançados, como suporte ao cliente, gerenciamento de tarefas multifacetado ou ambientes colaborativos de resolução de problemas.
Deep Dive:
Canal do agente
A classe Agent Channel permite que agentes de vários tipos participem de um bate-papo do agente. Essa funcionalidade é completamente oculta dos usuários do Agent Framework e só precisa ser considerada pelos desenvolvedores que criam um Agent personalizado.
Os agentes estão atualmente indisponíveis em Java.
Alinhamento do agente com recursos do kernel semântico
O Agent Framework é construído sobre os conceitos e recursos fundamentais que muitos desenvolvedores conheceram dentro do ecossistema do Kernel Semântico . Esses princípios fundamentais servem como blocos de construção para o design do Agent Framework. Ao aproveitar a estrutura familiar e os recursos do Kernel Semântico, o Agent Framework estende sua funcionalidade para permitir comportamentos de agente mais avançados e autônomos, mantendo a consistência com a arquitetura mais ampla do Kernel Semântico. Isso garante uma transição suave para os desenvolvedores, permitindo que eles apliquem seus conhecimentos existentes para criar agentes inteligentes e adaptáveis dentro da estrutura.
O Kernel
No coração do ecossistema do Kernel Semântico está o Kernel, que serve como o objeto central que impulsiona as operações e interações de IA. Para criar qualquer agente dentro dessa estrutura, uma instância do Kernel é necessária, pois fornece o contexto fundamental e os recursos para a funcionalidade do agente. O Kernel atua como o mecanismo para processar instruções, gerenciar o estado e invocar os serviços de IA necessários que alimentam o comportamento do agente.
Os artigos Chat Completion Agent e Open AI Assistant Agent fornecem detalhes específicos sobre como criar cada tipo de agente. Esses recursos oferecem instruções passo a passo e destacam as principais configurações necessárias para adaptar os agentes a diferentes aplicativos de conversação ou baseados em tarefas, demonstrando como o Kernel permite comportamentos dinâmicos e inteligentes de agentes em diversos casos de uso.
APIs relacionadas:
Os agentes estão atualmente indisponíveis em Java.
Plugins e Chamada de Função
Os plugins são um aspeto fundamental do Kernel Semântico, permitindo que os desenvolvedores integrem funcionalidades personalizadas e estendam os recursos de um aplicativo de IA. Esses plugins oferecem uma maneira flexível de incorporar recursos especializados ou lógica específica do negócio nos principais fluxos de trabalho de IA. Além disso, os recursos do agente dentro da estrutura podem ser significativamente aprimorados utilizando plug-ins e aproveitando a chamada de função. Isso permite que os agentes interajam dinamicamente com serviços externos ou executem tarefas complexas, expandindo ainda mais o escopo e a versatilidade do sistema de IA em diversas aplicações.
Exemplo:
APIs relacionadas:
Os agentes estão atualmente indisponíveis em Java.
Mensagens do agente
As mensagens do agente, incluindo entrada e resposta, são construídas com base nos principais tipos de conteúdo do Kernel Semântico, fornecendo uma estrutura unificada para comunicação. Essa escolha de design simplifica o processo de transição de padrões tradicionais de conclusão de bate-papo para padrões mais avançados orientados por agente no desenvolvimento de aplicativos. Ao aproveitar os tipos de conteúdo familiares do Kernel Semântico, os desenvolvedores podem integrar perfeitamente os recursos do agente em seus aplicativos sem a necessidade de revisar os sistemas existentes. Essa simplificação garante que, à medida que você evolui da IA conversacional básica para agentes mais autônomos e orientados a tarefas, a estrutura subjacente permaneça consistente, tornando o desenvolvimento mais rápido e eficiente.
Nota: O Open AI Assistant Agent'_ introduziu tipos de conteúdo específicos para seu uso para referências de arquivo e anotação de conteúdo:
APIs relacionadas:
Os agentes estão atualmente indisponíveis em Java.
Criação de modelos
O papel de um agente é principalmente moldado pelas instruções que recebe, que ditam o seu comportamento e ações. Semelhante a invocar um prompt do kernel, as instruções de um agente podem incluir parâmetros de modelo — valores e funções — que são substituídos dinamicamente durante a execução. Isso permite respostas flexíveis e sensíveis ao contexto, permitindo que o agente ajuste sua saída com base na entrada em tempo real.
Além disso, um agente pode ser configurado diretamente usando uma Configuração de Modelo de Prompt, fornecendo aos desenvolvedores uma maneira estruturada e reutilizável de definir seu comportamento. Essa abordagem oferece uma ferramenta poderosa para padronizar e personalizar as instruções do agente, garantindo a consistência em vários casos de uso e, ao mesmo tempo, mantendo a adaptabilidade dinâmica.
Exemplo:
APIs relacionadas:
Os agentes estão atualmente indisponíveis em Java.
Conclusão do bate-papo
O Chat Completion Agent foi projetado em torno de qualquer serviço de IA do Kernel Semântico, oferecendo um encapsulamento de persona flexível e conveniente que pode ser perfeitamente integrado em uma ampla gama de aplicativos. Esse agente permite que os desenvolvedores tragam facilmente recursos de IA conversacional para seus sistemas sem ter que lidar com detalhes complexos de implementação. Ele espelha os recursos e padrões encontrados no serviço de IA subjacente, garantindo que todas as funcionalidades — como processamento de linguagem natural, gerenciamento de diálogo e compreensão contextual — sejam totalmente suportadas dentro do Chat Completion Agent, tornando-o uma ferramenta poderosa para criar interfaces de conversação.
APIs relacionadas:
Os agentes estão atualmente indisponíveis em Java.