一句话介绍
doc7 是由 magicrew 团队开源的新一代文档转 Markdown 工具,它不依赖传统 OCR,而是直接调用本地或远程的 OpenAI 兼容多模态模型(如 Qwen、LLaVA 等),将 PDF、Office 文件、扫描件、截图、图表、公式等全部转换为 AI 可直接搜索、引用和推理的结构化 Markdown。
它是什么?
在 AI 应用开发中,将各类文档转化为 AI 可理解的 Markdown 是构建 RAG 知识库、智能问答和文档分析的前置步骤。然而,传统方案大多依赖 OCR(如 Tesseract)或格式特定的解析器(如 pandoc),面对扫描件、复杂表格、图表和公式时往往效果不佳。
doc7 走了一条不同的路:它把每一页文档渲染成图片,直接交给视觉语言模型(VLM)进行”看图理解”,输出包含文本、表格、公式、图表描述的完整 Markdown。这意味着即使文档完全没有文本层(纯扫描件),doc7 也能”读懂”内容。
项目于 2026 年 8 月 2 日创建,上线不到两周已收获 近 900 Stars,采用 MIT 许可证,主语言为 Go,并提供了 CLI、Go SDK、MCP Server 和异步 HTTP 服务四种调用方式。
GitHub: https://github.com/magicrew/doc7
Stars: ~900
语言: Go
许可证: MIT
最新release: v0.1.2 (2026-08-07)
核心功能
1. 真正的视觉理解,无需 OCR
doc7 的核心创新在于它绕过了传统 OCR 流程。每一页文档被渲染为图片后,直接发送给视觉语言模型(VLM)进行端到端理解。这意味着:
- 扫描版 PDF 可以像正常文档一样被处理
- 复杂表格、图表、流程图可以被”看懂”并以结构化文本输出
- 公式可以直接输出为 LaTeX 格式
- 截图中的 UI 状态(错误提示、按钮文字)也能被提取
2. 广泛的格式支持
doc7 支持几乎所有主流文档格式,全部走同一条视觉理解流水线:
| 类别 | 格式 |
|---|---|
| 文档 | PDF, DOC/DOCX/DOCM, ODT, RTF |
| 演示 | PPT/PPTX, ODP |
| 表格 | XLS/XLSX, ODS |
| 电子书 | EPUB |
| 邮件 | EML, MHTML, Outlook MSG |
| 笔记本 | Jupyter (IPYNB) |
| 图片 | PNG, JPEG, GIF, WebP, BMP, TIFF, SVG |
| 网页 | HTML, HTTP/HTTPS URL, ZIP 归档 |
3. 本地推理,零边际成本
doc7 不向用户收取任何文档处理费用。你可以:
- 在本地运行 LM Studio 或 Ollama,加载一个视觉模型(如 qwen3.5-9b),然后零成本处理任意数量的文档
- 也可以使用远程 OpenAI 兼容 API(如 Azure、Cloudflare AI、Self-hosted vLLM 等)
- 配置一次后,API Key 保存在系统密钥链中,不会出现在仓库或发布包中
对于大规模文档处理需求,本地部署是成本最优的选择——只需考虑电力和硬件开销。
4. MCP Server 与 AI 工具集成
doc7 内置了 MCP(Model Context Protocol)服务器,提供一个类型为 convert_to_markdown 的工具。在 Claude Desktop、Cursor、Windsurf 等支持 MCP 的工具中,只需配置 JSON 即可让 AI 直接调用 doc7 转换文档:
{
"mcpServers": {
"doc7": {
"command": "/absolute/path/to/doc7",
"args": ["mcp"],
"env": {
"DOC7_BASE_URL": "http://127.0.0.1:1234/v1",
"DOC7_MODEL": "qwen3.5-0.8b"
}
}
}
}
5. 开放基准测试,结果公开透明
doc7 在公开基准测试中表现亮眼。使用相同的 qwen3.5-9b 模型和同一本地端点,在包含 15 个可视化事实的测试中:
| 工具 | 正确恢复事实数 |
|---|---|
| doc7 | 15⁄15 ✅ |
| MarkItDown + OCR | 9⁄15 |
| Docling (标准管道) | 3⁄15 |
所有基准测试的原始输出、SHA-256 摘要和评分规则均已提交到仓库,可供审查。
6. 丰富的工程特性
- 增量处理:
--resume参数可从中断处继续,已成功处理的页面不会被重新调用模型 - 文本锚定:
--text-grounding模式可验证 PDF 嵌入文本层中的精确数值和代码 - 并发控制:
--file-workers和--workers分别控制文件和页面级别并发 - 异步 HTTP 服务:
doc7 serve启动本地服务,支持文件上传和任务轮询 - Docker 支持:官方镜像
ghcr.io/magicrew/doc7:latest内置 LibreOffice、MuPDF、Chromium 和 CJK 字体 - Go SDK:
github.com/magicrew/doc7包可直接嵌入 Go 项目
适用人群
- AI 应用开发者:需要构建文档问答、智能摘要、RAG 知识库的应用
- 研究者和分析师:需要将学术论文、报告、可视化图表转为结构化 Markdown
- 隐私敏感用户:希望本地运行、文档不出机器的安全需求
- 开发者工具爱好者:喜欢尝试基于视觉语言模型的新方案
- 企业 IT 团队:需要批量处理大量文档但又不想支付云 API 按页计费的团队
与同类工具对比
|| 工具 | 核心方法 | 扫描文档支持 | 成本模型 | 调用方式 | 备注 | |——|——|———-|———-|———-|——| | doc7 | 视觉语言模型端到端理解 | ✅ 原生支持 | 免费(本地模型) | CLI / MCP / Go SDK / HTTP | 无需 OCR,Benchmark 15⁄15 | | anydoc | 格式解析器(Rust) | ❌ 不支持 OCR | 免费开源 | CLI / npm / pip / WASM | 速度快但纯扫描 PDF 无法处理 | | MarkItDown | 格式解析 + OCR 插件 | ⚠️ 需额外配置 OCR | 免费开源 | Python SDK | Benchmark 9⁄15 | | Docling | 专用文档 AI 管道 | ⚠️ 需配置模型 | 免费开源 | CLI / Python | Benchmark 3/15,输出文件极大 | | AWS Textract | 云服务 | ✅ | 按页计费 | REST API | 商业服务,数据出云 | | MinerU | 专用文档 AI | ✅ | 免费开源 | Python SDK | 重量级,依赖多 |
doc7 的核心优势:用视觉理解替代传统 OCR 流水线,对扫描文档、复杂排版、图表公式的处理能力远超纯解析方案。同时,它不绑定任何特定云服务商,所有模型端点由用户自主选择。
如何使用
安装
# macOS 或 Linux
curl -fsSL https://raw.githubusercontent.com/magicrew/doc7/main/scripts/install.sh | bash
# Windows PowerShell
irm https://raw.githubusercontent.com/magicrew/doc7/main/scripts/install.ps1 | iex
方式一:基础文档转换
首先启动 LM Studio 或 Ollama,加载一个视觉模型(如 qwen3.5-9b),然后:
# 转换单个 PDF
doc7 report.pdf
# 转换图片
doc7 screenshot.png
# 转换整个目录
doc7 read ./documents -o ./knowledge
# 输出到标准输出(可管道传给其他工具)
doc7 report.pdf --stdout > report.md
首次运行时,doc7 会自动检测系统中运行的本地模型服务器,列出可用模型供选择,并进行视觉理解验证测试。
方式二:配置远程端点
doc7 setup config \
--base-url https://your-api-endpoint/v1 \
--model qwen3.5-9b
如需 API Key,可通过环境变量或标准输入设置:
DOC7_API_KEY=sk-xxx doc7 report.pdf
# 或交互式输入
doc7 setup config --api-key-stdin
方式三:使用 MCP 集成到 AI 工具
在 Claude Desktop 或 Cursor 的 MCP 配置中添加 doc7,AI 即可在对话中直接请求转换文档:
{
"mcpServers": {
"doc7": {
"command": "/usr/local/bin/doc7",
"args": ["mcp"],
"env": {
"DOC7_BASE_URL": "http://127.0.0.1:1234/v1",
"DOC7_MODEL": "qwen3.5-9b"
}
}
}
}
配置完成后,AI 可以:
用户: 帮我转换这个 PDF 为 Markdown
AI: (自动调用 doc7 MCP 工具转换文档)
方式四:启动异步 HTTP 服务
# 启动本地服务
doc7 serve --addr 127.0.0.1:8787 --data-dir ./doc7-server
# 提交转换任务
curl -F file=@report.pdf http://127.0.0.1:8787/v1/jobs
# 轮询状态并下载结果
curl http://127.0.0.1:8787/v1/jobs/<job-id>
curl -o report.md http://127.0.0.1:8787/v1/jobs/<job-id>/markdown
方式五:Docker 部署
export DOC7_MODEL=qwen3.5-0.8b
export DOC7_SERVER_TOKEN=replace-me
docker compose pull
docker compose up --no-build
Docker 镜像内置了 LibreOffice、MuPDF、Chromium 和 CJK 字体,开箱即用。
高级用法
# 只处理指定页面
doc7 read report.pdf -o report-partial --pages 5,7,10-12
# 从中断处恢复
doc7 read report.pdf -o report-doc7 --resume
# 验证文本层精确值(适用于含文本的 PDF)
doc7 read report.pdf --text-grounding
# 检查本地模型连接
doc7 doctor --check-model
# 查看可用模型
doc7 models --base-url http://localhost:8000/v1
# 使用自定义 prompt 文件
doc7 read ./reports --prompt-file ./prompt.md
总结
doc7 代表了文档转 Markdown 工具的一个新思路:与其用复杂的 OCR + 解析器流水线,不如直接把页面交给视觉语言模型”看懂”。这种方法在扫描文档、复杂排版和图表处理上具有天然优势。
优点: - 视觉理解原生支持扫描件和复杂排版,Benchmark 表现优异(15/15) - 无需传统 OCR 依赖,配置简单(一条命令即可开始) - 本地推理零边际成本,大规模处理无费用焦虑 - 多调用方式:CLI、MCP、Go SDK、HTTP 服务、Docker 全覆盖 - MIT 开源,代码和基准测试完全可审计
不足: - 依赖视觉模型质量,小模型(<3B)对复杂图表的处理效果有限 - 转换速度受模型推理速度制约,不如任何doc这类纯解析工具快 - 项目较新(2026年8月发布),社区生态和文档丰富度仍在积累中 - Windows 版的 Apple Developer ID 签名和公证尚未完成(计划中)
推荐指数:⭐⭐⭐⭐☆(4.5/5)
如果你正在构建需要处理各类文档的 AI 应用,或者需要批量转换扫描件、图表密集的 PDF 为可搜索 Markdown,doc7 是目前最值得尝试的工具之一。特别是对于有本地 GPU 或已部署视觉语言模型的用户,它提供了一个零额外成本的文档处理方案。
原文链接:https://github.com/magicrew/doc7 基准测试:https://github.com/magicrew/doc7/tree/main/benchmarks