Proyecto de Análisis de Datos con IA

FacturIA
Sistema de Automatización de Facturas con IA

Sistema automatizado 100% gratuito para procesar facturas en PDF (texto e imágenes), extraer información con Google Gemini Vision, almacenar datos en SQLite y visualizarlos en Power BI. Compatible con fotos de WhatsApp y facturas escaneadas.

FacturIA Dashboard

📋 Descripción del Proyecto

FacturIA es un sistema completo de automatización diseñado para optimizar la gestión documental de facturas en formato PDF. El proyecto integra tecnologías modernas de análisis de datos e inteligencia artificial para transformar documentos no estructurados en información valiosa para la toma de decisiones financieras.

Origen: Este proyecto fue desarrollado a partir de una práctica del curso "Introductorio a Data Analytics" de TuPrimeraExperiencia.com, donde adapté y amplié la propuesta original incorporando mejoras en la estructura del código, presentación de resultados y documentación profesional.

🎯 Problema que Resuelve

Las empresas reciben decenas o cientos de facturas mensualmente en formato PDF. El procesamiento manual de estos documentos consume tiempo valioso y es propenso a errores. FacturIA automatiza completamente este proceso:

  • Antes: Abrir cada PDF, copiar datos manualmente a Excel, verificar importes, clasificar por proveedor (horas de trabajo)
  • Con FacturIA: Procesar automáticamente todas las facturas en minutos, extraer datos con IA, almacenar en base de datos y visualizar en dashboards interactivos

⚙️ Cómo Funciona (Flujo de Trabajo)

  1. Ingesta de Datos: El sistema recorre carpetas organizadas con facturas en PDF (acepta PDFs con texto, escaneados, fotos de WhatsApp)
  2. Detección Inteligente: Analiza automáticamente si el PDF contiene texto extraíble o es una imagen
  3. Extracción Dual:
    • PDFs con texto: Extrae con PyMuPDF y envía a Google Gemini
    • PDFs con imagen: Convierte a imagen y usa Google Gemini Vision (IA multimodal que "ve" la factura)
  4. Procesamiento con IA: Google Gemini Vision analiza la factura y extrae:
    • Fecha de emisión (formato dd/mm/aaaa)
    • Nombre del proveedor
    • Concepto o descripción del servicio/producto
    • Importe total
    • Moneda (EUR, USD, pesos, u otros)
  5. Estructuración: La IA devuelve los datos en formato CSV estructurado
  6. Conversión de Divisas: Convierte automáticamente dólares a euros (tasa configurable)
  7. Almacenamiento: Guarda todos los registros en una base de datos SQLite
  8. Visualización: Conecta Power BI a la base de datos para crear dashboards interactivos

🛠️ Tecnologías Utilizadas

Backend & Procesamiento

  • Python 3.x - Lenguaje principal
  • Pandas - Manipulación de datos
  • PyMuPDF (fitz) - Extracción de PDFs
  • Google Gemini Vision API - IA multimodal (texto + imágenes) 🆓
  • Pillow (PIL) - Procesamiento de imágenes
  • SQLAlchemy - ORM para base de datos
  • python-dotenv - Gestión de variables de entorno

Almacenamiento & Visualización

  • SQLite - Base de datos ligera
  • Power BI - Dashboards interactivos
  • ODBC - Conexión Power BI ↔ SQLite

Ventajas

  • 100% Gratuito - Usa Google Gemini API sin costos
  • Sin OCR adicional - Gemini Vision lee imágenes directamente

📊 Resultados Obtenidos

Dashboard de Power BI

El sistema genera un dashboard interactivo que permite:

  • KPIs Principales: Total de facturas procesadas, importe total, gasto promedio por factura
  • Análisis Temporal: Evolución del gasto mes a mes con gráficos de líneas
  • Análisis por Proveedor: Top proveedores por importe, distribución de gastos
  • Análisis por Concepto: Clasificación de gastos por tipo de servicio/producto
  • Filtros Interactivos: Por fecha, proveedor, rango de importes, moneda

Métricas del Proyecto

Métrica Resultado
Tiempo de procesamiento ~3-5 segundos por factura
Precisión de extracción 95%+ con Google Gemini Vision
Reducción de tiempo manual 80-90% vs. entrada manual
Formatos soportados PDFs con texto, escaneados, fotos de WhatsApp, capturas de pantalla

💡 Aprendizajes Clave

  • IA Multimodal: Implementar Google Gemini Vision para procesar tanto texto como imágenes en un mismo flujo, permitiendo leer facturas escaneadas y fotografías sin OCR adicional
  • Detección Inteligente: Desarrollar lógica para identificar automáticamente si un PDF contiene texto extraíble o imágenes, aplicando el método de procesamiento apropiado para cada caso
  • Ingeniería de Prompts: Diseñar prompts efectivos para que la IA extraiga datos estructurados de manera consistente, tanto de texto como de imágenes visuales
  • Procesamiento de Imágenes: Convertir PDFs a imágenes de alta calidad (2x zoom) usando PyMuPDF y procesarlas con Pillow para enviarlas a la API de visión
  • APIs Gratuitas: Aprovechar Google Gemini API (100% gratuita) como alternativa viable a servicios pagos, manteniendo alta precisión en la extracción de datos
  • Manejo de Errores Robusto: Implementar validaciones exhaustivas para facturas con formatos no estándar, imágenes borrosas o datos incompletos, evitando que el sistema se detenga
  • Integración de Tecnologías: Conectar Python → Google Gemini Vision → SQLite → Power BI en un flujo automatizado end-to-end
  • Seguridad de Datos: Proteger API keys y datos sensibles usando .env y .gitignore, asegurando que información confidencial nunca se suba al repositorio

🔗 Enlaces del Proyecto