Unstructured
unstructured包,来自 Unstructured.IO,可以从 PDF 和 Word 文档等原始源文档中提取干净的文本。 此页面介绍如何在 LangChain 中使用unstructured生态系统。
安装和设置
如果您使用的是本地运行的加载器,请按照以下步骤设置 unstructured 及其依赖项。
-
为了获得最小的安装占地面积并利用 Unstructured 开放源代码包中未提供的功能,请使用
pip install unstructured-client安装 Python SDK,以及pip install langchain-unstructured以便远程使用UnstructuredLoader和 Unstructured API 进行分区。此加载器位于 LangChain 合作伙伴存储库中,而不是langchain-community存储库中,您将需要一个api_key,您可以在此处生成免费密钥。- SDK 的 Unstructured 文档可以在这里找到: 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。
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