MarkItDown MCP:一款好用的將文件和辦公文檔轉換爲 Markdown 的 AI 工具!
我們在日常工作中文檔處理可以說佔據了大部分工作內容,不管是我們企業內部的知識管理,還是個人的學習資料,我們想要把不同格式的文件轉換爲統一的、容易處理的格式毫無疑問是一件很棘手,讓人頭疼的事兒。
那麼,今天我們要推薦的一款工具就能夠幫大家解決這個問題,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]'
。或者可以從源代碼安裝:
git clone git@github.com:microsoft/markitdown.git
cd markitdown
pip install -e packages/markitdown[all]
使用命令行
markitdown path-to-file.pdf > document.md
或者使用 -o
指定輸出文件:
markitdown path-to-file.pdf -o document.md
還可以通過管道傳輸內容:
cat path-to-file.pdf | markitdown
可選依賴項,MarkItDown 有可選依賴項,用於激活各種文件格式。在文檔的前面,我們使用
[all]
pip install markitdown[pdf, docx, pptx]
將僅安裝 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 視頻轉錄的依賴項;
插件方面,MarkItDown 還支持第三方插件,插件默認情況下是禁用的。用下面命令列出已安裝的插件:
markitdown --list-plugins
要啓用插件,請使用下面命令:
markitdown --use-plugins path-to-file.pdf
要查找可用插件,我們可以在GitHub上搜索標籤
#markitdown-plugin,
packages/markitdown-sample-plugin
Azure Document Intelligence,要使用 Microsoft Document Intelligence 進行轉換:
markitdown path-to-file.pdf -o document.md -d -e "<document_intelligence_endpoint>"
Python API
from markitdown import MarkItDown
md = MarkItDown(enable_plugins=False) # 設置爲 True 以啓用插件
result = md.convert("test.xlsx")
print(result.text_content)
在 Python 中進行 Document Intelligence 轉換:
from markitdown import MarkItDown
md = MarkItDown(docintel_endpoint="<document_intelligence_endpoint>")
result = md.convert("test.pdf")
print(result.text_content)
要使用大型語言模型進行圖像描述,請提供
llm_client
llm_model
from markitdown import MarkItDown
from openai import OpenAI
client = 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
以上就是MarkItDown配置的全部內容,如果大家在學習過程中遇到問題,歡迎評論區留言討論!
相關學習鏈接:https://github.com/microsoft/markitdown
本文由 Readfog 進行 AMP 轉碼,版權歸原作者所有。
來源:https://mp.weixin.qq.com/s/V6oC51wW9BfpsOFfIohDFg