Sobre o projeto
MarkItDown é uma ferramenta baseada em Python que converte múltiplos formatos de arquivos em Markdown, preservando estruturas de documentos como cabeçalhos, listas, tabelas e links. Ela foi projetada para preparar dados para consumo por Large Language Models (LLMs) e ferramentas de análise de texto.
Os formatos suportados incluem:
- Documentos do Office: Word, PowerPoint, Excel (incluindo formatos .xls antigos).
- Documentos e Web: PDF, HTML, EPub.
- Formatos de Dados: CSV, JSON, XML.
- Multimídia: Imagens (EXIF e OCR), Áudio (EXIF e transcrição) e URLs do YouTube.
- Arquivos: Arquivos ZIP.
Principais recursos e integrações:
- Integração com LLM: Suporta o uso de clientes LLM (ex: OpenAI) para gerar descrições de imagens e realizar OCR via plugins.
- Integração com Azure: Fornece integração opcional com Azure Document Intelligence e Azure Content Understanding para extração baseada em nuvem de alta fidelidade, incluindo suporte multimodal para vídeo e extração de campos estruturados (YAML front matter).
- Extensibilidade: Suporta um sistema de plugins para adicionar novos conversores de formato de arquivo.
- Interface: Oferece tanto uma interface de linha de comando (CLI) quanto uma API Python para integração em fluxos de trabalho maiores.