microsoft/markitdown

Python tool for converting files and office documents to Markdown.

What it solves

MarkItDown 是一个轻量级 Python 工具,旨在将各种文件格式转换为 Markdown。这特别针对大语言模型(LLMs)的使用与文本分析流程进行了优化,因为 Markdown 能在保持 Token 效率并被大多数主流 LLM 原生理解的同时,保留文档的重要结构(如标题、列表和表格)。

How it works

该工具提供了一个统一的接口,可以转换广泛的格式,包括 PDF、Word、PowerPoint、Excel、HTML、EPubs 以及文本格式(CSV、JSON、XML)。它可以本地运行,使用内置转换器,或与云端服务集成以获得更高精度的提取:

  • Local Conversion: 使用 Python 库来从常见文档格式中提取内容。
  • Azure Integration: 与 Azure Document Intelligence 和 Azure Content Understanding 集成,进行高级布局分析、OCR 和多模态提取(包括音频和视频)。
  • LLM-powered OCR: 支持插件(如 markitdown-ocr)来使用 LLM Vision 从文档中嵌入的图像中提取文本。
  • LLM Image Descriptions: 可以使用 LLM 客户端(如 OpenAI)来生成文件中的图像描述。

Who it’s for

开发者正在构建 RAG(检索增强生成)流程或文本分析工具,需要将非结构化文档转换为 LLM 可以高效处理的干净、结构化的文本格式。

Highlights

  • Broad Format Support: 处理从 Office 文档、PDF 到 YouTube URL 和音频文件的一切内容。
  • Multimodal Capabilities: 支持音频的语音转录和通过 LLM 进行图像描述。
  • Extensible Architecture: 支持第三方插件来添加新的转换功能。
  • Flexible Deployment: 提供 CLI 工具、Python API 或 Docker 镜像。
  • Cloud-enhanced Extraction: 可选择性地与 Azure 服务集成,以处理复杂的表格、扫描的 PDFs、以及视频分析。

相关

  • 项目
  • 项目
  • 项目
  • 项目
  • 项目