spacy-layout

让 spaCy 看懂 PDF 和 Word 的版面结构,直接用于 NLP 流程。

开源 🏷️完全免费 🔧 仅开源项目,无在线服务,需自行部署 搜索知识 🍴 复刻 63 🐛 待处理 26 👀 关注 14
GitHub ↗
GitHub 星标 ★ 914
维护状态 低维护
是否开源 开源
定价模式 🏷️完全免费 开源项目,MIT许可证,完全免费,无付费版本。

项目预览

spacy-layout 项目界面预览图
图片来源:GitHub 官方仓库名片

项目数据

分类搜索知识
开发团队explosion
定价模式🏷️完全免费
价格说明开源项目,MIT许可证,完全免费,无付费版本。
访问状态🔧 仅开源项目,无在线服务,需自行部署
是否开源是
开源协议MIT
主要语言Python
技术栈/模型document-layout,document-layout-analysis,docx,generative-ai,natural-language-processing,nlp,pdf,pdf-converter,rag,spacy
GitHub 星标★ 914
上线时间2024-11-17 00:00:00
代码更新2026-03-27
仓库体积2.2 MB
本站数据更新2026-11-08
维护状态低维护
收录时间2026-08-09
浏览次数4

项目介绍

spacy-layout 是一个将文档布局分析能力集成到 spaCy 生态的 Python 库,旨在让开发者用统一接口处理 PDF、Word 等复杂文档,并将版面结构(如段落、表格、标题)转化为可查询的语义对象。它解决了传统 NLP 工具无法直接理解文档物理布局的问题,通过抽取文本块的空间坐标和层级关系,使后续的文本挖掘、信息抽取和问答系统能感知文档结构。核心能力包括:自动识别文档中的文本区域和版面元素,输出带坐标和类型的结构化数据;与 spaCy 的 Doc 对象无缝衔接,支持管道式处理;提供轻量级 API,便于集成到现有 NLP 流程中。项目目前处于早期阶段,但设计思路新颖,适合需要处理非纯文本文档的 NLP 应用。

Star 增长趋势

本站每日记录该项目 GitHub 星标变化,观测越久曲线越完整

数据来源:GitHub API 逐日快照 · 收录于 2026-08-09 · 当前星标 ★ 914

使用教程

难度:进阶 约 20 分钟 部署方式:本地安装 4 步

环境要求

  • Python 3.10+
  • Docling 相关依赖(首次运行会下载模型)

安装与启动步骤

  1. 1装插件

    spacy-layout 把 Docling 的文档解析接进 spaCy 管线,一个 pip 包搞定。

    pip install spacy-layout
  2. 2加载布局管线

    在 spaCy 里加 layout 组件并指定 Docling 的解析器,PDF 与 Word 都能进流水线。

    import spacy
    nlp = spacy.blank("en")
    nlp.add_pipe("layout", config={"display": {"progress_bar": True}})
  3. 3跑一份 PDF

    直接对文件路径调用 nlp,输出带页码与表格结构的 Doc 对象。

    doc = nlp("report.pdf")
  4. 4取出结构化数据

    doc._.pages 里是逐页元素,可导出 Markdown 或 DataFrame 做后续检索。

如何确认成功

打印 doc._.pages 能看到分段与表格元素。

注意事项

  • 首次解析会拉取版面模型,离线环境需提前下好权重。

核心亮点

  • 直接复用 spaCy 生态,无需学习新框架,Doc 对象无缝集成。
  • 自动提取文本块坐标和类型,支持表格、标题等结构化信息。
  • 轻量级 API,几行代码即可将布局分析接入现有管道。

不足之处

  • 早期项目,文档和示例较少,上手可能需要参考源码。
  • 对复杂版面(如多栏、嵌套表格)的识别精度待验证。

适用场景

  • 从扫描版 PDF 中抽取结构化信息用于知识库构建。
  • 在 RAG 流程中预处理文档,提升检索对版面语义的理解。
  • 分析合同或论文的段落层级,辅助信息抽取与摘要。

替代项目

LayoutParser、pdfplumber、PyMuPDF

上一篇:pdf_oxide

下一篇:VectorCode

同类项目推荐

containers 开源

一键拉取 Runpod 镜像,快速跑通 Stable Diffusion 生成任务

| Dockerfiles for the Runpod container images used for our official templates.

★ 240 2026-08-09
stable-diffusion-nodejs 开源

在 Node.js 里直接跑 Stable Diffusion,GPU 加速出图

GPU-accelerated javascript runtime for StableDiffusion. Uses modified ONNX runtime t···

★ 58 2026-08-09
gemini-business2api 开源

把 Gemini 商业版变成 OpenAI 接口,多账号负载均衡,还能生成图片视频。

OpenAI-compatible API for Gemini Business with multi-account load balancing and mult···

★ 1335 2026-08-09
os 开源

像 cPanel 一样管服务器,容器化建站还能让 AI 代劳

Host-in-a-box. cPanel-like UX, Docker portability, agent-ready.

★ 360 2026-10-18
anolisa 开源

用 Rust 打造 AI 代理的底层操作系统,让多代理协同更稳更安全。

ANOLISA (Agentic Nexus Operating Layer & Interface System Architecture) | Agentic OS···

★ 660 2026-08-09
vibebin 开源

在自己的服务器上,用容器托管代码并直接运行。

vibebin: code and host inside Incus containers on your own VPS/server.

★ 110 2026-08-09
weaviate 开源

既要精准筛选又能模糊找相似,检索一步到位

Weaviate is an open-source vector database that stores both objects and vectors, all···

★ 16943 2026-08-09
ax-llm 开源

把大模型塞进爱芯芯片,OpenAI 接口即插即用

Explore LLM model deployment based on AXera's AI chips, It provides OpenAI‑compatib···

★ 170 2026-09-26
mlreef 开源

一站式 ML 协作平台,让团队高效管理代码、数据与实验。

The collaboration workspace for Machine Learning

★ 1463 2026-08-09