Sobre el proyecto
LangExtract es una librería de Python que utiliza modelos de lenguaje grandes para extraer información estructurada de documentos de texto no estructurado según instrucciones definidas por el usuario. Está diseñada para materiales como notas clínicas o informes, identificando y organizando detalles clave mientras asegura que los datos extraídos correspondan al texto fuente.
Capacidades clave descritas en el README:
- Aterrizaje preciso de la fuente: cada extracción se asigna a su rango exacto de caracteres en el texto fuente, permitiendo resaltado visual para trazabilidad y verificación. Las extracciones que no se puedan localizar en la fuente reciben char_interval = None y pueden filtrarse.
- Salidas estructuradas confiables: el esquema de salida se basa en ejemplos de pocos intentos (few-shot), con generación controlada admitida en modelos como Gemini.
- Manejo de documentos largos: segmentación de texto, procesamiento paralelo y múltiples pasadas de extracción buscan mejorar la recuperación en documentos grandes.
- Visualización interactiva: genera un archivo HTML interactivo autocontenido para revisar las entidades extraídas en su contexto original.
- Soporte flexible de modelos: modelos en la nube como la familia Google Gemini, modelos de OpenAI a través de una dependencia opcional y modelos locales de código abierto mediante una interfaz Ollama integrada. Un sistema de plugins permite registrar y distribuir proveedores de modelos personalizados como paquetes separados.
- Adaptabilidad de dominio: las tareas de extracción se definen con un prompt y unos pocos ejemplos, sin ajuste fino del modelo.
El uso típico implica definir un prompt y extracciones de ejemplo, llamar a lx.extract con texto o URL de documentos, guardar los resultados en JSONL y generar una visualización HTML. Las opciones incluyen extraction_passes, max_workers y max_char_buffer para escalar a documentos más largos, además de configuraciones de procesamiento por lotes de Vertex AI y OpenAI para cargas de trabajo grandes.
La instalación está disponible desde PyPI (pip install langextract), desde el código fuente con pyproject.toml o mediante Docker. Los modelos en la nube requieren una clave API, configurable a través de variables de entorno, un archivo .env, parámetros directos o cuentas de servicio de Vertex AI. El proyecto incluye herramientas de prueba y desarrollo como pytest, tox, pylint y hooks de pre-commit.
El README indica que este no es un producto oficialmente respaldado por Google y que su uso está sujeto a la Licencia Apache 2.0, con términos adicionales para aplicaciones relacionadas con la salud.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.