Sobre o Sistema

RAG avançado com conformidade UVA AAIP para acervos arquivísticos

O que Ă© este sistema?

Este Ă© um Proof of Concept (PoC) de um sistema RAG (Retrieval-Augmented Generation) avançado, aplicado ao acervo de Recortes de Jornais da Reitoria da UFBA — um conjunto de 29.222 artigos de jornais das dĂ©cadas de 1980-1990, digitalizados por OCR.

O sistema demonstra tĂ©cnicas avançadas de RAG e conformidade com o UVA AAIP v1.1 (Universal Virtual Archives — AI Access & Ingestion Protocol), um protocolo para uso Ă©tico de IA em acervos arquivĂ­sticos.

Técnicas RAG Implementadas

🔍 Busca Híbrida

Combinação de BM25 (busca lexical) com ChromaDB vector search (busca semùntica), fusionados por Reciprocal Rank Fusion (RRF).

🌐 Embedding Multilingual

Modelo paraphrase-multilingual-MiniLM-L12-v2 — otimizado para portuguĂȘs brasileiro, substituindo o modelo inglĂȘs inadequado do RAG ingĂȘnuo.

📝 Citation Enforcement

Cada resposta de IA Ă© acompanhada de citação obrigatĂłria com 5 campos do UVA AAIP ApĂȘndice B: Coleção, Item, ReferĂȘncia, CustĂłdia e Link.

🔒 Controle de Acesso

Filtro AI_ACCESS_LEVEL por documento: "retrieval", "training" ou "none". Documentos restritos nunca sĂŁo recuperados por IA.

📋 Registro de Uso

AIUsageLog — registro automĂĄtico de cada consulta: query, documentos recuperados, citaçÔes mostradas, modelo e IP do usuĂĄrio.

✅ ProveniĂȘncia

AI_PROVENANCE_CHECK — verificação automĂĄtica de que todos os documentos possuem os metadados obrigatĂłrios do ApĂȘndice B.

Stack TecnolĂłgica

  • Backend: Python 3.11 + FastAPI + ChromaDB + SQLite
  • Frontend: Jinja2 + Alpine.js + Bulma CSS
  • Embedding: paraphrase-multilingual-MiniLM-L12-v2 (CPU)
  • LLM: Qwen3.5 via Ollama Cloud
  • Busca: BM25Okapi + ChromaDB Vector + RRF (k=60)

Comparação: RAG IngĂȘnuo vs. RAG Avançado

Aspecto RAG IngĂȘnuo (Gradio) RAG Avançado (Este PoC)
Busca Vetor apenas BM25 + Vetor + RRF
Embedding all-MiniLM-L6-v2 (inglĂȘs) paraphrase-multilingual (PT-BR)
Citação Nenhuma 5 campos UVA ApĂȘndice B
Controle de acesso Nenhum ai_access_level por documento
Registro de uso Nenhum AIUsageLog completo
ProveniĂȘncia NĂŁo verificada Verificação automĂĄtica
Interface Gradio (limitado) FastAPI + Alpine.js (extensĂ­vel)

UVA AAIP — Pontos Atendidos

  • Ponto 1 (AI_ACCESS_LEVEL): ✅ — Cada documento tem ai_access_level definido
  • Ponto 2 (Modelo Django): ❌ — Fora do escopo do PoC (aplica-se ao Farinha)
  • Ponto 3 (AI_PROVENANCE_CHECK): ✅ — Verificação automĂĄtica de metadados
  • Ponto 4 (AIUsageLog): ✅ — Registro de todas as consultas
  • Ponto 5 (Citation Enforcement): ✅ — CitaçÔes obrigatĂłrias ApĂȘndice B
  • Ponto 6 (AI Use Decision Flow): ✅ — Wizard de 5 passos ApĂȘndice A
  • Ponto 7 (Public AI Policy): ✅ — PĂĄgina /ai-policy/ pĂșblica

Recortes RAG PoC — UVA AAIP v1.1 (DOI: 10.18130/5dqf-9w86, CC BY 4.0)