>_ DevTrendses

Idioma

Inicio

Lenguajes

Secciones

Frontend Backend Móvil DevOps AI / ML GameDev Blockchain Embebidos Seguridad
Python

Text-Extract-API: Convirtiendo Documentos en Datos Estructurados Sin Complicaciones

¿Alguna vez has necesitado extraer datos de un informe en PDF o documento escaneado? La pesadilla familiar de copiar texto manualmente, luchar con tablas torcidas y perder fórmulas. Text-extract-api ofrece una solución elegante a este problema, combinando tecnologías modernas de OCR y modelos de lenguaje.

¿Qué es esta herramienta?

Text-extract-api es una API de Python que te permite:

  • Convertir PDF, Word, PowerPoint e imágenes a Markdown o JSON
  • Extraer tablas, números y fórmulas matemáticas
  • Limpiar documentos de datos personales (PII)
  • Mejorar la calidad del reconocimiento usando modelos LLM (Llama 3, MiniCPM y otros)

La principal ventaja es que todo funciona localmente sin enviar datos a servicios en la nube.

Características principales

1. Soporte para varios formatos y estrategias de reconocimiento

El proyecto soporta varios motores de OCR:

  • EasyOCR — para reconocimiento rápido de texto en más de 30 idiomas
  • MiniCPM-V — modelo abierto para uso comercial
  • Llama 3.2 Vision — opción más precisa, pero que requiere más recursos
  • API Remota — para integración con servicios externos como Marker PDF

Comando de ejemplo para conversión:

python client/cli.py ocr_upload --file example.pdf --strategy easyocr

2. Mejora de texto usando LLM

Después del reconocimiento, el texto puede ser procesado adicionalmente por un modelo de lenguaje:

  • Corrección de errores de OCR
  • Extracción de datos estructurados (p. ej., convertir un informe médico a JSON)
  • Eliminación de datos personales
python client/cli.py ocr_upload --file medical_report.pdf --prompt_file extract_to_json.txt --model llama3.1

3. Almacenamiento flexible de resultados

Se admiten varias estrategias para almacenar documentos procesados:

  • Sistema de archivos local
  • Google Drive
  • Amazon S3

La configuración mediante archivos YAML facilita la adaptación del sistema a tus necesidades.

Detalles técnicos

La arquitectura del proyecto se basa en:

  • FastAPI para API REST
  • Celery para procesamiento asíncrono de tareas
  • Redis para caché de resultados
  • Ollama para trabajar con modelos LLM locales

Se ofrecen dos opciones de despliegue:

  1. Ejecución nativa (útil para Mac con Apple Silicon)
  2. Contenedores Docker (incluyendo versión con aceleración GPU)

Aplicaciones prácticas

¿Dónde puede ser útil text-extract-api?

Bufetes de abogados pueden automatizar el procesamiento de escaneos de contratos, extrayendo términos clave en un formato estructurado.

Centros médicos obtendrán una herramienta para convertir informes en papel a registros electrónicos sin entrada manual de datos.

Startups fintech podrán analizar extractos bancarios y facturas, extrayendo datos para sistemas contables.

Investigadores apreciarán la capacidad de digitalizar libros antiguos y artículos científicos mientras preservan fórmulas y tablas.

Comienza en 5 minutos

  1. Instala Docker y Ollama
  2. Clona el repositorio:
git clone https://github.com/CatchTheTornado/text-extract-api.git
cd text-extract-api
  1. Inicia los servicios:
docker-compose up --build
  1. ¡Prueba a convertir tu primer documento!

Text-extract-api es: ✅ Solución local sin enviar datos a la nube ✅ Soporte para muchos formatos e idiomas ✅ Integración flexible con varias opciones de almacenamiento ✅ Mejora de calidad mediante LLM

El proyecto será especialmente apreciado por desarrolladores que necesitan trabajar con documentos en sus aplicaciones pero no quieren depender de APIs comerciales ni dedicar tiempo a implementar su propio OCR.

Una versión demo está disponible para pruebas, y todas las preguntas se pueden discutir en la comunidad de Discord del proyecto.

Proyectos relacionados