Bundle Langflow pour le Rendu Web et la Conversion de Fichiers#
Le bundle EnConvert pour Langflow ajoute six composants à n'importe quel flux : rendre les pages web en markdown ou données structurées, rechercher sur le web, découvrir les URLs d'un site, extraire des champs d'une page par rapport à un schéma, et convertir les fichiers chargés en markdown ou PDF. Chaque rendu de page porte un score render_quality de 0,0 à 1,0, de sorte que les applications mono-page bloquées ou vides sont signalées au lieu d'être traitées comme du contenu réel.
lfx-enconvert · Source : enconvert/langflow-enconvert · Licence : MIT
Les six composants#
| Composant | Point d'accès | Tâche |
|---|---|---|
| Perceive URL | POST /v2/perceive |
Rend une page en markdown, HTML nettoyé, HTML brut, capture d'écran, PDF, liens, images ou données structurées avec un score render_quality. Basé sur Perceive. |
| Web Search | POST /v2/lookup |
Recherche web, actualités, images, académique, brevets et cartes avec titre, URL, snippet et position. Basé sur Lookup. |
| Discover URLs | POST /v2/discover |
Énumère les URLs d'un site par sitemap, crawl ou les deux, sans les rendre. Basé sur Discover. |
| Extract Structured | POST /v2/distill |
Extrait les champs nommés d'une ou plusieurs pages ou d'un site parcouru par le système. Basé sur Distill. |
| Convert File to Markdown | POST /v1/convert/anything-to-markdown |
Convertit les fichiers Word, PowerPoint, Excel, PDF, EPUB, RTF, HTML et texte en markdown. Basé sur Anything to Markdown. |
| Convert File to PDF | POST /v1/convert/anything-to-pdf |
Convertit un document, feuille de calcul, présentation, image, HTML ou fichier texte en PDF. Basé sur Anything to PDF. |
Tout s'exécute sur la même API REST documentée sur ce site, vos quotas de plan, limites de débit et fonctionnalités s'appliquent exactement comme partout ailleurs.
Installation#
pip install lfx-enconvert
Langflow découvre automatiquement le bundle au démarrage du serveur. Les six composants apparaissent sous le bundle EnConvert dans la barre latérale des composants — aucune configuration requise.
Pour le développement local ou les tests sans installation pip, vous pouvez copier le dossier des composants dans votre instance Langflow via la variable d'environnement LANGFLOW_COMPONENTS_PATH. Voir le guide de déploiement pour les détails.
Ajoutez votre clé API#
Chacun des six composants a un champ Clé API EnConvert.
- Générez une clé API privée dans le tableau de bord. Les clés privées commencent par
sk_. - Créez une variable globale dans Langflow pour la clé (pour qu'elle n'apparaisse jamais dans le JSON du flux) :
- Allez à Settings > Global Variables et ajoutez une nouvelle variable appelée
enconvert_keyavec votre clé privée. - Dans chaque composant que vous ajoutez au flux, sélectionnez cette variable globale dans le champ Clé API EnConvert.
pk_ sont destinées aux widgets du navigateur et sont rejetées par chaque composant de ce bundle. En savoir plus sur Private Keys.
Rendre une page#
Perceive URL prend l'URL du flux et deux paramètres du formulaire :
| Paramètre | Défini par | Par défaut | Objectif |
|---|---|---|---|
| URL | Le flux | -- | L'URL absolue à rendre |
| Outputs | Le formulaire | markdown |
N'importe lequel de markdown, html_cleaned, html_raw, screenshot, screenshot_full_page, pdf, links, images, structured, séparés par des virgules |
| Only Main Content | Le formulaire | Désactivé | Supprimer la navigation, les en-têtes et les pieds de page, conserver l'article |
Le composant retourne chaque artefact en tant qu'URL valide pendant 15 minutes, plus le texte du markdown, du HTML nettoyé et du HTML brut en ligne jusqu'à 256 Ko. Tout ce qui est plus grand et tout ce qui est binaire reste un lien. Le résultat structured est l'exception et arrive en ligne.
Le score render_quality#
Chaque résultat de Perceive porte render_quality, un nombre de 0,0 à 1,0. Zéro signifie la page a été bloquée ou est vide ; un signifie un rendu propre. Le contenu revient de toute façon, marqué, pour qu'une mauvaise lecture ne s'infiltre jamais silencieusement dans un résumé.
Utilisez un composant If/Else après Perceive pour vous ramifier selon le score avant de transmettre le markdown à un composant LLM. Un score bas est un signal que la page n'est pas ce que l'agent attendait.
Rechercher et découvrir#
Web Search prend une requête et des filtres optionnels et retourne un tableau de résultats, chacun avec titre, URL, snippet et position.
Discover URLs prend une URL de site et un mode (sitemap, crawl ou hybrid) et retourne une liste plate d'URLs sur ce site sans rendre chacune. Utilisez-le avant Perceive pour mapper un site quand vous voulez savoir ce qui s'y trouve sans le coût du rendu.
Extraire des champs#
Extract Structured a besoin d'un schéma et exactement d'une source. Le schéma est un objet JSON sous l'une de deux formes. Une correspondance plate du nom de champ à la description en langage naturel est la rapide :
{"title": "le titre de la page", "price": "le prix mensuel en USD"}
Un schéma JSON complet, {"type": "object", "properties": {...}}, est l'autre, valant la peine d'écrire quand vous avez besoin de types ou d'objets imbriqués forcés.
Pour la source, transmettez URLs, une liste séparée par des virgules limitée à 50, ou Discover From URL, un seul site que l'API parcourt, façonné par Discover Mode et Discover Max Pages. Transmettre les deux ou aucun retourne un message d'erreur.
Les résultats arrivent sous forme de tableau, une entrée par URL, chacune avec ses propres données et son propre extraction_tier, qui indique si une passe déterministe ou une lecture de modèle de la page a produit la réponse.
Convertir des fichiers#
Convert File to Markdown et Convert File to PDF prennent un fichier de Langflow, pas une URL. Connectez un fichier de l'entrée de fichier d'un composant Input ou d'une variable de fichier d'un composant antérieur. Le composant charge les octets et retourne une URL de téléchargement signée pour le résultat, valide pendant environ 15 minutes.
Le nom du fichier chargé indique au composant le format d'entrée. Langflow porte le nom d'origine, donc c'est normalement invisible, mais un fichier qui arrive sans extension utilisable retombe sur ses octets : un PDF, une image ou un DOCX est récupéré de sa signature, tandis qu'un format texte comme CSV ou HTML n'en a pas et est rejeté avec un 400.
Construire avec#
Un agent qui enquête#
Donnez à un agent Web Search, Perceive URL et Discover URLs. La recherche trouve les pages candidates, Perceive lit les prometteuses en markdown, et Discover cartographie un site quand l'agent a besoin de savoir ce d'autre s'y trouve sans rendre quoi que ce soit.
Un flux qui extrait des données structurées#
Connectez Discover URLs à Extract Structured pour extraire les mêmes champs de chaque page d'un site à la fois, parcouru et extrait par le serveur, livré sous forme de tableau de résultats.
Un flux qui convertit un upload en résumé#
Input (fichier) → Convert File to Markdown → Text Splitter → LLM → Réponse
Convertissez le fichier en markdown, divisez-le en chunks, transmettez chaque chunk à un LLM pour le résumer et combinez les résultats.
Dépannage#
Le composant échoue avec 401 ou 403.
La clé API est incorrecte, manquante ou est une clé publique pk_. Vérifiez que vous avez stocké une clé privée (préfixe sk_) dans la variable globale et l'avez sélectionnée dans la Clé API EnConvert du composant. Testez la clé dans le tableau de bord en cliquant sur sa ligne.
Perceive retourne un lien où le markdown était attendu.
Le markdown a dépassé la limite de 256 Ko en ligne, donc le composant a livré l'URL signée à la place. Récupérez-la avec un simple GET et sans clé API. Only Main Content ramène normalement une longue page sous la limite.
Un composant rapporte que l'opération ne figure pas dans mon plan.
Perceive, Web Search, Discover et Extract Structured tirent de l'allocation mensuelle d'ops de votre plan. Vérifiez votre utilisation sur la page de tarification.
Convert File to Markdown retourne un 400 avec "unsupported format".
Le fichier n'a pas d'extension reconnue et ses octets ne correspondent pas à une signature de fichier connue. Ajoutez ou corrigez l'extension du nom de fichier (par exemple .pdf, .docx, .csv) et réessayez.
Source et liens#
- Source : enconvert/langflow-enconvert
- Paquet : PyPI
- Licence : MIT
- Documentation Langflow : docs.langflow.org
- API sous-jacente : Introduction
Questions fréquemment posées#
Comment installe-je le bundle EnConvert dans Langflow ?#
Installez le paquet PyPI (pip install lfx-enconvert) et redémarrez Langflow. Les six composants apparaissent sous le bundle EnConvert dans la barre latérale. Aucune configuration requise.
Puis-je utiliser une clé API publique ?#
Non. Les clés publiques pk_ sont uniquement pour les widgets du navigateur et sont rejetées par chaque composant. Générez une clé privée dans le tableau de bord et utilisez-la.
Comment stocker la clé API de manière sécurisée pour qu'elle n'apparaisse pas dans le JSON du flux ?#
Créez une variable globale dans Langflow (Settings > Global Variables), stockez votre clé privée là-bas et sélectionnez cette variable dans la Clé API EnConvert de chaque composant. Les variables globales sont stockées de manière sécurisée et ne sont jamais exportées dans le flux.
Comment rendre une page web dans Langflow ?#
Ajoutez le composant Perceive URL, donnez-lui une URL et laissez Outputs par défaut. Le composant rend la page et retourne le markdown en ligne dans la sortie du composant. Activez Only Main Content pour supprimer la navigation et les pieds de page.
Que signifie render_quality ?#
Un score de 0,0 (bloqué/vide) à 1,0 (rendu propre). Utilisez un composant If/Else après Perceive pour vous ramifier selon ce score, pour que votre flux se méfie d'une mauvaise lecture.
Puis-je extraire des champs de plusieurs pages à la fois ?#
Oui. Discover URLs énumère toutes les URLs d'un site, et Extract Structured accepte une liste séparée par des virgules d'URLs (jusqu'à 50). Transmettez les URLs découvertes et le schéma à Extract Structured pour extraire les mêmes champs de chaque page.