十年匠心定制 · 商业建站与技术教学双线并行 咨询热线:400-886-1026 service@lmnt.cn
ARTICLE DETAIL

资讯详情

深耕网站建设与运营推广的一线实战洞察。

如何用 MarkItDown 把扫描 PDF 和办公文档快速转成 Markdown

如何用 MarkItDown 把扫描 PDF 和办公文档快速转成 Markdown 如何用 MarkItDown 把扫描 PDF 和办公文档快速转成 Markdown【免费下载链接】markitdownPython tool for converting files and office documents to Markdown.项目地址: https://gitcode.com/GitHub_Trending/ma/markitdown如果你手头总有一堆扫描版发票、医疗报告或 PPT需要把内容变成可检索、能喂给大模型的文本手工复制粘贴会浪费大量时间。MarkItDown 就是干这件事的 Python 工具它把各类文件和办公文档转成 Markdown并且可以接上大语言模型LLM让视觉模型帮你把图片里的文字也读出来。MarkItDown 的定位它能做什么不能做什么它主要帮你处理三类事格式转换把 PDF、DOCX、PPTX、XLSX以及图片、音频、视频、网页等多来源内容统一转成 Markdown 文本扫描件识别通过 LLM 视觉服务LLMVisionOCRService提取图片和扫描件中的文字覆盖 PDF、DOCX、PPTX、XLSX 四类文档LLM 辅助处理用 LLM 生成图片描述、做表格的结构化转换省掉大量手工整理。边界也要说清楚它不是像素级的排版还原工具产物就是 Markdown 文本而所有 LLM 相关能力OCR、图片描述都依赖你自己配置的 OpenAI 兼容客户端没有 API 密钥就只能跑基础格式转换。安装 MarkItDown 并跑通第一次转换三步装好并跑起来git clone https://gitcode.com/GitHub_Trending/ma/markitdown cd markitdown pip install -e .想启用 LLM 功能的话先准备好一个 OpenAI 兼容的客户端from markitdown_ocr import LLMVisionOCRService ocr_service LLMVisionOCRService( llm_clientyour_openai_client, model_namegpt-4-vision-preview )客户端配好后后面的 OCR 和图片描述场景直接就能用。三个最常用的文档处理场景把扫描 PDF 和带图片的办公文档转成可读 Markdown扫描出来的文件里往往只有图片普通转换只能得到空内容。这时把 LLM 视觉服务注入 MarkItDown让模型逐页识别from markitdown import MarkItDown from markitdown_ocr import LLMVisionOCRService converter MarkItDown(ocr_serviceLLMVisionOCRService(llm_clientclient)) markdown converter.convert(medical_report_scan.pdf)下图就是一页典型的文档扫描内容转换后文字会按原位置进入 Markdown段落顺序不会乱让 LLM 为图片文件生成描述遇到含图表、公式的图片时不必在输出里只留一个文件名。转换时传入 LLM 客户端后模型会直接把图片内容读成结构化描述写进 Markdown。下面这张项目自带的测试图就是用来验证这个能力的样例用命令行批量转换一整个文件夹批量任务不用写 Python 脚本一条命令就能转完整个目录同时开启 OCR 和 LLM 描述markitdown convert --input ./docs --output ./markdown_output --ocr --llm-descriptionsLLM / OCR 集成的工作原理这条链路并不神秘文档进来后增强版转换器先取出文档里嵌入的图片把每张图连同提取提示词发给视觉模型识别到的文字再放回对应位置维持文档原有的阅读结构。如果某次 LLM 调用失败输出里就会缺失对应图片的文字可以按下一节的方式排查。想读代码的话直接看这几个核心文件就够了OCR 服务层LLMVisionOCRService 的实现PDF 的 OCR 增强转换带 OCR 的 PDF 转换器Word 的 OCR 增强转换带 OCR 的 DOCX 转换器想看更多 LLM 集成写法test_module_misc.py 里的测试用例是很好的起步参考。常见坑与排查思路扫描件转出来是空的多半是转换时没把 LLM 客户端传进去。确认已经通过 LLMVisionOCRService 注入了 OCR 服务否则走的只是普通格式转换不会识别图片。LLM 调用失败先检查 API 密钥配置和网络连接仍然不通的话可以换一个轻量些的模型试试比如从 gpt-4-vision-preview 降级到 gpt-3.5-turbo。识别效果不理想图片分辨率是前提尽量保证不低于 300 DPI还可以用--ocr-confidence-threshold参数调整识别阈值。别把可选当必选OCR 和图片描述都是可插拔的增强项只转纯文本类办公文档时不需要任何密钥配置。MarkItDown 把机器读不懂的文档变成了干净的 Markdown 文本配上 LLM 视觉服务后扫描件也能自动出文字上面三个场景挑一个试起来就行。【免费下载链接】markitdownPython tool for converting files and office documents to Markdown.项目地址: https://gitcode.com/GitHub_Trending/ma/markitdown创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表