|

ANYDOC : vos documents de bureau passent en Markdown propre

https://github.com/firecrawl/anydoc

📌 ANYDOC est une bibliothèque open source de Firecrawl, écrite en Rust, qui convertit les documents de bureau en Markdown soigné : Word, PowerPoint, Excel, OpenDocument, RTF, EPUB, CSV et PDF, directement sur votre machine.

Il y a un moment où chaque pipeline de données butte sur la même corvée : lire des .docx, des .pptx ou des .xls et en tirer du texte exploitable sans perdre la mise en forme. ANYDOC règle ça avec un seul outil, et une sortie identique quel que soit le format d’entrée. Un .doc de 2003 et un .pptx d’hier passent par le même modèle de document, puis par le même sérialiseur. Les titres, les tableaux à cellules fusionnées, les notes de bas de page et les listes imbriquées ressortent en un seul Markdown cohérent.

Au quotidien, tout tient en quelques lignes. npx @firecrawl/anydoc report.docx affiche le Markdown dans le terminal, et l’option -o l’écrit dans un fichier. L’API toMarkdown() existe en Node, en Python et en Rust, avec le même comportement partout. En Node, la conversion tourne sur la file libuv sans bloquer l’événementiel ; en Python, le GIL est libéré.

  • 🔎 Le format est détecté depuis le contenu du fichier, pas depuis l’extension
  • ✍️ Titres, listes, tableaux, citations et notes conservés avec leurs ancres
  • 🧮 Équations Word et PowerPoint transcrites en LaTeX
  • 🖼️ Images intégrées décrites par leur texte alternatif
  • 🚀 Conversion médiane sous 5 ms, sans modèle de machine learning

Le détail qui me plaît, c’est la démo dans le navigateur. La page officielle embarque la bibliothèque en WebAssembly : vous déposez un fichier, il est converti localement et ne quitte jamais votre machine. Un réconfort certain pour les documents sensibles. Ce mode WASM se greffe aussi dans votre propre application.

Une limite honnête : pas de reconnaissance optique intégrée. Un PDF scanné échoue avec NeedsOcr. L’option --ocr hosted relaie alors le document vers Firecrawl Parse, et c’est le seul cas où il sort de la machine. Le crate Rust, lui, ne fait jamais d’appel réseau. Pour le gros du travail, la vitesse impressionne : sur cent documents réels couvrant quatorze formats, le benchmark donne une médiane de 4,4 ms par fichier, quand le convertisseur suivant tourne autour de 135 ms. ANYDOC est aussi le seul du comparatif à couvrir les quatorze formats.

Enfin, la bibliothèque se décline en compétence pour agents : npx skills add firecrawl/anydoc et vos assistants savent lire vos documents de bureau sans autre configuration. J’apprécie l’ambition : une seule porte d’entrée, du fichier le plus daté au plus récent, et du Markdown propre pour vos modèles.

Publications similaires

Laisser un commentaire