Bundle Langflow para Renderizado Web y Conversión de Archivos#
El bundle EnConvert para Langflow agrega seis componentes a cualquier flujo: renderizar páginas web como markdown o datos estructurados, buscar en la web, descubrir URLs de un sitio, extraer campos de una página contra un esquema y convertir archivos cargados a markdown o PDF. Cada renderizado de página lleva una puntuación render_quality de 0,0 a 1,0, por lo que las aplicaciones de una sola página bloqueadas o vacías se marcan con una bandera en lugar de confiarse como contenido real.
lfx-enconvert · Fuente: enconvert/langflow-enconvert · Licencia: MIT
Los seis componentes#
| Componente | Endpoint | Tarea |
|---|---|---|
| Perceive URL | POST /v2/perceive |
Renderiza una página en markdown, HTML limpio, HTML sin procesar, captura de pantalla, PDF, enlaces, imágenes o datos estructurados con una puntuación render_quality. Basado en Perceive. |
| Web Search | POST /v2/lookup |
Búsqueda en web, noticias, imágenes, académica, patentes y mapas con título, URL, fragmento y posición. Basado en Lookup. |
| Discover URLs | POST /v2/discover |
Enumera URLs de un sitio por mapa del sitio, rastreo o ambos, sin renderizarlas. Basado en Discover. |
| Extract Structured | POST /v2/distill |
Extrae campos nombrados de una o varias páginas o de un sitio que el sistema rastrea. Basado en Distill. |
| Convert File to Markdown | POST /v1/convert/anything-to-markdown |
Convierte archivos Word, PowerPoint, Excel, PDF, EPUB, RTF, HTML y texto a markdown. Basado en Anything to Markdown. |
| Convert File to PDF | POST /v1/convert/anything-to-pdf |
Convierte un documento, hoja de cálculo, presentación, imagen, HTML o archivo de texto a PDF. Basado en Anything to PDF. |
Todo se ejecuta contra la misma API REST documentada en este sitio, por lo que su cuota del plan, límites de velocidad y características se aplican exactamente como en cualquier otro lugar.
Instalación#
pip install lfx-enconvert
Langflow descubre automáticamente el bundle al iniciar el servidor. Los seis componentes aparecen bajo el bundle EnConvert en la barra lateral de componentes — no se requiere configuración.
Para desarrollo local o pruebas sin instalación de pip, puede copiar la carpeta de componentes a su instancia de Langflow a través de la variable de entorno LANGFLOW_COMPONENTS_PATH. Vea la guía de implementación para detalles.
Agregue su clave API#
Cada uno de los seis componentes tiene un campo EnConvert API Key.
- Genere una clave API privada en el panel. Las claves privadas comienzan con
sk_. - Cree una variable global en Langflow para la clave (para que nunca aparezca en el JSON del flujo):
- Vaya a Settings > Global Variables y agregue una nueva variable llamada
enconvert_keycon su clave privada. - En cada componente que agregue al flujo, seleccione esta variable global en el campo EnConvert API Key.
pk_ están destinadas a widgets del navegador y son rechazadas por cada componente en este bundle. Obtenga más información en Private Keys.
Renderizar una página#
Perceive URL toma la URL del flujo y dos configuraciones del formulario:
| Parámetro | Establecido por | Predeterminado | Propósito |
|---|---|---|---|
| URL | El flujo | -- | La URL absoluta a renderizar |
| Outputs | El formulario | markdown |
Cualquiera de markdown, html_cleaned, html_raw, screenshot, screenshot_full_page, pdf, links, images, structured, separados por comas |
| Only Main Content | El formulario | Desactivado | Eliminar navegación, encabezados y pies de página, mantener el artículo |
El componente devuelve cada artefacto como una URL que expira en 15 minutos, más el texto de markdown, HTML limpio y HTML sin procesar como línea hasta 256 KB. Cualquier cosa más grande y cualquier cosa binaria permanece como un enlace. El resultado structured es la excepción y llega en línea.
La puntuación render_quality#
Cada resultado de Perceive lleva render_quality, un número de 0,0 a 1,0. Cero significa la página fue bloqueada o está vacía; uno significa un renderizado limpio. El contenido todavía regresa de cualquier manera, marcado, por lo que una mala lectura nunca entra silenciosamente en un resumen.
Use un componente If/Else después de Perceive para ramificar según la puntuación antes de pasar el markdown a un componente LLM. Una puntuación baja es una señal de que la página no es lo que el agente esperaba.
Buscar y descubrir#
Web Search toma una consulta y filtros opcionales y devuelve una matriz de resultados, cada uno con título, URL, fragmento y posición.
Discover URLs toma una URL de sitio y un modo (mapa del sitio, rastreo o híbrido) y devuelve una lista plana de URLs en ese sitio sin renderizar cada una. Úselo antes de Perceive para mapear un sitio cuando quiera saber qué hay allí sin el costo de renderización.
Extraer campos#
Extract Structured necesita un esquema y exactamente una fuente. El esquema es un objeto JSON en una de dos formas. Un mapa plano de nombre de campo a descripción en lenguaje natural es el rápido:
{"title": "el título de la página", "price": "el precio mensual en USD"}
Un esquema JSON completo, {"type": "object", "properties": {...}}, es el otro, vale la pena escribir cuando necesita tipos u objetos anidados forzados.
Para la fuente, pase URLs, una lista separada por comas limitada a 50, o Discover From URL, un único sitio que el API rastrea, moldeado por Discover Mode y Discover Max Pages. Pasar ambos o ninguno devuelve un mensaje de error.
Los resultados llegan como una matriz, una entrada por URL, cada una con sus propios datos y su propio extraction_tier, que dice si un paso determinista o una lectura del modelo de la página produjo la respuesta.
Convertir archivos#
Convert File to Markdown y Convert File to PDF toman un archivo de Langflow, no una URL. Conecte un archivo de la entrada de archivo de un componente Input o una variable de archivo de un componente anterior. El componente carga los bytes y devuelve una URL de descarga firmada para el resultado, válida por aproximadamente 15 minutos.
El nombre del archivo cargado le dice al componente el formato de entrada. Langflow lleva el nombre original, así que esto normalmente es invisible, pero un archivo que llega sin una extensión utilizable se devuelve a sus bytes: un PDF, una imagen o un DOCX se recuperan de su firma, mientras que un formato de texto como CSV o HTML no tiene ninguno y se rechaza con un 400.
Construir con él#
Un agente que investiga#
Dale a un agente Web Search, Perceive URL y Discover URLs. La búsqueda encuentra páginas candidatas, Perceive lee las prometedoras como markdown, y Discover mapea un sitio cuando el agente necesita saber qué más hay allí sin renderizar nada.
Un flujo que extrae datos estructurados#
Conecte Discover URLs en Extract Structured para extraer los mismos campos de cada página de un sitio a la vez, rastreado y extraído por el servidor, entregado como una matriz de resultados.
Un flujo que convierte una carga en un resumen#
Input (archivo) → Convert File to Markdown → Text Splitter → LLM → Respuesta
Convierta el archivo a markdown, divídalo en fragmentos, pase cada fragmento a un LLM para resumir y combine los resultados.
Solución de problemas#
El componente falla con 401 o 403.
La clave API es incorrecta, falta o es una clave pública pk_. Verifique que haya almacenado una clave privada (pk_ de prefijo) en la variable global y la haya seleccionado en EnConvert API Key del componente. Pruebe la clave en el panel haciendo clic en su fila.
Perceive devuelve un enlace donde se esperaba markdown.
El markdown superó el límite de 256 KB en línea, por lo que el componente entregó la URL firmada en su lugar. Búsquelo con un GET simple y sin clave API. Only Main Content normalmente trae una página larga bajo el límite.
Un componente informa que la operación no está en mi plan.
Perceive, Web Search, Discover y Extract Structured extraen de la asignación de ops mensual de su plan. Verifique su uso en la página de precios.
Convert File to Markdown devuelve un 400 con "unsupported format".
El archivo no tiene una extensión reconocida y sus bytes no coinciden con una firma de archivo conocida. Agregue o corrija la extensión del nombre de archivo (p. ej. .pdf, .docx, .csv) e intente de nuevo.
Fuente y enlaces#
- Fuente: enconvert/langflow-enconvert
- Paquete: PyPI
- Licencia: MIT
- Documentación de Langflow: docs.langflow.org
- API subyacente: Introduction
Preguntas frecuentes#
¿Cómo instalo el bundle EnConvert en Langflow?#
Instale el paquete de PyPI (pip install lfx-enconvert) y reinicie Langflow. Los seis componentes aparecen bajo el bundle EnConvert en la barra lateral. No se requiere configuración.
¿Puedo usar una clave API pública?#
No. Las claves públicas pk_ son solo para widgets del navegador y son rechazadas por cada componente. Genere una clave privada en el panel y úsela.
¿Cómo almaceno la clave API de forma segura para que no aparezca en el JSON del flujo?#
Cree una variable global en Langflow (Settings > Global Variables), almacene su clave privada allí y seleccione esa variable en EnConvert API Key de cada componente. Las variables globales se almacenan de forma segura y nunca se exportan en el flujo.
¿Cómo renderizo una página web en Langflow?#
Agregue el componente Perceive URL, pásele una URL y deje Outputs en su predeterminado. El componente renderiza la página y devuelve el markdown en línea en la salida del componente. Active Only Main Content para eliminar navegación y pies de página.
¿Qué significa render_quality?#
Una puntuación de 0,0 (bloqueada/vacía) a 1,0 (renderizado limpio). Use un componente If/Else después de Perceive para ramificar según esta puntuación, para que su flujo desconfíe de una lectura deficiente.
¿Puedo extraer campos de varias páginas a la vez?#
Sí. Discover URLs enumera todas las URLs en un sitio, y Extract Structured acepta una lista separada por comas de URLs (hasta 50). Pase las URLs descubiertas y el esquema a Extract Structured para extraer los mismos campos de cada página.