Você faz uma pergunta em linguagem natural; agentes de IA coletam dados de redes e notícias, debatem num fórum e entregam um relatório aprofundado.
# 1) configure o .env cp .env.example .env # preencha banco (PostgreSQL) e LLM # 2) suba tudo com Docker docker compose up -d # acesse http://localhost:5000
BettaFish (codinome WeiYu) é um sistema de análise de opinião pública baseado em multi-agentes. Você expressa sua necessidade como numa conversa e os agentes analisam plataformas de redes sociais e grandes volumes de comentários. Este é o fork BR/LATAM: interface, logs e prompts 100% em português, busca web via Tavily e 24 fontes RSS (Brasil, EUA, Europa, América do Sul).
Query (busca web), Media (multimodal), Insight (mineração de base privada) e Report (relatório em múltiplas rodadas) trabalham em paralelo.
O ForumEngine atua como moderador: os agentes debatem cadeias de pensamento entre rodadas, evitando vieses de um modelo só.
O Report Agent monta uma representação intermediária (IR) e renderiza um HTML interativo — com export para PDF e Markdown.
Os três agentes de análise iniciam em paralelo, fazem pesquisa preliminar, entram num loop de fórum com pesquisa aprofundada e, ao final, o Report Agent consolida tudo.
O MindSpider (crawlers) roda separado: extrai tópicos em alta e faz crawling profundo por plataforma. Os dados vão para o banco.
Modelos próprios (BERT/GPT-2 LoRA, Qwen pequeno, ML clássico) com suporte multilíngue, incluindo português.
O caminho mais simples é Docker. Para rodar a partir do código, você precisa de Python 3.9+, um banco e chaves de LLM compatíveis com a API da OpenAI.
Copie o exemplo e preencha banco e LLM. O banco se autoinicializa ao rodar o app.
# config cp .env.example .env # DB_HOST, DB_USER, *_API_KEY...
PostgreSQL recomendado (MySQL também). No Docker, o serviço se chama `db`.
# no .env DB_DIALECT=postgresql DB_HOST=db DB_PORT=5432
Se for rodar do fonte, crie um ambiente Python 3.11 com conda ou uv.
conda create -n betta python=3.11 conda activate betta
Caminho A: Docker (mais rápido). Caminho B (passos 3–5): a partir do código, com mais controle.
Copie o `.env.example`, renomeie para `.env` e preencha banco e os parâmetros de LLM (todas as chamadas seguem o padrão da API da OpenAI).
cp .env.example .env # edite DB_* e as chaves de cada Agent
Inicia todos os serviços em segundo plano e acessa o sistema completo no navegador.
docker compose up -d # http://localhost:5000
Crie o ambiente, instale as dependências e o driver do Playwright (usado pelos crawlers).
pip install -r requirements.txt playwright install chromium
Com o ambiente ativo, rode o app principal e acesse a interface.
python app.py # http://localhost:5000 # ou um agente individual via Streamlit: streamlit run SingleEngineApp/query_engine_streamlit_app.py --server.port 8503
O crawler MindSpider roda separado. O `report_engine_only.py` regenera só o relatório a partir dos logs mais recentes.
cd MindSpider python main.py --setup python main.py --complete --date 2024-01-20 # só o relatório, com tema: python report_engine_only.py --query "reputação da marca X"
Começa pela opinião pública, mas o framework é genérico e extensível.
Pergunte sobre a percepção pública de uma marca ou instituição e receba um relatório aprofundado com fontes, sentimento e recomendações.
Acompanhe um assunto em alta nas redes e notícias, com crawling profundo por plataforma alimentando o banco.
Trocando prompts e ferramentas dos agentes, dá para adaptar para análise setorial — financeiro, por exemplo.
O Insight Agent minera bases internas (somente leitura) e cruza com a opinião aberta — "tendências externas + insights internos".
O que já mudou e para onde a adaptação vai.