系列教程 | 用Jina搭建PDF搜索引擎Part 1

PDF Search 系列教程来咯,在 Part 1 中,我们将演示如何从 PDF 中提取、处理并存储图像及文本。

随着神经搜索 (Neural Search) 技术的普及,越来越多开发者,开始尝试用 Jina 解决非结构化数据的索引和搜索问题。本系列教程中,我们将演示如何用 Jina 搭建一个 PDF 搜索引擎。

具体内容如下:

* Part 1 将介绍如何从 PDF 中提取、处理并存储图像及文本

* Part 2 将演示如何将这些信息输入到 CLIP 中(CLIP 是一个可以理解图像及文本的深度学习模型)。提取 PDF 图像及文本信息后,CLIP 将生成索引,输入图像或文本,即可进行语义相似性搜索。

* Part 3 通过客户端及 Streamlit 前端,对索引进行搜索。

* Part 4 为其他相关演示,如提取元数据等。

GitHub Repo 详见:

https://github.com/alexcg1/example-pdf-search/

前序简介:预期目标 & 技术栈

预期目标:搭建一个 PDF 搜索引擎,用户输入文本或上传图片,搜索引擎即可返回类似的图片和文本片段,并附带原始 PDF 链接。

本文将着重讲解如何将一个 900 多页的 PDF 处理成可供搜索的向量。

本教程将涉及以下技术栈:

DocArray:a data structure for unstructured data. 通过这个工具可以封装 PDF 文件、文本块、图像块以及搜索引擎的其他输入/输出。

详见:http://docarray.jina.ai/

Jina:为 DocArray Document 搭建流水线及神经搜索引擎,并将其扩展到云端。

详见:https://github.com/jina-ai/jina/

Jina Hub:无需逐一创建处理单元,可直接使用云端可复用模块。

详见:https://hub.jina.ai/

教程详解:提取 PDF 中的文本及图像

提取 PDF 中的文本及图像,有以下方法可供选择:

1. 用 Jina Hub 上的 PDFSegmenter Executor,提取 PDF 中文本块和图像块。

详见:

https://hub.jina.ai/executor/x9w7lcwg

2. 用 ImageMagick 和 OCR 对 PDF 中的每一页进行截图。

详见:

https://imagemagick.org/

3. 将 PDF 转换为 HTML,图片提取到目录,再次将 HTML 转换为文本(这里我们使用的是 Pandoc )。

详见:

https://pandoc.org/

本文将使用方法 1,提取 PDF 中的文本及图像。

 1、创建 PDF(也可使用已有文件) 

首先,我们需要一个示例文件,从维基百科中选择一个词条,并导出为 PDF 作为示例文档。本教程中我们用到的是 Rabbit 词条(也可以称为文章)。

具体地址见:

https://github.com/alexcg1/example-pdf-search/blob/main/data/rabbit.pdf

09e8f0d4713fa3ee7abdfc16f4ba8031.png

本教程中使用的浏览器为 Chrome

注意:

* 禁用页眉、页脚等设置,以免索引中出现类似 4/798 页等无关信息。

* 可以尝试通过改变页面大小来避免分页

 2、提取 PDF 中的文本及图像 

借助 Jina Hub 中的 Execut

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值