Skip to content

dias-andre/feedback-analyzer

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

57 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Feedback Analyzer

Powered by Gemini

Java Spring Boot PostgreSQL Docker

Processamento Inteligente em Lote com IA

Este projeto é uma solução de backend desenvolvida em Java com Spring Boot e Spring Batch para analisar e categorizar feedbacks de clientes em larga escala. A aplicação integra-se à API do Google Gemini (via LangChain4j) para realizar análise de sentimento e extração de insights automatizada.

O diferencial técnico do projeto reside na orquestração eficiente do processamento em lote. Foi implementada uma estratégia customizada de controle de fluxo e throttling no Spring Batch para respeitar os limites rígidos de Rate Limiting (RPM) dos modelos de IA, garantindo a ingestão contínua de dados sem erros de exaustão de recursos. A arquitetura segue boas práticas de design com uso de Java Records, DTOs blindados e projeções JPA otimizadas para performance.

Como testar?

Ops: Certifique-se de ter o Docker e o Docker Compose instalados em seu computador.

1. Clone o Repositório:

Abra seu Terminal/Command-Prompt e execute os comandos abaixo:

# Clone o repositório
git clone https://github.com/https-dre/feedback-analyzer.git

# Entre na pasta
cd feedback-analyzer

2. Defina variáveis de ambiente:

Em um arquivo .env:

DB_URL=postgresql://localhost:5432/feedback-analyzer # URL do Banco de Dados PostgreSQL
DB_USER=root # usuário do banco de dados
DB_PASSWORD=root # senha de acesso do seu usuário
GEMINI_API_KEY=... # uma chave de API do Gemini.

Ops:

  • Não se esqueça de criar o banco corretamente;
  • Seu usuário deve ter permissão para criar e gerir tabelas (necessário para as Migrations do Flyway).

3. Verifique seu application.yaml:

Configurações recomendadas para testes:

feedback:
    batch:
        chunk-size: 1
        sleep-duration: 15000 # Delay entre as chamadas para o Gemini (criado para não exceder os limites de API)

4. Execute o projeto:

Usando o docker-compose, podemos executar a aplicação e o banco de dados facilmente, usando o comando abaixo:

docker-compose up -d

Ao executar pela primeira vez, o Flyway e o Spring Batch devem executar suas migrações corretamente.

A documentação da API estará disponível em: http://localhost:8080/docs

About

SaaS-ready backend to categorize, summarize, and analyze sentiment of customer feedback using Gemini. Built with Spring Batch.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors