https://github.com/juliopeixoto/crewai-example
crewai multiagent example
https://github.com/juliopeixoto/crewai-example
ai celery celerybeat crewai django django-application django-framework docker docker-compose generative-ai heroku heroku-app heroku-deployment multiagent multiagent-systems python
Last synced: about 1 month ago
JSON representation
crewai multiagent example
- Host: GitHub
- URL: https://github.com/juliopeixoto/crewai-example
- Owner: JulioPeixoto
- Created: 2025-02-13T21:02:04.000Z (2 months ago)
- Default Branch: main
- Last Pushed: 2025-03-20T21:47:54.000Z (about 1 month ago)
- Last Synced: 2025-03-21T18:38:29.571Z (about 1 month ago)
- Topics: ai, celery, celerybeat, crewai, django, django-application, django-framework, docker, docker-compose, generative-ai, heroku, heroku-app, heroku-deployment, multiagent, multiagent-systems, python
- Language: Python
- Homepage: https://crewai-example-a3b8319f173c.herokuapp.com/
- Size: 931 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Changelog: news/__init__.py
Awesome Lists containing this project
README
# Minimal News - Sistema Multiagente com CrewAI

Um sistema de geração automática de notícias de tecnologia utilizando agentes de IA orquestrados pelo framework CrewAI.
## 🤖 Sistemas Multiagentes
Sistemas multiagentes são compostos por múltiplos agentes de IA que interagem em um ambiente compartilhado. Cada agente:
- Possui um papel específico e especializado
- Trabalha de forma autônoma com objetivos próprios
- Colabora com outros agentes para resolver problemas complexos
- Compartilha informações e resultadosA principal vantagem dos sistemas multiagentes é a capacidade de dividir problemas complexos em tarefas menores e especializadas, permitindo que cada agente se concentre em uma parte específica do problema.
## 🚢 CrewAI Framework
[CrewAI](https://github.com/crewAIInc/crewAI) é um framework de código aberto para orquestrar agentes de IA em fluxos de trabalho colaborativos. Principais características:
- **Agentes Especializados**: Cada agente tem um papel, objetivo e conjunto de ferramentas específicos
- **Fluxos de Trabalho**: Orquestração de tarefas sequenciais ou paralelas
- **Ferramentas Integradas**: Acesso a APIs, pesquisa web e outras capacidades
- **Memória Compartilhada**: Compartilhamento de informações entre agentesO CrewAI gerencia a comunicação entre agentes e garante que cada um receba os inputs necessários para realizar sua tarefa, criando um sistema coeso e eficiente.
## 📰 Sistema de Geração de Notícias
O Minimal News utiliza um sistema multiagente baseado no CrewAI para gerar notícias de tecnologia de forma autônoma. O fluxo de trabalho é composto por três agentes especializados:
### Agentes
1. **Pesquisador**: Inicia o processo buscando notícias tecnológicas relevantes. Utiliza a API do Google Search para encontrar informações atuais.
2. **Analista**: Recebe os resultados da pesquisa e analisa as tendências e implicações das notícias. Cria um contexto mais amplo para cada aspecto.
3. **Redator**: Transforma as análises em artigos coesos. Cada ângulo da notícia principal é desenvolvido em um texto independente.
### Fluxo de Tarefas
O processo segue um fluxo bem definido:
```
Pesquisar Notícias → Análise de Tendências → Redigir Notícias → Revisar e Consolidar
```1. **Pesquisar Notícias**: Busca notícias relevantes de tecnologia e identifica diferentes ângulos para exploração.
2. **Análise de Tendências**: Analisa as tendências tecnológicas emergentes relacionadas às notícias.
3. **Redigir Notícias**: Cria artigos em markdown a partir das notícias, cada um explorando um aspecto diferente.
4. **Revisar e Consolidar**: Revisa, formata e consolida os artigos em um único documento coeso.## 🔧 Tecnologias Utilizadas
- **CrewAI**: Framework para orquestração de agentes
- **LangChain**: Biblioteca para construção de aplicações com LLMs
- **Django**: Framework web para o backend
- **Celery**: Sistema de filas para tarefas assíncronas
- **PostgreSQL** (NeonDB): Banco de dados SQL
- **Redis**: Cache e broker para o Celery
- **Docker**: Containerização da aplicação
- **Heroku**: Plataforma de deploy## 🚀 Como Contribuir
### Pré-requisitos
- Python 3.11+
- Docker e Docker Compose
- Conta na OpenAI (para API key)
- Conta na Serper (para API key de pesquisa)### Configuração Local
1. **Clone o repositório**
```bash
git clone https://github.com/seu-usuario/crewai-example.git
cd crewai-example
```2. **Configure as variáveis de ambiente**
Crie um arquivo `.env` na raiz do projeto:
```
DEBUG=True
SECRET_KEY=sua-chave-secreta
POSTGRES_DATABASE=minimal_news
POSTGRES_USER=postgres
POSTGRES_PASSWORD=postgres
POSTGRES_HOST=db
OPENAI_API_KEY=sua-chave-openai
SERPER_API_KEY=sua-chave-serper
```3. **Inicie os containers com Docker**
```bash
docker-compose up -d
```4. **Acesse a aplicação**
Abra seu navegador e acesse `http://localhost:8000`
### Executando Tarefas
Para gerar notícias manualmente:
```bash
docker-compose exec web python manage.py gerar_noticias
```Para especificar sites de pesquisa:
```bash
docker-compose exec web python manage.py gerar_noticias --sites wired.com techcrunch.com
```## 📝 Licença
Este projeto está licenciado sob a licença MIT - veja o arquivo LICENSE para mais detalhes.
---
Desenvolvido com ❤️ usando CrewAI e Django