跳到主要内容
Open on GitHub

Unstructured

来自 Unstructured.IOunstructured 包可以从 PDF 和 Word 文档等原始源文档中提取干净的文本。本页面介绍如何在 LangChain 中使用 unstructured 生态系统。

安装与设置

如果您正在使用本地运行的加载器,请按照以下步骤启动 unstructured 及其依赖项。

  • 为了最小化安装占用空间并利用开源 unstructured 包中未提供的功能,请安装 Python SDK,使用 pip install unstructured-clientpip install langchain-unstructured 来使用 UnstructuredLoader 并通过 Unstructured API 进行远程分区。此加载器位于 LangChain 合作伙伴仓库中,而非 langchain-community 仓库,您将需要一个 api_key,您可以在此处生成免费密钥。

  • 要在本地运行所有内容,请安装开源 Python 包,使用 pip install unstructuredpip install langchain-community,并使用上述相同的 UnstructuredLoader

    • 您可以使用 extra 额外项安装特定文档的依赖项,例如 pip install "unstructured[docx]"。在此处了解有关 extra 额外项的更多信息。
    • 要安装所有文档类型的依赖项,请使用 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 的主要用途是数据加载器。

UnstructuredLoader

请参阅使用示例,了解如何使用此加载器通过无服务器 Unstructured API 在本地和远程进行分区。

from langchain_unstructured import UnstructuredLoader
API 参考: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

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