MarkItDown 是什么:把各种文件转成 Markdown 给 LLM 用
MarkItDown 是微软出的轻量 Python 工具,把各种文件转成 Markdown,用于 LLM 和文本分析流水线。专注保留文档结构(标题、列表、表格、链接等)转成 Markdown。微软 AutoGen 团队出品。
支持格式
- PowerPoint
- Word
- Excel
- 图片(EXIF 元数据 + OCR)
- 音频(EXIF + 语音转录)
- HTML
- 文本格式(CSV、JSON、XML)
- ZIP(遍历内容)
- YouTube URL
- EPub
- 更多
为什么转 Markdown
Markdown 接近纯文本,标记最少,但仍能表达文档结构。主流 LLM(如 GPT-4o)原生"说"Markdown,训练了大量 Markdown 文本,理解得好。Markdown 还高度 token 高效(省钱)。
怎么用
Python 3.10+,建议虚拟环境:
python -m venv .venv
source .venv/bin/activate
pip install markitdown命令行:
markitdown input.pdf > output.mdPython API:
from markitdown import MarkItDown
md = MarkItDown()
result = md.convert("input.pdf")
print(result.text_content)适合谁
- RAG/知识库搭建:把企业文档(PDF/Word/PPT)批量转 Markdown 喂给 LLM 或向量库。
- 内容站:把多格式素材统一成 Markdown 再处理。
- AI agent:agent 读取文档前先用 MarkItDown 转成 LLM 友好格式。
安全注意
MarkItDown 以当前进程权限做 I/O(像 open()/requests.get()),会访问进程能访问的资源。不可信环境要清洗输入,用最窄的 convert_* 函数(如 convert_stream()、convert_local())。