|
我们在日常工作中文档处理可以说占据了大部分工作内容,不管是我们企业内部的知识管理,还是个人的学习资料,我们想要把不同格式的文件转换为统一的、容易处理的格式毫无疑问是一件很棘手,让人头疼的事儿。 那么,今天我们要推荐的一款工具就能够帮大家解决这个问题,MarkItDown,一款由微软支持的开源项目,它不仅能够吧多种文件格式转换成Markdown,还特别针对大型语言模型(LLM)的应用进行了优化,成为了文档处理工具界的一个贤内助。 MarkItDown MCP服务支持丰富的文件格式支持,从常见的PDF、Word、Excel、PowerPoint到图像(支持OCR识别)、音频(支持转录)、HTML。 
再到基于文本的格式(如CSV、JSON、XML),甚至包括ZIP文件和YouTube链接,不管你是搞学术研究、商业报告还是自己研究个小项目,MarkItDown都能帮我们轻松应对。 Markdown格式的优势,两个字“简洁”,MarkItDown以简洁性和可读性著称,它与纯文本非常接近,但又提供了足够的结构化能力来表示文档的关键元素。 对于主流的大型语言模型(如OpenAI的GPT-4o),Markdown可以说是它们的“母语”,它们在大量Markdown格式的文本上进行了训练。 所以能够更好地理解和生成Markdown内容,这就让MarkItDown的输出不仅适合我们人工阅读,更是LLM的理想输入格式。 MarkItDown 如何安装使用?下面我们介绍一下MarkItDown的配置方法: 要安装 MarkItDown,可以使用pip:pip install 'markitdown[all]'。或者可以从源代码安装: gitclonegit@github.com:microsoft/markitdown.gitcdmarkitdownpipinstall-epackages/markitdown[all]
使用命令行markitdownpath-to-file.pdf>document.md
或者使用-o指定输出文件: markitdownpath-to-file.pdf-odocument.md 还可以通过管道传输内容: catpath-to-file.pdf|markitdown 可选依赖项,MarkItDown有可选依赖项,用于激活各种文件格式。在文档的前面,我们使用[all]选项安装了所有可选依赖项。也可以单独安装来获得更多控制。例如: pipinstallmarkitdown[pdf,docx,pptx] 将仅安装PDF、DOCX和PPTX文件的依赖项。 目前,以下可选依赖项可用: [all][pptx][docx][xlsx][xls][pdf][outlook][az-doc-intel]安装 Azure Document Intelligence 的依赖项;[audio-transcription][youtube-transcription]
插件方面,MarkItDown 还支持第三方插件,插件默认情况下是禁用的。用下面命令列出已安装的插件:要启用插件,请使用下面命令: markitdown--use-pluginspath-to-file.pdf 要查找可用插件,我们可以在GitHub上搜索标签#markitdown-plugin,要开发插件,可参考:
packages/markitdown-sample-plugin
Azure Document Intelligence,要使用 Microsoft Document Intelligence进行转换:markitdownpath-to-file.pdf-odocument.md-d-e"<document_intelligence_endpoint>" PythonAPI frommarkitdownimportMarkItDownmd=MarkItDown(enable_plugins=False)#设置为True以启用插件result=md.convert("test.xlsx")print(result.text_content)
在 Python 中进行 Document Intelligence 转换: frommarkitdownimportMarkItDownmd=MarkItDown(docintel_endpoint="<document_intelligence_endpoint>")result=md.convert("test.pdf")print(result.text_content)要使用大型语言模型进行图像描述,请提供llm_client和llm_model: frommarkitdownimportMarkItDownfromopenaiimportOpenAIclient=OpenAI()md=MarkItDown(llm_client=client,llm_model="gpt-4o")result=md.convert("example.jpg")print(result.text_content)Docker dockerbuild-tmarkitdown:latest.dockerrun--rm-imarkitdown:latest<~/your-file.pdf>output.md 以上就是MarkItDown配置的全部内容,如果大家在学习过程中遇到问题,欢迎评论区留言讨论!
|