安装
pip install "markitdown[all]" -i https://mirrors.aliyun.com/pypi/simple/
from markitdown import MarkItDown
from openai import OpenAI
# ✅ 通过 OpenAI 兼容接口连接本地 Ollama
ollama_client = OpenAI(
base_url="http://localhost:11434/v1",
api_key="ollama" # Ollama 不校验 key,填任意非空字符串即可
)
# 初始化 MarkItDown,绑定 Qwen3-VL-8B
md = MarkItDown(
llm_client=ollama_client,
llm_model="qwen3-vl:8b"
)
# ========== 使用示例 ==========
# 1. 扫描版 PDF 转 Markdown(VLM 逐页识别 + 结构还原)
pdf_result = md.convert("scanned_document.pdf")
print("=== PDF ===")
print(pdf_result.text_content)
# 2. Office 文档转 Markdown(docx/xlsx/doc/xls)
# 文本型内容直接解析,嵌入的图片自动交给 VLM 识别
docx_result = md.convert("report.docx")
xlsx_result = md.convert("data.xlsx")
# 3. 图片 OCR 转 Markdown
img_result = md.convert("screenshot.png")
print("=== IMAGE ===")
print(img_result.text_content)
# 💡 保存结果
with open("output.md", "w", encoding="utf-8") as f:
f.write(pdf_result.text_content)