Let's Build: Automate ANYTHING With AI Agent Teams (Step-by-Step)
Introdução ao Projeto com Crew AI
Visão Geral da Seção: Nesta seção, o foco é na configuração inicial do projeto com a plataforma Crew AI e na exploração das ferramentas disponíveis.
Configuração Inicial
- Instalação do ambiente de desenvolvimento na nuvem usando Lightning AI como IDE.
- Demonstração da instalação do Crew AI e acesso à versão Edge com ferramentas nativas.
- Agradecimento ao patrocinador, Lightning, por apoiar o vídeo.
Definição dos Agentes
- Utilização do Python 3.10.1 para instalar o Crew AI.
- Referência à documentação do Crew AI para iniciar a definição dos agentes.
- Importância de definir os agentes corretamente para o projeto.
Criação de Agentes e Ferramentas
Visão Geral da Seção: Nesta parte, é abordada a criação de um agente específico para coletar notícias sobre IA e resumir conteúdos de sites.
Criação do Agente Sumarizador
- Exemplo de código para utilizar uma ferramenta do Lang Chain Community.
- Transformação do pesquisador em um agente sumarizador com objetivo claro.
- Definições específicas sobre as funções e habilidades desse agente no contexto proposto.
Configuração da Ferramenta de Busca
Visão Geral da Seção: Nesta seção, são feitas configurações iniciais na ferramenta de busca do sistema.
Configuração Inicial da Ferramenta de Busca
- A ferramenta é inicialmente definida como "Search tool", mas é ajustada para "website Search tool" para raspar conteúdo de websites.
- O objetivo do agente redator é criar conteúdo envolvente sobre avanços em IA, transformando conceitos complexos em narrativas cativantes.
Definição das Tarefas dos Agentes
Visão Geral da Seção: Definição das tarefas a serem realizadas pelos agentes no sistema.
Tarefas dos Agentes
- A primeira tarefa consiste em analisar os avanços em IA em 2024, envolvendo a coleta e resumo de conteúdo de sites.
- O Sumarizador atua como um agente raspador, coletando e fornecendo o conteúdo completo ao agente redator para sumarização.
Desenvolvimento de Conteúdo sobre Avanços em IA
Visão Geral da Seção: Detalhes sobre a criação de conteúdo relacionado aos avanços em Inteligência Artificial.
Desenvolvimento do Conteúdo
- O agente redator elabora um resumo interessante com base no texto fornecido pelo agente raspador.
- São criadas duas tarefas no sistema, envolvendo dois agentes: raspador e redator, com níveis detalhados de logging configurados.
Importação e Utilização da Ferramenta de Busca do Website
Visão Geral da Seção: Processo de importação e uso da ferramenta de busca do website no sistema.
Importação da Ferramenta
- É necessário importar a ferramenta "website Search tool" para realizar buscas nos websites especificados.
Definição do Projeto e Análise Financeira
Visão Geral da Seção: Nesta parte, é discutida a definição do projeto e a análise financeira, bem como a identificação da ação que será analisada.
Definição do Projeto
- O projeto é definido em um arquivo único para simplificar o processo.
- No script Python, é feita uma entrada manual solicitando informações sobre a empresa, passando-as para o Financial Crew.
Análise Financeira
- É necessário configurar o código para incluir as etapas de solicitação de informações e execução da análise financeira.
- A estrutura principal do código Python é apresentada com ajustes para execução.
Configurações Iniciais e Implementação das Tarefas
Visão Geral da Seção: Aqui são abordadas as configurações iniciais do projeto e a implementação das tarefas necessárias.
Configurações Iniciais
- São solicitadas informações sobre a empresa e URL desejada para resumir.
- A classe "newsletter crew" é chamada para execução das tarefas.
Implementação das Tarefas
- Explora-se a modularidade do código existente para replicar no novo projeto.
- É destacada a importância de envolver todas as etapas dentro de classes específicas.
Integração de URLs e Agentes na Análise
Visão Geral da Seção: Neste trecho, foca-se na integração dos URLs e agentes na análise financeira.
Integração de URLs
- Os URLs são integrados ao processo de análise por meio dos agentes designados.
- A organização estrutural do código é revisada para garantir que os URLs sejam adequadamente passados aos agentes.
Definições Adicionais
- São realizadas adaptações no código principal para incluir os URLs nos processos de raspagem.
Execução do Código e Identificação de Erros
Visão Geral da Seção: Aqui ocorre a execução do código desenvolvido até o momento, identificando possíveis erros durante o processo.
Execução Inicial
- Após ajustes no código, inicia-se a execução verificando possíveis erros como variáveis não definidas.
Identificação de Erros
- Verifica-se se os agentes têm acesso correto aos URLs fornecidos pelos usuários.
Resolução de Problemas Durante Execução
Visão Geral da Seção: Durante a execução, são identificados problemas que exigem soluções imediatas.
Soluções Emergentes
Início da Resolução de Problemas
Visão Geral da Seção: Nesta parte, o orador identifica um problema na execução do código e começa a resolvê-lo.
Identificação do Problema
- O código não está funcionando conforme esperado.
- A ferramenta de busca de sites pode não estar sendo utilizada corretamente.
- Há dificuldades em passar corretamente as URLs para a tarefa.
- É necessário ajustar a forma como as URLs são inseridas na tarefa.
Solução e Implementação
Visão Geral da Seção: Aqui, são discutidas soluções para os problemas identificados anteriormente.
Implementação da Solução
- Utilizar a interpolação das URLs na tarefa.
- Corrigir a referência às URLs no código.
- Explorar alternativas para realizar raspagem de websites.
Introdução ao Desenvolvimento de Ferramentas Personalizadas
Visão Geral da Seção: Nesta seção, o foco é na criação de uma ferramenta personalizada para raspagem de websites.
Criação da Ferramenta de Raspagem
- É necessário criar uma ferramenta personalizada para raspagem de websites.
- Criação do arquivo "scraper.py" dentro da pasta "tools" para a nova ferramenta.
- Renomeação do arquivo para corresponder à classe e adição de comentários explicativos.
- Instalação das bibliotecas requests e beautiful soup 4 necessárias para a raspagem.
Implementação da Ferramenta de Raspagem
Visão Geral da Seção: Aqui, ocorre a implementação prática da ferramenta de raspagem criada anteriormente.
Implementação do Raspador
- Ajustes no código para garantir que apenas o conteúdo textual seja extraído.
- Inclusão do código modificado na ferramenta e retorno do texto extraído.
- Verificação da passagem correta das variáveis no código.
Resolução de Problemas e Melhorias
Visão Geral da Seção: Aborda-se a resolução de problemas encontrados durante a implementação e possíveis melhorias.
Identificação e Correções
- Identificação e correção do erro relacionado à definição incorreta da ferramenta utilizada.
- Persistência do erro com a chave 'tools' indicando ajustes necessários no código.
Explorações Adicionais e Considerações Finais
Visão Geral da Seção: Explorações adicionais são realizadas, incluindo considerações finais sobre o processo.
Explorações Adicionais
Interação com Website e Scraping de Conteúdo
Visão Geral da Seção: Nesta seção, o palestrante discute a importância de usar cabeçalhos para simular um navegador ao recuperar conteúdo de um site e aborda questões relacionadas ao scraping.
Recuperando Conteúdo do Site
- Para recuperar o conteúdo do site, é essencial usar cabeçalhos para imitar um navegador. Isso é fundamental para evitar bloqueios.
- É necessário copiar o código fornecido e ajustá-lo para parecer que estamos acessando o site como um navegador real.
- Ao enfrentar problemas na recuperação do conteúdo, verifique se os cabeçalhos estão sendo passados corretamente.
Resolvendo Problemas de Scraping e Ajustando Cabeçalhos
Visão Geral da Seção: O palestrante continua a explorar desafios no scraping de sites e ajustes necessários nos cabeçalhos para obter sucesso na recuperação de conteúdo.
Ajustando Cabeçalhos e Testando Novamente
- Mesmo após ajustes nos cabeçalhos, pode ser necessário testar em diferentes sites para evitar bloqueios.
- Utilizar ferramentas de terceiros ou serviços API pode ser uma alternativa viável quando o scraping direto não funciona.
Identificando Texto Relevante em Artigos
Visão Geral da Seção: O foco agora está em identificar e extrair apenas o texto relevante dos artigos durante o scraping.
Identificando Estrutura HTML
- Ao identificar a estrutura HTML do site, é crucial distinguir as tags específicas que contêm o texto relevante dos artigos.
- A inspeção das tags no navegador pode ajudar a encontrar elementos-chave que indicam o texto principal do artigo.
Refinando Extração de Texto dos Artigos
Visão Geral da Seção: O palestrante demonstra como refinar a extração de texto dos artigos por meio da seleção precisa das tags relevantes.
Refinando Extração com Tags Específicas
- Ao modificar as instruções de busca no código, como especificado pelas tags relevantes, é possível extrair apenas o texto desejado dos artigos.