Test Markdownit对比MinerU
摘要
Test Markdownit对比MinerU
基础用法(无大模型)
- 优点:
- 各种文件格式都能转成markdown
- 速度快,不到1s一张10页的论文pdf就被转换完成
- 缺点:无法OCR、处理图片,无法处理公式
- 举例
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25from markitdown import MarkItDown
import os
def convert_pdf_to_md(pdf_filename):
# 创建output目录(如果不存在)
output_dir = "output"
if not os.path.exists(output_dir):
os.makedirs(output_dir)
md = MarkItDown()
result = md.convert(pdf_filename)
# 构建输出文件路径
output_filename = os.path.splitext(os.path.basename(pdf_filename))[0] + ".md"
output_path = os.path.join(output_dir, output_filename)
# 将结果写入文件
with open(output_path, "w", encoding="utf-8") as f:
f.write(result.text_content)
print(f"结果已保存到: {output_path}")
if __name__ == "__main__":
pdf_filename = "demo1.pdf"
convert_pdf_to_md(pdf_filename)
使用大语言模型进行图像描述
- 仓库的readme举例描述如下
1
2
3
4
5
6
7
8from 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) - 实际运行不了;需要改成如下,并添加自己的秘钥;
- 由于我没买过openAI的API,所以换成了Gemini进行尝试,结果运行出错,调查仓库issue发现此软件未对OpenAI之外的模型进行兼容处理;尽管使用OpenAI的API,也不能OCR;参考如下
- https://github.com/microsoft/markitdown/issues/255
- https://github.com/microsoft/markitdown/issues/256
- https://github.com/microsoft/markitdown/issues/232
1
2
3
4
5
6
7
8
9
10
11
12
13from markitdown import MarkItDown
from openai import OpenAI
import os
# 设置 OpenAI API 密钥
api_key = input("请输入您的 OpenAI API 密钥: ").strip()
os.environ["OPENAI_API_KEY"] = api_key
client = OpenAI()
md = MarkItDown(llm_client=client, llm_model="gpt-4")
result = md.convert("image1.jpg")
print(result.text_content)
Markitdown与MinerU对比
- 不同
- Markitdown无OCR功能、无法处理图片、无法处理公式
- Markitdown速度快,不到1s一张10页的论文pdf就被转换完成;而MinerU需要7s左右(在GPU加速下)
- 共同点
- Markitdown、MinerU都能将各种文件格式转成markdown,包括PDF、图片、word、excel、ppt等
Test Markdownit对比MinerU
https://tolsz.me/2025/01/13/Markitdown/