Files
espiritismo-rag-system/backend/templates/index.html
T
lgcosta b9c0c66d21 feat: implementar sistema RAG Espiritismo completo
- Stack: GPT4All + Llama 3.2 3B, LangChain, Qdrant, FastAPI, Docker
- 11 tarefas implementadas com 100% de conclusão
- Funcionalidades: chat com IA, upload PDF, bot Telegram, agendamento
- 6 livros PDF indexados (A Gênese, Livro dos Espíritos, etc.)
- Documentação rica: README, BUILD, task reports, design specs
- Deploy com Docker Compose
- Production ready

Tech stack:
- AI: GPT4All 2.4.6, Llama 3.2 3B q4_0
- Backend: FastAPI 0.115.0, Celery 5.4.0, Redis 5.2.0
- RAG: LangChain 0.3.7, Qdrant 1.11.1
- Frontend: HTML5/CSS3/Vanilla JS
- Deploy: Docker Compose

Acceptance Criteria:
✅ CPU-only, <8GB RAM, ~5GB storage
✅ Suporta upload de PDFs
✅ Interface web rica e responsiva
✅ Bot Telegram funcional
✅ Agendamento de mensagens
✅ Código limpo e documentado
✅ Deploy via Docker

Status: PRODUCTION READY
Version: 1.0.0
Date: 2026-11-01
2026-11-01 10:56:17 -03:00

71 lines
2.6 KiB
HTML

<!DOCTYPE html>
<html lang="pt-BR">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Sistema RAG Espiritismo</title>
<link rel="stylesheet" href="/static/css/style.css">
</head>
<body>
<div class="container">
<header>
<h1>📚 Sistema RAG Espiritismo</h1>
<p>Consulte livros de espiritismo com IA</p>
</header>
<div class="grid">
<!-- Chat Section -->
<div class="card chat-card">
<h2>💬 Chat com IA</h2>
<div class="chat-container">
<div id="chat-messages" class="chat-messages">
<div class="message bot">
<div class="message-content">
Olá! Sou um assistente especializado em espiritismo. Posso responder perguntas sobre os livros carregados. Como posso ajudá-lo hoje?
</div>
</div>
</div>
<input type="text" id="chat-input" placeholder="Digite sua pergunta..." />
<button id="send-btn">Enviar</button>
</div>
</div>
<!-- Upload Section -->
<div class="card upload-card">
<h2>📁 Upload de PDFs</h2>
<input type="file" id="file-input" class="file-input" accept=".pdf" />
<button id="upload-btn">Upload PDF</button>
<div id="upload-status"></div>
</div>
</div>
<div class="grid" style="margin-top: 20px;">
<!-- Books Section -->
<div class="card books-card">
<h2>📖 Livros Disponíveis</h2>
<div id="books-list">
<p style="color: #666;">Carregando livros...</p>
</div>
</div>
<!-- Schedules Section -->
<div class="card schedules-card">
<h2>⏰ Agendar Mensagens</h2>
<div style="margin-bottom: 15px;">
<input type="datetime-local" id="schedule-time" />
<select id="schedule-book">
<option value="">Todos os livros</option>
</select>
<button id="add-schedule-btn">Adicionar Agendamento</button>
</div>
<div id="schedules-list">
<p style="color: #666;">Nenhum agendamento.</p>
</div>
</div>
</div>
</div>
<script src="/static/js/script.js"></script>
</body>
</html>