非结构化
来自Unstructured.IO的
unstructured
包从原始源文档(如PDF和Word文档)中提取干净的文本。本页介绍了如何在LangChain中使用unstructured
生态系统。
安装与设置
如果您使用的是本地运行的加载程序,请按照以下步骤来运行unstructured
及其依赖项。
-
为了最小的安装占用空间并利用开源
unstructured
包中不可用的功能,请使用pip install unstructured-client
安装Python SDK,同时使用pip install langchain-unstructured
来使用UnstructuredLoader
并通过Unstructured API进行远程分区。此加载器位于LangChain合作伙伴仓库中,而不是langchain-community
仓库中,您需要一个api_key
,您可以在此生成一个免费密钥。- Unstructured的SDK文档可以在这里找到: https://docs.unstructured.io/api-reference/api-services/sdk
-
要在本地运行所有内容,请使用
pip install unstructured
安装开源Python包,同时安装pip install langchain-community
,并使用上面提到的相同的UnstructuredLoader
。- 您可以通过额外选项安装特定文档的依赖项,例如
pip install "unstructured[docx]"
。了解更多关于额外选项的信息这里。 - 要安装所有文档类型的依赖项,请使用
pip install "unstructured[all-docs]"
。
- 您可以通过额外选项安装特定文档的依赖项,例如
-
如果您的系统上尚未安装以下系统依赖项,请使用例如Mac的
brew install
进行安装。 根据您解析的文档类型,您可能不需要所有这些。libmagic-dev
(文件类型检测)poppler-utils
(图像和PDF)tesseract-ocr
(图像和PDF)qpdf
(PDF)libreoffice
(MS Office文档)pandoc
(EPUB)
-
在本地运行时,Unstructured 还建议使用 Docker 按照此指南 以确保所有系统依赖项正确安装。
Unstructured API 需要 API 密钥来发出请求。 您可以在此申请 API 密钥,并立即开始使用! 查看 README 此处以开始进行 API 调用。 我们非常希望听到您的反馈,请在我们的社区 Slack中告诉我们进展如何。 请继续关注质量和性能的改进! 如果您想自托管 Unstructured API 或在本地运行,请查看此处的说明。
数据加载器
Unstructured
的主要用途是在数据加载器中。
非结构化加载器
查看使用示例,了解如何使用此加载器在本地和远程通过无服务器Unstructured API进行分区。
from langchain_unstructured import UnstructuredLoader
非结构化CHM加载器
CHM
表示 Microsoft Compiled HTML Help
。
from langchain_community.document_loaders import UnstructuredCHMLoader
非结构化CSV加载器
一个逗号分隔值
(CSV
)文件是一种使用逗号分隔值的文本文件。文件的每一行都是一个数据记录。每个记录由一个或多个字段组成,字段之间用逗号分隔。
查看使用示例。
from langchain_community.document_loaders import UnstructuredCSVLoader
非结构化电子邮件加载器
查看使用示例。
from langchain_community.document_loaders import UnstructuredEmailLoader
非结构化EPub加载器
EPUB 是一种使用“.epub”文件扩展名的电子书文件格式
。该术语是电子出版物的缩写,有时也写作ePub
。EPUB
被许多电子阅读器支持,并且大多数智能手机、平板电脑和电脑都有兼容的软件可用。
查看使用示例。
from langchain_community.document_loaders import UnstructuredEPubLoader
非结构化Excel加载器
查看使用示例。
from langchain_community.document_loaders import UnstructuredExcelLoader
非结构化文件IO加载器
查看一个使用示例。
from langchain_community.document_loaders import UnstructuredFileIOLoader
非结构化HTML加载器
查看使用示例。
from langchain_community.document_loaders import UnstructuredHTMLLoader
非结构化图像加载器
查看使用示例。
from langchain_community.document_loaders import UnstructuredImageLoader
UnstructuredMarkdownLoader
查看使用示例。
from langchain_community.document_loaders import UnstructuredMarkdownLoader
UnstructuredODTLoader
Open Document Format for Office Applications (ODF)
,也称为OpenDocument
,
是一种用于文字处理文档、电子表格、演示文稿和图形的开放文件格式,并使用ZIP压缩的XML文件。它的开发目的是为办公应用程序提供一个开放的、基于XML的文件格式规范。
查看使用示例。
from langchain_community.document_loaders import UnstructuredODTLoader
非结构化组织模式加载器
一个Org Mode文档是一种文档编辑、格式化和组织模式,专为自由软件文本编辑器Emacs中的笔记、规划和创作而设计。
查看使用示例。
from langchain_community.document_loaders import UnstructuredOrgModeLoader
非结构化PDF加载器
查看一个使用示例。
from langchain_community.document_loaders import UnstructuredPDFLoader
非结构化PowerPoint加载器
查看使用示例。
from langchain_community.document_loaders import UnstructuredPowerPointLoader
非结构化RST加载器
一个reStructured Text
(RST
) 文件是一种文本数据文件格式,主要用于Python编程语言社区中的技术文档。
查看使用示例。
from langchain_community.document_loaders import UnstructuredRSTLoader
非结构化RTF加载器
请参阅API文档中的使用示例。
from langchain_community.document_loaders import UnstructuredRTFLoader
非结构化TSV加载器
一个tab-separated values
(TSV
) 文件是一种简单的、基于文本的文件格式,用于存储表格数据。
记录由换行符分隔,记录中的值由制表符分隔。
查看使用示例。
from langchain_community.document_loaders import UnstructuredTSVLoader
非结构化URL加载器
查看使用示例。
from langchain_community.document_loaders import UnstructuredURLLoader
非结构化Word文档加载器
查看一个使用示例。
from langchain_community.document_loaders import UnstructuredWordDocumentLoader
非结构化XML加载器
查看使用示例。
from langchain_community.document_loaders import UnstructuredXMLLoader