La proliferación de modelos de lenguaje grandes (LLMs) y modelos multimodales ha democratizado el acceso a capacidades avanzadas de procesamiento de lenguaje natural y visión por computadora. Sin embargo, la inferencia a escala de hyperscaler, especialmente en escenarios de procesamiento de documentos estructurados, presenta desafíos significativos en términos de costo, latencia y fiabilidad. El problema fundamental de la computación que aborda esta arquitectura es cómo optimizar el uso de recursos computacionales costosos (inferencia de IA en la nube) cuando una fracción significativa de la carga de trabajo puede ser resuelta de manera más eficiente con métodos deterministas locales.
La tesis central es que la decisión arquitectónica más crítica en sistemas de IA en la nube no es qué modelo usar, sino cuándo invocarlo. Al invertir el paradigma por defecto de "enviar todo a la nube" a "¿realmente necesita este documento un modelo en la nube?", se pueden lograr reducciones sustanciales en costos y tiempo de procesamiento, al tiempo que se mejora la fiabilidad general del sistema. Este enfoque se alinea con principios de diseño de sistemas distribuidos que abogan por la computación en el borde (edge computing) y la minimización de la latencia de red cuando sea posible, aplicando la lógica más cercana a la fuente de datos.
Arquitectura del Sistema
La arquitectura propuesta es un sistema de tres niveles diseñado para el procesamiento de documentos, específicamente PDFs de planos de ingeniería. El flujo de trabajo comienza con el Nivel 1: Extracción Determinista Local, que utiliza PyMuPDF para procesar el 70-80% de los documentos. Este nivel prioriza la precisión sobre el recall, devolviendo nulo si la confianza es baja, para evitar falsos positivos. Su principal modo de fallo es la incapacidad de procesar documentos con diseños inusuales o escaneados.
Los documentos que fallan en el Nivel 1 se escalan al Nivel 2: Inferencia de IA en la Nube. Aquí, los documentos se renderizan como imágenes y se envían a un endpoint de Azure OpenAI (GPT-4 Vision). Este nivel maneja el 20-30% restante de los documentos y su modo de fallo es la "alucinación silenciosa", donde el modelo puede devolver respuestas incorrectas con alta confianza. Finalmente, los documentos con resultados conflictivos entre el Nivel 1 y 2, o con baja confianza del Nivel 2, se dirigen al Nivel 3: Cola de Revisión Humana. Este nivel, que maneja aproximadamente el 5% de los documentos, acota la tasa de error y garantiza la precisión final.
El corazón arquitectónico de este patrón es la función de puntuación de confianza. Esta función evalúa candidatos de extracción utilizando una combinación ponderada de criterios: posición espacial (40%), proximidad a anclajes conocidos (30%), conformidad con el formato (20%) y señales contextuales (10%). Antes de la puntuación, una "blocklist" explícita descarta patrones conocidos de falsos positivos. Los umbrales de enrutamiento son clave: una puntuación de 90 o superior dirige la salida directamente, 50-89 activa la validación del Nivel 2, y por debajo de 50 activa la extracción completa en la nube. La implementación de Azure utiliza Azure AD para autenticación, Azure Key Vault para credenciales y Managed Identity para acceso seguro a la API de Azure OpenAI. La observabilidad incluye logs estructurados para el enrutamiento de niveles, puntuaciones de confianza y uso de tokens, con detección de deriva para monitorear la tasa de éxito del Nivel 1.
Flujo de Procesamiento de Documentos Local-First AI Inference
- 1 Documento Entrante PDF de plano de ingeniería
- 2 Nivel 1: Extracción Local PyMuPDF. 70-80% de documentos. 3s/doc. Costo $0. Alta precisión, bajo recall.
- 3 Puntuación de Confianza Criterios: espacial, anclaje, formato, contexto. Umbral >90: salida directa.
- 4 Umbral 50-89 Escalar a Nivel 2
- 5 Nivel 2: Inferencia Cloud AI Azure OpenAI GPT-4 Vision. 20-30% de documentos. 10s/doc. Costo $0.01/call.
- 6 Umbral <50 o Conflicto Escalar a Nivel 3
- 7 Nivel 3: Revisión Humana 5% de documentos. Acota la tasa de error.
- 8 Salida Final Metadatos estructurados
| Capa | Tecnología | Justificación |
|---|---|---|
| compute | PyMuPDF | Motor de extracción determinista local para el Nivel 1, procesando la mayoría de los documentos de forma eficiente y sin costo de API. |
| compute | Azure OpenAI Service (GPT-4 Vision) | Servicio de inferencia de IA en la nube para el Nivel 2, utilizado como fallback para documentos complejos o escaneados que el Nivel 1 no puede manejar. vs OpenAI API (directa) Imágenes renderizadas a 150 DPI; validación pre-llamada para evitar llamadas desperdiciadas. |
| security | Azure AD | Autenticación de usuarios y gestión de grupos de seguridad para acceso al sistema. |
| security | Azure Key Vault | Almacenamiento seguro de claves API y credenciales, recuperadas en tiempo de ejecución. |
| security | Managed Identity | Proporciona una identidad para que la aplicación acceda a Azure Key Vault y otros servicios de Azure sin gestionar credenciales directamente. |
| observability | Structured Logs | Captura de métricas operacionales como enrutamiento de niveles, puntuaciones de confianza, tiempo de procesamiento y uso de tokens para monitoreo y depuración. |
| orchestration | Batch Job System (custom) | Gestión de la ejecución de trabajos de extracción, validación de archivos y encolamiento de tareas. Trabajos secuenciales por sitio, independientes entre sitios; partición de presupuesto de tasa de llamadas. |
| storage | Site-local storage | Almacenamiento de documentos cargados en cada sitio, asegurando que los datos sensibles no salgan de la ubicación local. |
Trade-offs
Ganancias
- ▲ Costo de API
- ▲ Tiempo de procesamiento
- ▲ Precisión efectiva (post-revisión)
- ▲ Visibilidad de errores
Costes
- △ Complejidad arquitectónica
- △ Mantenimiento de reglas locales
score = (40 * spatial_score) + (30 * anchor_score) + (20 * format_score) + (10 * context_score)
# Ejemplo de lógica de enrutamiento
if score >= 90:
route_to_output()
elif 50 <= score < 90:
route_to_cloud_ai()
else:
route_to_cloud_ai_full_extraction()Fundamentos Teóricos
Este enfoque resuena con el principio de "Separación de Preocupaciones" (Separation of Concerns) en el diseño de software, donde diferentes módulos o niveles manejan distintas responsabilidades y modos de fallo. La priorización de métodos deterministas locales sobre la inferencia de IA en la nube para tareas bien definidas es una aplicación práctica del concepto de "heurísticas" en inteligencia artificial, donde reglas simples y eficientes pueden resolver una gran parte del problema antes de recurrir a métodos más complejos y costosos. La función de puntuación de confianza, con sus criterios ponderados, es análoga a los sistemas expertos basados en reglas que fueron prominentes en la IA clásica, combinando conocimiento de dominio explícito para tomar decisiones de enrutamiento.
La gestión de la confianza y el escalamiento a revisión humana para casos de baja confianza o conflicto se relaciona con el campo de la "IA explicable" (Explainable AI - XAI) y la "IA centrada en el humano" (Human-Centered AI), donde la intervención humana es un componente integral del ciclo de vida del sistema para garantizar la fiabilidad y la interpretabilidad. Aunque no se cita un paper específico, la filosofía de combinar métodos simbólicos (reglas deterministas) con métodos subsimbólicos (modelos de IA) para optimizar el rendimiento y la eficiencia es un tema recurrente en la investigación de IA híbrida.