类功能
功能描述
继承实现langchain_community.document_loaders.base.BaseLoader,执行pdf文档解析开启布局解析需要联网下载OCR模型,需保持网络通畅。使用第三方PaddleOCR,识别精确度依赖第三方OCR模型。
函数原型
from mx_rag.document.loader import PdfLoader PdfLoader(file_path, lang, layout_recognize) # 参数枚举值 from mx_rag.utils.common import Lang class Lang(Enum): EN: str = 'en' CH: str = 'ch'
参数说明
参数名 |
类型 |
可选/必选 |
说明 |
---|---|---|---|
file_path |
str |
必选 |
pdf文档路径,路径长度取值范围为[1,1024],不能为软链接且不允许存在".."。文档页数≤1000页,文档大小≤100MB。 |
lang |
Lang |
可选 |
pdf文档文字类型,当前支持中文或英文(Lang.CH/Lang.EN),默认中文(Lang.CH)。 |
layout_recognize |
bool |
可选 |
是否使能pdf layout布局分析,使能之后才支持文档图片解析和表格信息解析,默认“False”,即不使能。pdf中的图片像素长宽不能超过2048。 说明:
当layout_recognize设置为“True”时,PaddleOCR会联网下载文件,本接口内部使用了pickle模块加载模型,可能存在恶意构造的文件在反序列化时带来安全风险,请确保加载的模型文件来自可信来源。 |
调用示例
from mx_rag.document.loader import PdfLoader loader = PdfLoader("test.pdf")docs = loader.lazy_load() print(list(docs))
父主题: PdfLoader类