微软强推的 md 神器 MarkItDown 介绍_markitdown官方参数详情
简介
Microsoft 开源的 MarkItDown 是一个功能强大的 Python 工具,专注于将多种文件格式(如 Office 文档、图像、音频等)转换为标准化的 Markdown 格式。
一、工具简介
MarkItDown 由微软开发,旨在简化文档管理和知识库构建流程。它通过智能解析和转换技术,支持 OCR 文字识别、元数据提取、语音转文字等功能,特别适合需要结构化处理多源数据的场景。
二、核心功能
- 支持格式广泛
- 文档类:Word、Excel、PPT、HTML、PDF、ZIP(可遍历内容)。
- 多媒体类:图像(支持 EXIF 元数据和 OCR)、音频(语音转录为文本)。
- 结构化数据:CSV、JSON、XML 等文本格式。
- 智能处理能力
- 集成大型语言模型(如 GPT-4o),可自动生成图像描述或优化文本内容。
- 支持 Docker 容器化部署,简化环境依赖。
目前在 GitHub 已经收到 56.3k star🌟。
- GitHub:https://github.com/microsoft/markitdown
使用
- 安装
git clone git@github.com:microsoft/markitdown.gitcd markitdownpip install -e \'packages/markitdown[all]\'
- 命令行
markitdown path-to-file.pdf > document.md# -o 指定输出文件markitdown path-to-file.pdf -o document.md# pipe 内容cat path-to-file.pdf | markitdown
- 可选依赖项:
pip install \'markitdown[pdf, docx, pptx]\'
目前,以下可选依赖项可供使用:- [all]:安装所有可选依赖项。
- [pptx]:安装用于 PowerPoint 文件的依赖项。
- [docx]:安装用于 Word 文件的依赖项。
- [xlsx]:安装用于 Excel 文件的依赖项。
- [xls]:安装用于旧版 Excel 文件的依赖项。
- [pdf]:安装用于 PDF 文件的依赖项。
- [outlook]:安装用于 Outlook 邮件的依赖项。
- [az-doc-intel]:安装用于 Azure Document Intelligence 的依赖项。
- [audio-transcription]:安装用于 wav 和 mp3 文件的音频转录依赖项。
- [youtube-transcription]:安装用于获取 YouTube 视频转录的依赖项。
Python API
- 基础用法:
from markitdown import MarkItDownmd = MarkItDown(enable_plugins=False) # Set to True to enable pluginsresult = md.convert(\"test.xlsx\")print(result.text_content)
- 文档智能转换:
from markitdown import MarkItDownmd = MarkItDown(docintel_endpoint=\"\")result = md.convert(\"test.pdf\")print(result.text_content)
- 要用大型语言模型进行图像描述,请提供LLM客户端和LLM模型。
from markitdown import MarkItDownfrom openai import OpenAIclient = OpenAI()md = MarkItDown(llm_client=client, llm_model=\"gpt-4o\")result = md.convert(\"example.jpg\")print(result.text_content)
Docker 部署
docker build -t markitdown:latest .docker run --rm -i markitdown:latest < ~/your-file.pdf > output.md
典型应用场景
- 文档管理
将 Office 文件批量转为 Markdown,便于 Git 版本控制和团队协作13。 - 数据分析
转换 CSV/JSON 数据为 Markdown 表格,快速生成报告1。 - 知识库构建
提取图像中的文字(OCR)、音频转录文本,整合为结构化知识库36]。 - 自动化流程
结合 CI/CD 工具,实现文档转换与发布的自动化2]。