Unstructured
来自 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
。- 您可以使用 extras 安装文档特定的依赖项,例如
pip install "unstructured[docx]"
。了解更多关于 extras 的信息,请点击这里。 - 要安装所有文档类型的依赖项,请使用
pip install "unstructured[all-docs]"
。
- 您可以使用 extras 安装文档特定的依赖项,例如
-
如果您的系统上尚不可用,请安装以下系统依赖项,例如使用 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
的主要用途是在数据加载器中。
UnstructuredLoader
查看使用示例,了解如何将此加载器用于本地分区和使用无服务器 Unstructured API 进行远程分区。
from langchain_unstructured import UnstructuredLoader
UnstructuredCHMLoader
CHM
代表 Microsoft Compiled HTML Help
(Microsoft 编译的 HTML 帮助文档)。
from langchain_community.document_loaders import UnstructuredCHMLoader
UnstructuredCSVLoader
逗号分隔值
(CSV
) 文件是一种分隔文本文件,使用逗号分隔值。文件的每一行都是一个数据记录。每个记录由一个或多个字段组成,字段之间用逗号分隔。
查看使用示例。
from langchain_community.document_loaders import UnstructuredCSVLoader
UnstructuredEmailLoader
查看使用示例。
from langchain_community.document_loaders import UnstructuredEmailLoader
UnstructuredEPubLoader
EPUB 是一种 电子书文件格式
,使用“.epub”文件扩展名。该术语是 electronic publication (电子出版物) 的缩写,有时也写成 ePub
。 EPUB
受到许多电子阅读器的支持,并且大多数智能手机、平板电脑和计算机都有兼容软件。
查看使用示例。
from langchain_community.document_loaders import UnstructuredEPubLoader
UnstructuredExcelLoader
查看使用示例。
from langchain_community.document_loaders import UnstructuredExcelLoader
UnstructuredFileIOLoader
查看使用示例。
from langchain_community.document_loaders import UnstructuredFileIOLoader
UnstructuredHTMLLoader
查看使用示例。
from langchain_community.document_loaders import UnstructuredHTMLLoader
UnstructuredImageLoader
查看使用示例。
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
UnstructuredOrgModeLoader
Org Mode 文档是一种文档编辑、格式化和组织模式,专为在自由软件文本编辑器 Emacs 中进行笔记、计划和创作而设计。
查看使用示例。
from langchain_community.document_loaders import UnstructuredOrgModeLoader
UnstructuredPDFLoader
查看使用示例。
from langchain_community.document_loaders import UnstructuredPDFLoader
UnstructuredPowerPointLoader
查看使用示例。
from langchain_community.document_loaders import UnstructuredPowerPointLoader
UnstructuredRSTLoader
reStructured Text
(RST
) 文件是一种文本数据文件格式,主要在 Python 编程语言社区中用于技术文档。
查看使用示例。
from langchain_community.document_loaders import UnstructuredRSTLoader
UnstructuredRTFLoader
在 API 文档中查看使用示例。
from langchain_community.document_loaders import UnstructuredRTFLoader
UnstructuredTSVLoader
制表符分隔值
(TSV
) 文件是一种简单的、基于文本的文件格式,用于存储表格数据。记录由换行符分隔,记录中的值由制表符分隔。
查看使用示例。
from langchain_community.document_loaders import UnstructuredTSVLoader
UnstructuredURLLoader
查看使用示例。
from langchain_community.document_loaders import UnstructuredURLLoader
UnstructuredWordDocumentLoader
查看使用示例。
from langchain_community.document_loaders import UnstructuredWordDocumentLoader
UnstructuredXMLLoader
查看使用示例。
from langchain_community.document_loaders import UnstructuredXMLLoader