尧图建网站 尧图建网站 YAOTU WEB BUILD 免费咨询
ARTICLE DETAIL

资讯详情

深耕网站建设与建站编程的一线实战洞察。

MarkItDown 文档转 Markdown 完整指南:从 PDF 到 LLM 三步跑通

MarkItDown 文档转 Markdown 完整指南:从 PDF 到 LLM 三步跑通 MarkItDown 文档转 Markdown 完整指南从 PDF 到 LLM 三步跑通【免费下载链接】markitdownPython tool for converting files and office documents to Markdown.项目地址: https://gitcode.com/GitHub_Trending/ma/markitdownMarkItDown 是一个 Python 工具核心用途就是文档转 Markdown把 PDF、Word、Excel、PPT、图片、音频这些常见文件转成带标题、列表、表格结构的 Markdown 文本可以直接喂给 LLM 做分析。下面按一个开发者第一次上手的顺序走一遍装环境、跑命令行、接 Python最后把 LLM 挂上去。 环境安装两种路线各几行命令最低要求 Python 3.10建议装在虚拟环境里。大多数人用 pip 装 PyPI 版本就行pip install markitdown[all]。[all]会把 PDF、DOCX、PPTX、音频转写这些可选依赖全部带上。只需要部分格式就按需写比如markitdown[pdf, docx]。要改源码就克隆仓库走 editable 安装3 行命令git clone https://gitcode.com/GitHub_Trending/ma/markitdown cd markitdown pip install -e packages/markitdown[all]一行命令完成文档转 MarkdownPDF 存成 .md 的写法装完立刻能验证。把 PDF 转出来并落到文件markitdown invoice.pdf -o invoice.md不加-o时结果打到标准输出直接 doc.md重定向也行。文件不方便当参数时走管道cat report.docx | markitdown。支持的输入覆盖 PDF、PPT、Word、Excel、图片、音频、HTML、CSV/JSON/XML、ZIP、EPUBYouTube 链接也能转。从 stdin 读时如果类型猜不出来加-x .pdf给个扩展名提示。Python 接入把转换结果接进自己的脚本脚本里用 Python API核心就三步from markitdown import MarkItDown md MarkItDown() print(md.convert(report.xlsx).text_content)convert返回的结果对象里markdown属性是原始 Markdown 文本text_content是同样的内容。处理不可信输入时建议换成更窄的convert_local()或convert_stream()避免多余的权限。批量场景很简单循环一个文件夹逐个convert再写文件不需要额外的 SDK。 给图片写描述、给扫描件做 OCR把 LLM 挂上去不配 LLM 时图片转换只输出 EXIF 元数据。构造MarkItDown时传llm_client和llm_model图片jpg/png和 PPTX 内嵌图片就会走视觉模型生成描述追加在# Description:小节里提示词可以用llm_prompt改。上面这张就是仓库测试用例用的样例图一个红圆、一个蓝方加一句要求模型提到 5bda1dd6 的提示专门用来验证 LLM 图片描述链路是否打通。对应测试在packages/markitdown/tests/test_module_misc.py。markitdown-ocr扫描件整页识别基础包不做 OCR。扫描件要装插件pip install markitdown-ocr再提供一个 OpenAI 兼容客户端。插件里的LLMVisionOCRService会把 PDF、DOCX、PPTX、XLSX 里嵌入的图片逐张发给视觉模型整页都是扫描的 PDF 会以 300 DPI 渲染成整页图再识别。from markitdown import MarkItDown from openai import OpenAI md MarkItDown(enable_pluginsTrue, llm_clientOpenAI(), llm_modelgpt-4o) print(md.convert(scan.pdf).text_content)服务实现在packages/markitdown-ocr/src/markitdown_ocr/_ocr_service.py分格式转换逻辑在同目录的_pdf_converter_with_ocr.py等文件里。踩坑速查报错时先看这几处某格式转换报错多半是少了可选依赖补装对应 extra例如markitdown[pdf]。图片没有描述输出llm_client和llm_model只传一个不生效两个都要有。装了 ocr 插件却没识别没传llm_client时插件会静默回退到内置转换器不报错也不识别。扫描 PDF 转出来是空文件内置 PDF 转换器只取文本层没有文本层就什么都没有换 ocr 插件整页识别。下一步克隆仓库拿packages/markitdown/tests/test_files/里的test.pdf跑一遍命令行转换再对着test_llm.jpg体验一次 LLM 图片描述。更多用法可参考测试用例packages/markitdown/tests/test_module_misc.py。【免费下载链接】markitdownPython tool for converting files and office documents to Markdown.项目地址: https://gitcode.com/GitHub_Trending/ma/markitdown创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表