--- title: PARA.AI emoji: 🏃 colorFrom: yellow colorTo: green sdk: docker pinned: false license: agpl-3.0 --- # ⚖️ para.AI - Análise Jurisprudencial com IA Sistema completo de análise automatizada de acórdãos jurídicos usando **9 especialistas IA** (LLMs). ## 🚀 Funcionalidades - 📤 **Upload de lotes** (arquivos JSONL) - 🤖 **9 processadores especializados** para análise completa - 📦 **Download de resultados** em TAR.GZ - 🐘 **PostgreSQL embutido** (temporário para testes) - 🔍 **API completa para debug** ## 📚 Documentação Acesse a **documentação interativa** em: [/api/docs](/api/docs) ## ⚡ Quick Start ### 1. Testar API ```bash curl https://seu-space.hf.space/api/v1/health ``` ### 2. Upload de acórdãos ```bash # Criar arquivo JSONL de teste cat > acordaos.jsonl << 'EOF' {"acordao_id":"001","tribunal":"TJPR","ementa":"Teste ementa","integra":"Conteúdo completo do acórdão"} EOF # Fazer upload curl -X POST "https://seu-space.hf.space/api/v1/process/upload" \ -F "file=@acordaos.jsonl" \ -F "llm_provider=groq" \ -F "enable_parallel=true" ``` ### 3. Consultar status ```bash curl https://seu-space.hf.space/api/v1/process/status/TASK_ID ``` ### 4. Download de resultados ```bash curl -O https://seu-space.hf.space/api/v1/process/download/TASK_ID ``` ## 🗄️ Banco de Dados ### Modo 1: PostgreSQL Temporário (Padrão) Por padrão, um **PostgreSQL local** é iniciado dentro do container: - ✅ Pronto para uso imediatamente - ✅ Sem configuração necessária - ⚠️ **Dados são perdidos ao reiniciar** ### Modo 2: Banco Externo (Recomendado para produção) Configure um banco PostgreSQL externo usando **Repository Secrets**: #### Opção A: Neon (Recomendado - Grátis) 1. Acesse [neon.tech](https://neon.tech) 2. Crie projeto gratuito 3. Copie connection string 4. Em **Settings → Repository Secrets**, adicione: ``` DATABASE_URL=postgresql://usuario:senha@ep-xxx.neon.tech/para_ai?sslmode=require ``` #### Opção B: Supabase (Grátis) 1. Acesse [supabase.com](https://supabase.com) 2. Crie projeto 3. Em Database → Connection string, copie 4. Adicione nas Secrets: ``` DATABASE_URL=postgresql://postgres:[senha]@db.xxx.supabase.co:5432/postgres ``` ## 🔑 Configuração de LLM Configure pelo menos uma **API key de LLM** nas Repository Secrets: ### Groq (Recomendado - Rápido e barato) ``` GROQ_API_KEY=gsk_sua_key_aqui ``` Obtenha em: [console.groq.com](https://console.groq.com/) ### OpenAI (Opcional) ``` OPENAI_API_KEY=sk-sua_key_aqui ``` ### Anthropic (Opcional) ``` ANTHROPIC_API_KEY=sk-ant-sua_key_aqui ``` ## ⚙️ Repository Secrets Configure em **Settings → Repository Secrets**: ### Obrigatórios - `GROQ_API_KEY` - API key do Groq (ou OpenAI/Anthropic) ### Opcionais (para produção) - `DATABASE_URL` - PostgreSQL externo (recomendado) - `APP_ENV=production` - `LOG_LEVEL=INFO` - `ENABLE_CACHE=true` - `REDIS_URL` - Se usar cache Redis ## 🧪 Endpoints Principais | Método | Endpoint | Descrição | |--------|----------|-----------| | GET | `/api/v1/health` | Health check | | POST | `/api/v1/process/upload` | Upload de JSONL | | GET | `/api/v1/process/status/{id}` | Status da task | | GET | `/api/v1/process/download/{id}` | Download resultados | | GET | `/api/v1/debug/info` | Info do sistema | | GET | `/api/docs` | Documentação Swagger | ## 📋 Formato JSONL Cada linha deve ser um JSON com a estrutura: ```json { "acordao_id": "identificador-unico", "tribunal": "TJPR", "numero": "0000001-00.2025.8.16.0000", "ementa": "Texto da ementa...", "integra": "Texto completo do acórdão...", "relator": "Des. Nome do Relator", "data_julgamento": "2025-01-15" } ``` **Campos obrigatórios:** `ementa`, `integra` ## 🤖 Especialistas IA O sistema processa cada acórdão com **9 especialistas**: 1. **Metadados** - Extração de informações estruturadas 2. **Relatório** - Análise do relatório processual 3. **Fundamentação** - Análise da fundamentação legal 4. **Decisão** - Análise do dispositivo decisório 5. **Auditoria** - Verificação de qualidade 6. **Arquivo Relacional** - Estruturação para BD 7. **Segmentação Sintática** - Análise linguística 8. **Análise Contextual** - Contexto jurídico 9. **Transcrição 3-Partite** - Estruturação tripartite ## 📊 Métricas Veja métricas de processamento em: - `/api/v1/debug/info` - Info do sistema - `/api/v1/debug/tasks` - Tasks ativas ## ⚠️ Limitações (Modo PostgreSQL Temporário) - **Dados não persistem** entre reinicializações - **Limite de armazenamento** do container - **Performance reduzida** vs banco dedicado Para produção, **use banco externo** (Neon/Supabase). ## 🔒 Segurança Para produção, configure nas Secrets: ``` APP_ENV=production DEBUG=false REQUIRE_API_KEY=true VALID_API_KEYS=sua_key_super_secreta ``` ## 📖 Mais Informações - **Documentação completa:** [/api/docs](/api/docs) - **Health Check:** [/api/v1/health](/api/v1/health) - **Repositório:** [GitHub](seu-repo) --- **Desenvolvido com ❤️ para análise jurisprudencial automatizada**