公司动态
MarkItDown 文件转Markdown:两条命令把PDF转成Markdown
MarkItDown 文件转Markdown两条命令把PDF转成Markdown【免费下载链接】markitdownPython tool for converting files and office documents to Markdown.项目地址: https://gitcode.com/GitHub_Trending/ma/markitdown想把PDF喂给大模型卡在格式转换上MarkItDown 这个文件转Markdown工具可以一条命令解决它把PDF、Word、Excel等办公文档转成Markdown并尽量保留标题、列表、表格这些结构。能转哪些文件先看这张表所有转换结果都统一为Markdown结构会尽量保留文件类型转换得到的内容PDF、Word、PowerPoint、Excel正文文字保留标题、列表、表格、链接等结构图片EXIF 元数据可选接入模型生成图片描述音频wav/mp3元数据可选启用语音转录HTML、CSV、JSON、XML文本内容EPUB、ZIP、YouTube URL、Outlook 邮件正文ZIP 会逐个遍历内容YouTube 取字幕注意两点需要 Python 3.10 以上输出面向文本分析和大模型消费不是逐像素的排版还原。两条命令跑通第一次转换第一次 PDF 转 Markdown 只需要这两行pip install markitdown[all] markitdown path-to-file.pdf -o output.md如果只需要部分格式可以按需安装例如pip install markitdown[pdf,docx]只装 PDF 和 Word 的依赖。在 Python 里用法相同构造一个 MarkItDown 实例调用 convert()再从结果里读 text_content 就是转出来的文本。想从源码安装的话克隆仓库 https://gitcode.com/GitHub_Trending/ma/markitdown 后执行pip install -e packages/markitdown[all]。新手容易错过的两个功能差异最大的两个功能都和平时读不到的内容有关。让大模型给图片写描述默认情况下图片在转换时只留下引用图里的内容会丢。构造时传入 llm_client 和 llm_modelMarkItDown 就会把 PPT 里的图片和单独的图片文件发给模型把描述写进 Markdownfrom markitdown import MarkItDown from openai import OpenAI md MarkItDown(llm_clientOpenAI(), llm_modelgpt-4o) print(md.convert(example.jpg).text_content)这张图就是仓库里该功能的测试素材要求模型描述其中的颜色与形状用插件把扫描页读出来插件默认关闭用markitdown --list-plugins列出已安装的插件加--use-plugins启用。其中官方的 markitdown-ocr 插件会借助视觉模型对 PDF、Word、PowerPoint、Excel 里内嵌的图片做 OCR扫描件图片里的文字也能被提取出来不接模型时会自动退回内置转换器不报错。下面的论文页来自项目测试材料其中的图表正是 OCR 要处理的内容适合用来解决哪些问题这三个场景最常用大模型知识库预处理。把一批文档丢给 RAG 或模型前先过一遍 MarkItDown标题层级和表格不丢模型的答复质量会差很多。老办公文件整理。旧 PPT 会议纪要、Excel 表格不好搜索文档批量转Markdown 用循环脚本即可整个目录一次转完。论文与电子书提取。EPUB、论文 PDF 转成 Markdown 后方便检索引用、做读书笔记。卡住了先查这两个问题大多数卡住的情况都是这两类。问转换结果为什么缺了很多内容多半是原文件没有文本层扫描件。内置转换只能读文本层这种情况可以安装 markitdown-ocr 插件或用-d和-e参数接入 Azure Document Intelligence。问打开某种格式比如PDF报错如果是按需安装过依赖可能缺了该格式的组件。pip install markitdown[all]装全或按需补装例如只装 PDF 用pip install markitdown[pdf]。一句话总结MarkItDown 是一个把办公文档喂给大模型的轻量免费工具常见格式的结构基本都能保留。更多格式细节和参数说明见 核心转换模块源码目录。【免费下载链接】markitdownPython tool for converting files and office documents to Markdown.项目地址: https://gitcode.com/GitHub_Trending/ma/markitdown创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考