cidadao.ai-backend

Sistema multi-agente de IA que transforma dados brutos do Portal da Transparência em investigações inteligentes, democratizando o acesso à informação pública através de processamento de linguagem natural de última geração.

https://github.com/anderson-ufrj/cidadao.ai-backend

Science Score: 44.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
    Found CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
  • Academic publication links
  • Academic email domains
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (7.8%) to scientific vocabulary
Last synced: 6 months ago · JSON representation ·

Repository

Sistema multi-agente de IA que transforma dados brutos do Portal da Transparência em investigações inteligentes, democratizando o acesso à informação pública através de processamento de linguagem natural de última geração.

Basic Info
  • Host: GitHub
  • Owner: anderson-ufrj
  • License: apache-2.0
  • Language: Python
  • Default Branch: main
  • Size: 5.17 MB
Statistics
  • Stars: 0
  • Watchers: 0
  • Forks: 0
  • Open Issues: 0
  • Releases: 0
Created 8 months ago · Last pushed 7 months ago
Metadata Files
Readme Changelog License Citation Security

README.md


title: Cidadão.AI Backend emoji: 🏛️ colorFrom: blue colorTo: green sdk: docker app_file: app.py pinned: false

license: mit

🏛️ Cidadão.AI - Backend

Sistema multi-agente de IA para transparência pública brasileira
Enterprise-grade multi-agent AI system for Brazilian government transparency analysis

Open Gov License Python 3.11+ FastAPI

🚀 Quick Start

🎯 Deployment Options

HuggingFace Spaces (Cloud): ```bash

Uses simplified app.py for fast cloud deployment

Automatic deployment via Git push to HuggingFace

Optimized for minimal dependencies and fast startup

```

Local Development: ```bash

Full-featured version with complete agent system

python -m src.api.app

OR using uvicorn directly:

uvicorn src.api.app:app --reload --port 8000 ```

🔑 Dados Reais vs Demo

O sistema detecta automaticamente se você tem acesso à API do Portal da Transparência:

  • ✅ Com TRANSPARENCY_API_KEY: Análise de dados reais de contratos públicos
  • 🔄 Sem chave API: Funciona com dados demo para demonstração

API Endpoints

```bash

Status do sistema (mostra tipo de dados)

GET /api/status

Obter dados de teste

GET /api/agents/zumbi/test

Executar investigação com detecção de anomalias

POST /api/agents/zumbi/investigate { "query": "Analisar contratos de informática com valores suspeitos", "datasource": "contracts", "maxresults": 100 }

Acessar métricas Prometheus

GET /metrics ```

🤖 Agente Zumbi dos Palmares - Investigador

🎯 Capacidades de Análise

  • Detecção de preços suspeitos usando análise estatística Z-score
  • Concentração de fornecedores (threshold 40% = suspeito)
  • Análise de outliers em contratos públicos
  • Processamento em tempo real de dados governamentais

📊 Tipos de Anomalias Detectadas

  • price_suspicious - Contratos com preços muito acima da média
  • price_critical - Contratos com preços extremamente elevados
  • vendor_concentration - Concentração excessiva de um fornecedor

🔍 Exemplo de Investigação

Request

json { "query": "Investigar contratos de informática suspeitos", "data_source": "contracts", "max_results": 50 }

Response (Dados Reais)

json { "status": "completed", "query": "Investigar contratos de informática suspeitos", "anomalies_found": 3, "confidence_score": 0.87, "processing_time_ms": 2340, "results": [ { "contract_id": "12345", "description": "Aquisição de servidores de alta performance", "value": 850000.00, "supplier": "TechCorp Solutions LTDA", "organization": "26000", "anomaly_type": "price_critical", "risk_level": "high", "explanation": "Valor R$ 850.000,00 está 3.2 desvios padrão acima da média (R$ 420.000,00)", "z_score": 3.2, "mean_value": 420000.00 } ] }

🛡️ Recursos Enterprise

🏗️ Arquitetura

  • Detecção de anomalias baseada em estatística com algoritmos Z-score
  • Sistema de fallback inteligente para demonstrações
  • API REST assíncrona com FastAPI de alta performance
  • Métricas Prometheus para observabilidade completa

🔒 Segurança

  • Autenticação via environment variables para APIs governamentais
  • Rate limiting automático para APIs externas
  • Error handling robusto com fallback gracioso
  • Logging estruturado para auditoria

📊 Observabilidade

  • Métricas Prometheus implementadas:
    • cidadao_ai_requests_total - Total de requisições
    • cidadao_ai_investigations_total - Investigações realizadas
    • cidadao_ai_anomalies_detected_total - Anomalias detectadas
  • Health checks em /health e /api/status
  • Documentação automática em /docs

🎯 Casos de Uso

Detecção de Anomalias em Contratos Públicos

  • Superfaturamento: Contratos com valores muito acima da média de mercado
  • Direcionamento: Concentração excessiva de contratos em poucos fornecedores
  • Padrões suspeitos: Análise estatística de distribuições de preços

Análise de Transparência

  • 🏛️ Ministério da Saúde (código 26000)
  • 🏢 Presidência da República (código 20000)
  • 📚 Ministério da Educação (código 25000)
  • 📊 Análise customizada por órgão e período

📈 Performance

  • Latência: <2s para análise de contratos reais (~50ms para dados cached)
  • Cache Inteligente: TTL de 1 hora reduz chamadas à API em até 100%
  • Throughput: Suporte a análise de até 1000 contratos
  • Confiabilidade: Sistema de fallback para alta disponibilidade
  • Escalabilidade: Arquitetura assíncrona para múltiplas investigações

🔗 Links

  • 📚 API Docs: /docs (documentação interativa)
  • 📊 Status: /api/status (tipo de dados e capacidades)
  • 🔍 Test Data: /api/agents/zumbi/test (dados para testes)
  • 📈 Metrics: /metrics (métricas Prometheus)
  • 💾 Cache Stats: /api/cache/stats (estatísticas de performance)

👨‍💻 Autor

Anderson Henrique da Silva
📧 andersonhs27@gmail.com | 💻 GitHub


🌟 Democratizando a Transparência Pública com IA 🌟

Open Source • Ética • Explicável • Brasileira

Owner

  • Name: Anderson Henrique Da Silva
  • Login: anderson-ufrj
  • Kind: user
  • Location: Brasil
  • Company: Ruvixx, Inc

Citation (CITATION.cff)

cff-version: 1.2.0
message: "If you use this software, please cite it as below."
authors:
  - family-names: "Silva"
    given-names: "Anderson Henrique da"
    orcid: "https://orcid.org/0000-0000-0000-0000"
    email: "andersonhs27@gmail.com"
    affiliation: "Instituto Federal de Educação, Ciência e Tecnologia do Sul de Minas Gerais - Campus Muzambinho"
title: "Cidadão.AI: Multi-Agent AI System for Brazilian Government Transparency Analysis"
version: 1.0.0
doi: 10.5281/zenodo.0000000
date-released: 2025-01-20
url: "https://github.com/anderson-ufrj/cidadao.ai"
repository-code: "https://github.com/anderson-ufrj/cidadao.ai"
license: Apache-2.0
type: software
keywords:
  - artificial-intelligence
  - transparency
  - government
  - multi-agent-system
  - brazil
  - public-data
  - corruption-detection
  - anomaly-detection
  - SDG16
  - open-government
  - civic-tech
  - langchain
  - fastapi
  - machine-learning
abstract: |
  Cidadão.AI is an innovative platform that uses specialized artificial intelligence
  to democratize access to Brazilian public data. The system employs a sophisticated
  multi-agent architecture to analyze government contracts, bidding processes, public
  expenses, and other government documents. It features eight specialized AI agents
  working collaboratively to detect anomalies, analyze patterns, and generate
  comprehensive reports, contributing directly to SDG 16: Peace, Justice and Strong
  Institutions. The platform provides both web interfaces (Gradio and Streamlit) and
  a REST API for programmatic access, making government transparency data accessible
  to citizens, journalists, researchers, and civil society organizations.
references:
  - type: software
    authors:
      - name: "LangChain Contributors"
    title: "LangChain: Building applications with LLMs through composability"
    year: 2023
    url: "https://github.com/langchain-ai/langchain"
  - type: software
    authors:
      - name: "FastAPI Contributors"
    title: "FastAPI: Modern, fast web framework for building APIs"
    year: 2023
    url: "https://github.com/tiangolo/fastapi"
  - type: article
    authors:
      - family-names: "Vaswani"
        given-names: "Ashish"
      - family-names: "Shazeer"
        given-names: "Noam"
      - family-names: "Parmar"
        given-names: "Niki"
    title: "Attention is All You Need"
    journal: "Advances in Neural Information Processing Systems"
    volume: 30
    year: 2017
  - type: data
    authors:
      - name: "Controladoria-Geral da União"
    title: "Portal da Transparência do Governo Federal"
    year: 2025
    url: "https://portaldatransparencia.gov.br"
preferred-citation:
  type: software
  authors:
    - family-names: "Silva"
      given-names: "Anderson Henrique da"
  title: "Cidadão.AI: Multi-Agent AI System for Brazilian Government Transparency Analysis"
  year: 2025
  doi: 10.5281/zenodo.0000000
  url: "https://github.com/anderson-ufrj/cidadao.ai"

GitHub Events

Total
  • Watch event: 2
  • Delete event: 2
  • Push event: 53
  • Fork event: 1
  • Create event: 1
Last Year
  • Watch event: 2
  • Delete event: 2
  • Push event: 53
  • Fork event: 1
  • Create event: 1

Dependencies

.github/workflows/ci-cd.yml actions
  • 8398a7/action-slack v3 composite
  • actions/checkout v4 composite
  • actions/setup-python v4 composite
  • actions/upload-artifact v3 composite
  • aquasecurity/trivy-action master composite
  • aws-actions/configure-aws-credentials v4 composite
  • codecov/codecov-action v3 composite
  • docker/build-push-action v5 composite
  • docker/login-action v3 composite
  • docker/metadata-action v5 composite
  • docker/setup-buildx-action v3 composite
  • github/codeql-action/upload-sarif v2 composite
  • snyk/actions/python master composite
  • zaproxy/action-full-scan v0.7.0 composite
  • postgres 15-alpine docker
  • redis 7-alpine docker
deployment/docker-compose.yml docker
  • chromadb/chroma latest
  • docker.elastic.co/elasticsearch/elasticsearch 8.11.3
  • docker.elastic.co/kibana/kibana 8.11.3
  • dpage/pgadmin4 latest
  • mailhog/mailhog latest
  • minio/minio latest
  • postgres 16-alpine
  • redis 7-alpine
pyproject.toml pypi
  • aiohttp >=3.9.1
  • alembic >=1.13.1
  • asyncpg >=0.29.0
  • celery [redis]>=5.3.4
  • chromadb >=0.4.22
  • faiss-cpu >=1.7.4
  • fastapi >=0.109.0
  • flower >=2.0.1
  • hdbscan >=0.8.33
  • httpx >=0.26.0
  • langchain >=0.1.0
  • langchain-community >=0.0.12
  • langchain-openai >=0.0.5
  • lime >=0.2.0.1
  • numpy >=1.26.3
  • opentelemetry-api >=1.22.0
  • opentelemetry-instrumentation-fastapi >=0.43b0
  • opentelemetry-sdk >=1.22.0
  • pandas >=2.1.4
  • passlib [bcrypt]>=1.7.4
  • pendulum >=3.0.0
  • prometheus-client >=0.19.0
  • prophet >=1.1.5
  • pydantic >=2.5.0
  • pydantic-settings >=2.1.0
  • python-dotenv >=1.0.0
  • python-jose [cryptography]>=3.3.0
  • python-multipart >=0.0.6
  • redis >=5.0.1
  • rich >=13.7.0
  • scikit-learn >=1.3.2
  • scipy >=1.11.4
  • shap >=0.43.0
  • sqlalchemy >=2.0.25
  • structlog >=24.1.0
  • tenacity >=8.2.3
  • torch >=2.1.0
  • transformers >=4.36.0
  • typer >=0.9.0
  • umap-learn >=0.5.5
  • uvicorn [standard]>=0.26.0
requirements/base.txt pypi
  • gradio >=5.0.0
  • groq >=0.10.0
  • httpx >=0.27.0
  • numpy >=1.21.0
  • pandas >=2.0.0
  • pillow >=10.0.0
  • pydantic >=2.5.0
  • python-dateutil >=2.8.0
  • python-dotenv >=1.0.0
  • scipy >=1.9.0
requirements/production.txt pypi
  • aiocache >=0.12.2
  • aiohttp >=3.9.0
  • asyncpg >=0.29.0
  • click >=8.1.7
  • cryptography >=41.0.7
  • fastapi >=0.104.0
  • gunicorn >=21.2.0
  • httpx >=0.25.0
  • huggingface-hub >=0.19.0
  • mlflow >=2.8.0
  • msgpack >=1.0.7
  • numpy >=1.24.0
  • opentelemetry-api >=1.21.0
  • opentelemetry-exporter-jaeger >=1.21.0
  • opentelemetry-exporter-prometheus >=1.12.0
  • opentelemetry-instrumentation-fastapi >=0.42b0
  • opentelemetry-instrumentation-httpx >=0.42b0
  • opentelemetry-instrumentation-redis >=0.42b0
  • opentelemetry-instrumentation-sqlalchemy >=0.42b0
  • opentelemetry-sdk >=1.21.0
  • pandas >=2.1.0
  • passlib >=1.7.4
  • prometheus-client >=0.19.0
  • psutil >=5.9.6
  • pydantic >=2.4.0
  • python-dotenv >=1.0.0
  • python-jose >=3.3.0
  • python-multipart >=0.0.6
  • redis >=5.0.1
  • rich >=13.7.0
  • scikit-learn >=1.3.0
  • sqlalchemy >=2.0.23
  • structlog >=23.2.0
  • tokenizers >=0.15.0
  • torch >=2.1.0
  • transformers >=4.35.0
  • typer >=0.9.0
  • uvicorn >=0.24.0
  • websockets >=12.0
requirements.txt pypi
  • asyncio-utils >=0.1.0
  • gradio >=5.0.0
  • groq >=0.4.0
  • httpx >=0.25.0
  • numpy >=1.24.0
  • pandas >=2.0.0
  • plotly >=5.17.0
  • pydantic >=2.0.0
  • pydantic-settings >=2.0.0
  • python-dateutil >=2.8.2
  • python-dotenv >=1.0.0
  • requests >=2.31.0
.github/workflows/basic-checks.yml actions
  • actions/checkout v4 composite
  • actions/setup-python v5 composite
.github/workflows/disabled/ci-cd.yml actions
  • 8398a7/action-slack v3 composite
  • actions/checkout v4 composite
  • actions/setup-python v4 composite
  • actions/upload-artifact v3 composite
  • aquasecurity/trivy-action master composite
  • aws-actions/configure-aws-credentials v4 composite
  • codecov/codecov-action v3 composite
  • docker/build-push-action v5 composite
  • docker/login-action v3 composite
  • docker/metadata-action v5 composite
  • docker/setup-buildx-action v3 composite
  • github/codeql-action/upload-sarif v2 composite
  • snyk/actions/python master composite
  • zaproxy/action-full-scan v0.7.0 composite
  • postgres 15-alpine docker
  • redis 7-alpine docker
.github/workflows/disabled/deploy-free.yml actions
  • actions/checkout v3 composite
  • cloudflare/wrangler-action v3 composite
  • peaceiris/actions-gh-pages v3 composite
.github/workflows/disabled/deploy-hf.yml actions
  • actions/checkout v3 composite
.github/workflows/readme-sync.yml actions
  • actions/checkout v4 composite
  • actions/setup-python v4 composite
Dockerfile docker
  • python 3.11-slim build