Agente A tradução mais comum que vi até agora é "corpo inteligente", mas a tradução direta é "agente".
Qual é o significado de Agentic? Acho que algo como "agentic" seria mais apropriado.
Para não confundir o leitor, usarei diretamente o inglês neste artigo.
À medida que os LLMs evoluem, os recursos de IA não se limitam mais à automação de tarefas simples; eles podem lidar com fluxos de trabalho complexos e contínuos. Por exemplo, podemos usar o LLM para criar assistentes inteligentes que fazem pedidos automáticos de itens em plataformas de comércio eletrônico e providenciam a entrega no lugar do usuário. EssesOs assistentes baseados em LLM são conhecidos como agentes de IA.
Para ser mais específico, um AI Agent é um assistente inteligente orientado por LLM que pode ajudar com tarefas e ferramentas específicas com base em tarefas e ferramentas predefinidas. Em sua forma mais básica, um AI Agent tem os seguintes recursos principais:
- gerenciamento de memóriaO AI Agent pode armazenar e gerenciar registros de interações com os usuários.
- Interação com fontes de dados externasCapacidade de se comunicar com sistemas externos para obter dados ou concluir tarefas.
- execução de funçõesChamada de funções: O trabalho real é feito por meio da chamada de funções.
Por exemplo, o AI Agent pode executar as seguintes tarefas:
- Reservas de restaurantesPor exemplo, um agente de IA em um sistema de restaurante pode ajudar os usuários a reservar assentos on-line, comparar diferentes restaurantes e ajudá-los a ligar diretamente para os restaurantes por meio de interação por voz.
- Colegas de colaboração virtualO AI Agent pode atuar como o "pequeno secretário" do seu projeto, colaborando com os usuários em tarefas específicas.
- Automação das operações diáriasAgentes de IA: os agentes de IA são capazes de lidar com operações de várias etapas e até mesmo concluir operações cotidianas do computador. Por exemplo, o Replit Agent pode simular as operações que os desenvolvedores realizam em um ambiente de desenvolvimento, instalando automaticamente dependências e editando códigos; o Anthropic's Computador O Use Agent pode orientar Claude Operar o computador de maneiras comumente usadas pelos usuários, incluindo mover o mouse, clicar em botões e inserir texto.
Embora possamos criar agentes de IA do zero usando pilhas de tecnologia como Python, React, etc., é possível criar agentes de IA do zero com a ajuda de tecnologias como Phidata, OpenAI Swarm, LangGraph, Microsoft Autogen, CrewAI, Vertex AI e Langflow O processo de desenvolvimento se torna mais eficiente com estruturas multiagentes, como o AI Assistant. Esses frameworks fornecem ferramentas e recursos pré-empacotados para nos ajudar a criar assistentes de IA rapidamente.
Então, quais são as vantagens de usar essas estruturas?
- Escolhendo o LLM certoLLMs: Você pode usar LLMs como OpenAI, Anthropic, xAI, Mistral etc., dependendo do cenário específico do aplicativo, ou LLMs como Ollama e ferramentas como o LM Studio para criar agentes de IA.
- Adicionar base de conhecimentoEssas estruturas permitem que você adicione documentos específicos (como json, arquivos pdf ou sites) como base de conhecimento para ajudar o agente de IA a adquirir e entender as informações.
- Função de memória incorporadaNão há necessidade de criar sistemas complexos para armazenar e gerenciar transcrições de bate-papo ou conversas personalizadas. A estrutura vem com um recurso de memória que ajuda o agente de IA a lembrar e acessar interações anteriores ao longo do tempo.
- Ferramentas de personalizaçãoA estrutura Multi-Agent nos permite adicionar ferramentas personalizadas ao AI Agent e integrá-lo perfeitamente a sistemas externos para realizar operações como pagamentos on-line, pesquisas na Web, chamadas de API, pesquisas em bancos de dados, visualização de vídeos, envio de e-mails e muito mais.
- Simplificando os desafios de engenhariaEssas estruturas nos ajudam a simplificar tarefas complexas de engenharia, como o gerenciamento de conhecimento e memória, reduzindo assim a dificuldade técnica no desenvolvimento de produtos de IA.
- Desenvolvimento e implantação aceleradosA estrutura fornece as ferramentas e a infraestrutura necessárias para criar sistemas de IA, ajudando-nos a desenvolver e implantar mais rapidamente sistemas de IA em plataformas de nuvem, como a AWS.
Com essas estruturas, podemos desenvolver mais facilmente agentes de IA eficientes e inteligentes para melhorar a velocidade e a qualidade do desenvolvimento de produtos.
A seguir, vamos nos aprofundar nas cinco principais plataformas para a criação de agentes de IA para ajudá-lo a começar e criar seu próprio assistente de IA!
A estrutura básica de um agente
O trecho de código a seguir mostra um dos agentes de IA mais simples. O agente de IA resolve problemas usando um modelo de linguagem. A definição de um agente de IA pode incluir a escolha de modelos de linguagem grandes ou pequenos, memória, armazenamento, fontes de conhecimento externas, bancos de dados vetoriais, instruções, descrições, nomes etc.
Por exemplo, algo como Windsurf Um agente de IA moderno como esse pode ajudar qualquer pessoa a gerar, executar, editar, criar e implantar rapidamente aplicativos da Web de pilha completa. Ele oferece suporte à geração de código e à criação de aplicativos para uma ampla gama de tecnologias e bancos de dados da Web, como Astro, Vite, Next.js, Superbase e muito mais.
Casos de aplicação de multiagentes em empresas
Os sistemas de IA agêntica têm uma ampla gama de aplicações em ambientes corporativos.Especialmente na execução de tarefas automatizadas e repetitivas. Aqui estão os principais cenários de aplicativos em que o AI Agent é útil no espaço corporativo:
- Chamadas e outras análisesSistemas multiagentes são excelentes para analisar e gerar relatórios sobre a intenção, a demografia e as interações dos usuários. Seus recursos analíticos/relatórios ajudam as organizações a segmentar clientes ou mercados.
- Classificação de chamadasCategorização automática de chamadas com base na largura de banda e na força da rede dos participantes para um processamento eficiente.
- Escuta do mercadoMonitorar e analisar o sentimento do cliente em aplicativos de mercado.
- Análise de pesquisas e comentáriosUse o feedback do cliente e os dados da pesquisa para obter insights e melhorar a experiência do cliente.
- Gerenciamento de viagens e despesasAutomatize o relatório, o controle e a aprovação de despesas.
- Banco de DiálogoAjuda aos clientes com serviços bancários por meio de bate-papo ou assistentes de voz com tecnologia de IA.
- A IA universal oferece suporte a chatbotsOs agentes de suporte ao cliente podem lidar com reclamações de clientes, solucionar problemas e delegar tarefas complexas a outros agentes.
- financeiroO Financial Agent pode ser usado para prever tendências econômicas, de ações e de mercado, além de fornecer conselhos práticos sobre investimentos.
- mercadoAs equipes de marketing das empresas podem usar agentes de IA para criar conteúdo personalizado e textos de anúncios para diferentes públicos-alvo a fim de aumentar as taxas de conversão.
- vendas (representante, contrato etc.)O AI Agent pode ajudar a analisar os padrões de interação com o cliente no sistema e ajudar as equipes de vendas a se concentrarem na conversão de leads.
- habilidadeNo setor de tecnologia, o AI Coding Agent ajuda os desenvolvedores e engenheiros a se tornarem mais produtivos, acelerando a conclusão, a geração, a automação, os testes e a correção de bugs do código.
Estrutura de cinco agentes para 2024
Você pode usar várias estruturas Python para criar e adicionar agentes a aplicativos e serviços. Essas estruturas incluem ferramentas sem código (criadores visuais de agentes de IA), com pouco código e com código médio. Agora, vou apresentar a você cinco dos principais criadores de agentes baseados em Python de 2024, para que você possa escolher de acordo com suas necessidades comerciais.
1 Phidata
Phidata é uma estrutura baseada em Python para transformar LLMs em agentes em produtos de IA, com suporte a LLMs de código fechado e de código aberto dos principais participantes, como OpenAI, Anthropic, Cohere, Ollama e Juntos IA, etc. Com seu suporte a bancos de dados e armazenamentos vetoriais, podemos conectar facilmente sistemas de IA a Postgres, PgVector, Pinecone, LanceDb e outros. Com o Phidata, podemos criar agentes básicos, bem como criar agentes avançados com chamadas de função, saída estruturada e ajuste fino.
Principais recursos do Phidata
- UI do agente integradaPhidata: o Phidata oferece uma interface de usuário pronta para uso para executar projetos do Agent localmente ou na nuvem e gerenciar sessões em segundo plano.
- implementaçõesAgente: Você pode publicar o Agente no GitHub ou em qualquer serviço de nuvem, ou pode conectar uma conta do AWS para implantá-lo em um ambiente de produção.
- Monitoramento de indicadores-chaveInformações sobre a sessão: fornece instantâneos de sessão, chamadas de API, uso de tokens e oferece suporte ao ajuste de configurações e a melhorias no Agent.
- Suporte a modelosAcelere o processo de desenvolvimento e produção de agentes de IA com modelos de base de código pré-configurados.
- Suporte à AWSPhidata: a Phidata se integra perfeitamente ao AWS e pode executar aplicativos completos em contas do AWS.
- Independência do modeloSuporte para o uso da tecnologia mais recente da OpenAI, Anthropic, Groq e Mistral e outros modelos avançados e chaves de API.
- Criação de um sistema multiagenteA Phidata é uma ferramenta de coordenação de agentes: usando a Phidata, você pode criar uma equipe de agentes que passam tarefas uns para os outros e colaboram em tarefas complexas; a Phidata lida perfeitamente com a coordenação dos agentes em segundo plano.
Agora vou lhe mostrar como usar a estrutura Phidata e o LLM da OpenAI para criar um agente de IA básico em Python que consulta os dados financeiros do Yahoo Finance, que foi projetado para agregar recomendações de analistas de várias empresas por meio do Yahoo Finance.
Instalar dependências:
Crie um novo arquivo financial_agent.py:
importar openai from phi.agent import Agent from phi.model.openai import OpenAIChat from phi.tools.yfinance import YFinanceTools from dotenv import load_dotenv importar os # Carregar variáveis de ambiente do arquivo .env load_dotenv() # Obter a chave da API do ambiente openai.api_key = os.getenv("OPENAI_API_KEY") # Inicializar o agente finance_agent = Agent( nome="Agente de IA financeiro", model=OpenAIChat(id="gpt-4o"), tools=[ YFinanceTools( stock_price=True, analyst_recommendations=True, company_info=True, company_news=True. ) ], instructions=["Use tables to display data"], show_tool_calls=True, markdown=True, ) ) # Emita um resumo das recomendações de analistas para a NVDA finance_agent.print_response("Resumir as recomendações dos analistas para a NVDA", stream=True)
Código acima:
- Importação de módulos e carregamento de chaves de API
Primeiro, importe os módulos e pacotes necessários e carregue a chave de API do OpenAI por meio do arquivo .env. Esse carregamento de chaves de API também se aplica a outros provedores de modelos, como Anthropic, Mistral e Groq. - Criação de um proxy
Use a classe Agent do Phidata para criar um novo Agent e especificar suas funções e recursos exclusivos, incluindo modelos, ferramentas, comandos e muito mais. - Imprimir resposta
Chame o método print_response para gerar a resposta do agente à pergunta e especifique se ela deve ser exibida como um fluxo (stream=True).
2 Enxame
Enxame A OpenAI lançou recentemente uma estrutura de agente experimental de código aberto, que é uma estrutura leve de orquestração de vários agentes.
tomar nota deSwarm: O Swarm ainda está em fase experimental. Ele pode ser usado para fins educacionais e de desenvolvimento, mas não é recomendado para ambientes de produção. Para obter as informações mais recentes, consulte o repositório oficial:
https://github.com/openai/swarm
Uso do enxame Agentes responder cantando Transferências Como uma abstração para orquestração e coordenação de agentes, é uma estrutura leve, fácil de testar e gerenciar. É uma estrutura leve, fácil de testar e gerenciar. Os agentes do Swarm podem ser configurados com ferramentas, comandos e outros parâmetros para executar tarefas específicas.
Além de sua arquitetura leve e simples, o Swarm tem os seguintes recursos principais:
- passar para a próxima geraçãoSwarm: suporta a construção de sistemas multiagentes, em que um agente pode transferir conversas para outros agentes a qualquer momento.
- escalabilidadeSwarm: Com sua arquitetura de transferência simplificada, o Swarm facilita a criação de sistemas de agentes que podem suportar milhões de usuários.
- escalabilidadeO Swarm foi projetado para ser altamente personalizável e pode ser usado para criar uma experiência de agente totalmente personalizada.
- Sistema de recuperação integrado e manuseio de memóriaSwarm: O Swarm tem funcionalidade integrada para armazenar e processar conteúdo de diálogo.
- PrivacidadeO Swarm é executado principalmente no lado do cliente e não retém o estado entre as chamadas, o que melhora muito a privacidade dos dados.
- recursos educacionaisSwarm: O Swarm fornece uma série de exemplos de aplicativos multiagentes básicos e avançados para que os desenvolvedores possam testar e aprender com eles.
A seguir, mostrarei a você como usar o Swarm:
from swarm import Swarm, Agent # Inicializar o cliente Swarm cliente = Swarm() mini_model = "gpt-4o-mini" # Definir a função de coordenação para transferir tarefas para o Agente B def transfer_to_agent_b(). return agent_b # Definir o agente A agent_a = Agent( name="Agente A", instructions="Você é um assistente útil. instructions="You are a helpful assistant.", functions=[transfer_to_agent_b], return agent_b functions=[transfer_to_agent_b], ) ) # Definir o Agente B agent_b = Agent( nome="Agente B", model=mini_model, instructions="You falar apenas em finlandês.", ) ) # Execute o sistema Agent e obtenha a resposta response = client.run( agent=agent_a, messages=[{"role": "user", "content": "I want to talk to Agent B.", "user", "content": "I want to talk to Agent B.") messages=[{"role": "user", "content": "I want to talk to Agent B."}], debug=False, ) ) # Imprimir a resposta do Agente B print(response.messages[-1]["content"])
código acima
-
- inicialização
- O Swarm é usado para criar uma instância de cliente.
- O agente define o nome, a função e o modelo de linguagem do agente (por exemplo, gpt-4o-mini).
- lógica de transição
- inicialização
transfer_to_agent_b é uma função de coordenador que transfere tarefas do agente_a para o agente_b.
-
- Sistema de agentes em execução
client.run() executa o sistema do agente, passando as mensagens e os parâmetros de depuração para rastrear a execução da tarefa.
Se você alterar o idioma no comando para agent_b para outro idioma (por exemplo, inglês, sueco, finlandês), receberá uma resposta no idioma correspondente.
3 CrewAI
CrewAI Uma das estruturas de IA baseadas em agentes mais populares para criar rapidamente agentes de IA e integrá-los aos LLMs e bases de código mais recentes. Grandes empresas como Oracle, Deloitte, Accenture e outras usam e confiam no CrewAI.
A CrewAI é mais rica e versátil do que outras estruturas baseadas em agentes.
- escalabilidadeOferece suporte à integração com mais de 700 aplicativos, incluindo Notion, Zoom, Stripe, Mailchimp, Airtable e muito mais.
- artefato
- Os desenvolvedores podem usar a estrutura do CrewAI para criar sistemas de automação multiagente a partir do zero.
- Os designers podem criar agentes totalmente funcionais em um ambiente sem código com o UI Studio e as ferramentas de modelo.
- implementaçõesVocê pode usar o método de implementação de sua preferência para migrar rapidamente o agente de desenvolvimento para o ambiente de produção.
- Monitoramento de agentesAssim como a Phidata, o CrewAI fornece painéis intuitivos para monitorar o progresso e o desempenho do Agente.
- Ferramentas de treinamento incorporadasUse as ferramentas integradas de treinamento e teste do CrewAI para melhorar o desempenho e a eficiência do agente e garantir a qualidade de suas respostas.
Primeiro, precisamos instalar o CrewAI:
O comando acima instala o CrewAI e suas ferramentas e verifica se a instalação foi bem-sucedida.
Quando a instalação estiver concluída, você poderá executar o seguinte comando para criar um novo projeto CrewAI:
Depois de executar esse comando, seremos solicitados a selecionar um da seguinte lista de provedores de modelos, por exemplo, OpenAI, Anthropic, xAI, Mistral etc. Depois de selecionar um provedor, você também pode selecionar um modelo específico da lista, por exemplo, gpt-4o-mini.
Os comandos a seguir podem ser usados para criar um sistema Multi-Agent:
O aplicativo CrewAI completo foi carregado em um repositório do GitHub e pode ser baixado e executado com o seguinte comando:
https://github.com/GetStream/stream-tutorial-projects/tree/main/AI/Multi-Agent-AI
Depois de executá-lo, você verá um resultado de resposta semelhante ao seguinte:
4 Autógeno
Autógeno é uma estrutura de código aberto para a criação de sistemas de agentes. Com essa estrutura, é possível criar fluxos de trabalho de colaboração multiagente e LLM.
O Autogen vem com os seguintes recursos principais:
- Suporte a vários idiomasCrie agentes usando linguagens de programação como Python e .
- Agente localOs agentes podem ser executados e experimentados localmente para garantir maior privacidade.
- comunicação assíncrona de mensagensUse mensagens assíncronas para a comunicação entre os agentes.
- escalabilidadeOferece suporte aos desenvolvedores na criação de redes de agentes distribuídos para colaboração entre organizações.
- Capacidade de personalizaçãoPersonalize e crie uma experiência de sistema do Agent totalmente personalizada com seus componentes plugáveis.
O bloco de código a seguir cria um sistema simples de agente meteorológico de IA:
importar asyncio from autogen_agentchat.agents import AssistantAgent from autogen_agentchat.task import Console, TextMentionTermination from autogen_agentchat.teams import RoundRobinGroupChat from autogen_ext.models import OpenAIChatCompletionClient importar os from dotenv import load_dotenv load_dotenv() # Definir a ferramenta async def get_weather(city: str) -> str. return f "O tempo em {city} é de 73 graus e ensolarado." async def main() -> None: return f "O tempo em {city} é de 73 graus e ensolarado. # Definir agente weather_agent = AssistantAgent( name="weather_agent", model_client=OpenAgent model_client=OpenAIChatCompletionClient( model="gpt-4o-mini", api_key=os.getenv("OPENAI_API_KEY"), ), tools=[get_weather], ) ) # Definir a condição de encerramento termination = TextMentionTermination("TERMINATE") # Defina a equipe do agente agent_team = RoundRobinGroupChat([weather_agent], termination_condition=termination) # Execute a equipe e transmita a mensagem para o console stream = agent_team.run_stream(task="What is the weather in New York?") aguarde Console(stream) asyncio.run(main())
código acima
- Definição da ferramentaget_weather: get_weather é um exemplo de função de utilidade que retorna informações sobre o clima da cidade.
- Definição de agenteAgente: defina o agente usando AssistantAgent e configure o cliente modelo como GPT-4o-mini da OpenAI. A chave da API é carregada do arquivo .env.
- Condições de rescisãoTERMINAÇÃO: defina uma condição de encerramento por meio de TextMentionTermination que encerra a tarefa quando "TERMINATE" é mencionado.
- Equipe de agentesUse o RoundRobinGroupChat para criar uma equipe de agentes que receberão tarefas em forma de votação.
Depois de executar esse código, o console exibirá uma saída semelhante à seguinte:
5 LangGraph
LangGraph O LangGraph é uma estrutura de IA baseada em nós, projetada para criar sistemas multiagentes que lidam com tarefas complexas. Como parte do ecossistema LangChain, o LangGraph é uma estrutura de agente estruturada em gráficos. Os usuários podem criar fluxos de trabalho lineares, hierárquicos e sequenciais por meio de nós e bordas. Entre eles.Nórepresenta a ação do Agente.Bordadenotando uma transição entre ações.Estadoé outra parte importante do LangGraph Agent.
Benefícios e principais recursos do LangGraph
- gratuito e de código abertoLangGraph é uma biblioteca gratuita sob a licença MIT Open Source.
- Suporte a streamingFornece suporte de transmissão literal para mostrar as etapas intermediárias e os processos de pensamento do agente.
- Opções de implementaçãoHá suporte para várias implantações em larga escala, e o desempenho do agente pode ser monitorado por meio do LangSmith. A opção Enterprise permite que o LangGraph seja implantado inteiramente na infraestrutura do próprio usuário.
- Adaptação da empresaReplit O uso do LangGraph para alimentar seu agente de codificação de IA demonstra a aplicabilidade empresarial do LangGraph.
- alto desempenhoNenhuma carga adicional de código ao lidar com fluxos de trabalho complexos do Agent.
- Circulação e capacidade de controleDefina facilmente fluxos de trabalho Multi-Agent que incluam loops e tenha controle total sobre o estado do Agent.
- objetificaçãoO LangGraph salva automaticamente o estado do agente após cada etapa do gráfico e também suporta a pausa e a retomada da execução do gráfico em qualquer ponto.
Acesse o endereço abaixo para fazer o download do código de amostra:
https://langchain-ai.github.io/langgraph/