Marker
专用模型

Marker

Marker 是一款由 VikParuchuri 开发的高精度 PDF 转换工具,可以将 PDF 文档快速转换为 Markdown、JSON 和 HTML 格式。它支持多种文档类型和语言,能够智能地处理复杂的文档结构,并提供 OCR、图像提取和 LLM 增强等功能,是进行文档转换和数字化的强大助手。

快点收藏起来

什么是 Marker

Marker 是一款由 VikParuchuri 开发的强大工具,旨在快速且高精度地将 PDF 文档转换为 Markdown、JSON 和 HTML 格式。它不仅支持基本的文本转换,还能智能地处理复杂的文档结构,包括表格、公式、链接、参考文献和代码块。Marker 能够提取并保存文档中的图像,并能移除常见的文档伪影,如页眉和页脚。其设计目标是为用户提供一个高效且准确的 PDF 转换解决方案,尤其适用于需要将技术文档、书籍或科学论文转换为易于编辑和阅读的 Markdown 格式的场景。

Marker

Marker 的功能

Marker 具备一系列令人印象深刻的功能,使其在 PDF 转换工具中脱颖而出:

  • 多格式转换: Marker 不仅可以将 PDF 转换为 Markdown,还支持输出为 JSON 和 HTML 格式,满足不同用户的需求。
  • 广泛的文档支持: Marker 可以处理各种类型的文档,包括 PDF、图像、PPTX、DOCX、XLSX、HTML 和 EPUB 文件,并且支持所有语言。
  • 智能格式化: Marker 能够准确地格式化表格、表单、数学公式(转换为 LaTeX)、内联数学、链接、参考文献和代码块,保留文档的原始结构和语义。
  • 图像提取: 在转换过程中,Marker 可以自动提取文档中的图像,并将其保存到本地文件夹中,同时在 Markdown 文件中创建相应的链接。
  • 伪影移除: Marker 能够智能地检测并移除文档中的页眉、页脚和其他不必要的元素,使转换后的内容更加干净和专注于主要内容。
  • 可扩展性: Marker 允许用户通过自定义格式化和逻辑进行扩展,以满足特定的转换需求。
  • 可选的 LLM 增强: Marker 提供了使用大型语言模型(LLMs)来提高转换准确性的选项,用户可以通过设置 Gemini API 密钥来启用此功能。
  • 硬件加速: Marker 可以在 GPU、CPU 或 MPS (Apple Silicon) 上运行,利用硬件加速提高转换速度。
  • OCR 支持: Marker 默认使用 Surya OCR 引擎进行光学字符识别,可以将扫描的 PDF 或图像中的文本转换为可编辑的文本。用户也可以选择使用 Tesseract OCR 或禁用 OCR。
  • 灵活的配置选项: 用户可以通过环境变量或配置文件来调整 Marker 的行为,例如强制进行 OCR、去除现有 OCR 文本、指定语言、处理特定页面范围等。

如何使用/快速开始

要开始使用 Marker,请按照以下步骤进行操作:

  1. 安装 Python: Marker 需要 Python 3.10 或更高版本。请确保您的系统上已安装符合要求的 Python 版本。
  2. 安装 PyTorch: Marker 依赖 PyTorch。您可以根据您的系统和是否使用 GPU,在 PyTorch 官网获取安装命令并进行安装。
  3. 安装 Marker: 可以使用 pip 包管理器来安装 Marker:
    pip install marker-pdf
  4. 克隆 Marker 仓库(可选): 如果您希望贡献代码或查看更多详细信息,可以克隆 Marker 的 GitHub 仓库:
    git clone https://github.com/VikParuchuri/marker.git
  5. 基本用法 - 转换单个文件: 使用 marker_single 命令来转换单个文件。您需要指定输入文件路径和输出文件夹路径。例如:
    marker_single /path/to/your/document.pdf /path/to/your/output/folder
  6. 指定输出格式: 您可以使用 --output_format 参数指定输出格式,例如 markdownjsonhtml。默认为 markdown
  7. 强制 OCR: 如果您的 PDF 包含扫描的文本,可以使用 --force_ocr 参数强制进行 OCR 处理。
  8. 指定语言: 使用 --languages 参数指定文档的语言,例如 --languages English--languages zh-CN
  9. 使用 LLM 增强: 如果您想使用 LLM 提高准确性,需要设置 GOOGLE_API_KEY 环境变量,并使用 --use_llm 参数。
  10. 转换多个文件: 使用 marker 命令可以转换一个文件夹中的多个文件。您可以使用 --workers 参数指定并行处理的文件数量,以提高效率。
  11. 查看更多选项: 使用 marker --helpmarker_single --help 可以查看所有可用的命令行参数和选项,以便更精细地控制转换过程。

通过以上步骤,您就可以开始使用 Marker 将 PDF 文档转换为您需要的格式了。Marker 的强大功能和灵活的配置选项使其成为处理各种 PDF 转换任务的理想工具。建议您查阅 Marker 的 GitHub 仓库和相关文档,了解更多高级用法和配置技巧。

相关导航