En el mundo basado en datos actual, las ideas valiosas a menudo se entierran en texto no estructurado, ya sea notas clínicas, largos contratos legales o hilos de comentarios de los clientes. Extraer información significativa y rastreable de estos documentos es un desafío técnico y práctico. La nueva biblioteca de Python de código abierto de Google AI, Langextractestá diseñado para abordar esta brecha directamente, utilizando LLM como Gemini para ofrecer una extracción potente y automatizada con trazabilidad y transparencia en su núcleo.
1. Extracción declarativa y rastreable
LangExtract permite a los usuarios definir tareas de extracción personalizadas utilizando instrucciones de lenguaje natural y ejemplos de “pocos disparos” de alta calidad. Esto capacita a los desarrolladores y analistas para especificar exactamente qué entidades, relaciones o hechos extraer, y en qué estructura. Crucialmente, cada información extraída es atado directamente a su texto fuente—La validación, auditoría y trazabilidad de extremo a extremo.
2. Versatilidad del dominio
La biblioteca trabaja no solo en demostraciones tecnológicas sino también en dominios críticos del mundo real, incluida la salud (notas clínicas, informes médicos), finanzas (resúmenes, documentos de riesgo), ley (contratos), literatura de investigación e incluso las artes (analizando Shakespeare). Los casos de uso originales incluyen extracción automática de medicamentos, dosis y detalles de administración de documentos clínicos, así como relaciones y emociones de obras o literatura.
3. Cumplimiento de esquema con LLMS
Impulsado por Gemini y compatible con otros LLMS, LangExtract habilita Aplicación de esquemas de salida personalizados (como JSON), por lo que los resultados no son solo precisos: se pueden usar de inmediato en bases de datos, análisis o tuberías de IA. Resuelve las debilidades tradicionales de LLM alrededor de la alucinación y la deriva del esquema mediante las salidas de puesta a tierra tanto a las instrucciones del usuario como al texto de origen real.
4. Escalabilidad y visualización
- Maneja grandes volúmenes: Langextract procesa eficientemente documentos largos mediante la fragmentación, paralelizando y agregando resultados.
- Visualización interactiva: Los desarrolladores pueden generar informes HTML interactivos, viendo cada entidad extraída con contexto resaltando su ubicación en el documento original, lo que hace que el análisis de auditoría y errores sea sin problemas.
- Integración suave: Funciona en Google Colab, Jupyter, o como archivos HTML independientes, lo que respalda un circuito de retroalimentación rápida para desarrolladores e investigadores.
5. Instalación y uso
Instale fácilmente con PIP:
Ejemplo de flujo de trabajo (extraer información de caracteres de Shakespeare):
import langextract as lx
import textwrap
# 1. Define your prompt
prompt = textwrap.dedent("""
Extract characters, emotions, and relationships in order of appearance.
Use exact text for extractions. Do not paraphrase or overlap entities.
Provide meaningful attributes for each entity to add context.
""")
# 2. Give a high-quality example
examples = [
lx.data.ExampleData(
text="ROMEO. But soft! What light through yonder window breaks? It is the east, and Juliet is the sun.",
extractions=[
lx.data.Extraction(extraction_class="character", extraction_text="ROMEO", attributes={"emotional_state": "wonder"}),
lx.data.Extraction(extraction_class="emotion", extraction_text="But soft!", attributes={"feeling": "gentle awe"}),
lx.data.Extraction(extraction_class="relationship", extraction_text="Juliet is the sun", attributes={"type": "metaphor"}),
],
)
]
# 3. Extract from new text
input_text = "Lady Juliet gazed longingly at the stars, her heart aching for Romeo"
result = lx.extract(
text_or_documents=input_text,
prompt_description=prompt,
examples=examples,
model_id="gemini-2.5-pro"
)
# 4. Save and visualize results
lx.io.save_annotated_documents([result], output_name="extraction_results.jsonl")
html_content = lx.visualize("extraction_results.jsonl")
with open("visualization.html", "w") as f:
f.write(html_content)
Esto da como resultado salidas JSON estructuradas de origen, además de una visualización HTML interactiva para una fácil revisión y demostración.
Aplicaciones especializadas y del mundo real
- Medicamento: Extrae medicamentos, dosis, tiempo y los vincula a las oraciones de origen. Impulsado por las ideas de la investigación realizada sobre la aceleración de la extracción de información médica, el enfoque de LangExtract es directamente aplicable a la estructuración de informes clínicos y de radiología, lo que mejora la claridad y el respaldo de la interoperabilidad.
- Finanzas y ley: Automáticamente extrae cláusulas, términos o riesgos relevantes de un denso texto legal o financiero, lo que garantiza que cada resultado se remonta a su contexto.
- Investigación y minería de datos: Aerografía la extracción de alto rendimiento de miles de artículos científicos.
El equipo incluso proporciona una demostración llamada Radextrato Para estructurar informes de radiología, iluminar no solo lo que se extrajo, sino exactamente donde apareció la información en la entrada original.
Cómo se compara Langextract
| Característica | Enfoques tradicionales | Enfoque de langextract |
|---|---|---|
| Consistencia de esquema | A menudo manual/propenso a errores | Funcionado a través de instrucciones y ejemplos de pocos disparos |
| Trazabilidad de los resultados | Mínimo | Toda la salida vinculada al texto de entrada |
| Escala a textos largos | Ventana, con pérdida | Extracción paralela de fragmentación +, luego agregación |
| Visualización | Costumbre, generalmente ausente | Informes HTML interactivos incorporados e interactivos |
| Despliegue | Rígido, específico | Gemini-First, abierto a otros LLM y locales |
En resumen
LangExtract presenta una nueva era para extraer datos estructurados y procesables del texto: entrega:
- Extracción declarativa y explicable
- Resultados rastreables respaldados por el contexto fuente
- Visualización instantánea para la rápida iteración
- Fácil integración en cualquier flujo de trabajo de Python
Mira el Página de Github y Blog técnico. No dude en ver nuestro Página de Github para tutoriales, códigos y cuadernos. Además, siéntete libre de seguirnos Gorjeo Y no olvides unirte a nuestro Subreddit de 100k+ ml y suscribirse a Nuestro boletín.
Asif Razzaq es el CEO de MarktechPost Media Inc .. Como empresario e ingeniero visionario, ASIF se compromete a aprovechar el potencial de la inteligencia artificial para el bien social. Su esfuerzo más reciente es el lanzamiento de una plataforma de medios de inteligencia artificial, MarktechPost, que se destaca por su cobertura profunda de noticias de aprendizaje automático y de aprendizaje profundo que es técnicamente sólido y fácilmente comprensible por una audiencia amplia. La plataforma cuenta con más de 2 millones de vistas mensuales, ilustrando su popularidad entre el público.