Skip to main content

无结构化

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

安装和设置

如果您使用的是本地运行的加载器,请按照以下步骤获取 unstructured 及其依赖项的本地运行环境。

  • 使用 pip install unstructured 安装 Python SDK。
    • 您可以使用 extras 安装特定于文档的依赖项,例如 pip install "unstructured[docx]"
    • 要安装所有文档类型的依赖项,请使用 pip install "unstructured[all-docs]"
  • 如果您的系统上尚未安装以下系统依赖项,请安装它们。根据您解析的文档类型,您可能不需要全部依赖项。
    • libmagic-dev(文件类型检测)
    • poppler-utils(图像和 PDF)
    • tesseract-ocr(图像和 PDF)
    • libreoffice(MS Office 文档)
    • pandoc(EPUB)

如果您希望快速上手,可以简单地运行 pip install unstructured,然后使用 UnstructuredAPIFileLoaderUnstructuredAPIFileIOLoader。这将使用托管的 Unstructured API 处理您的文档。

Unstructured API 需要 API 密钥来发出请求。您可以在此处生成免费的 API 密钥并立即开始使用!请查看此处的 README,了解如何开始使用 API 调用。我们非常乐意听到您的反馈,请在我们的社区 Slack中告诉我们您的使用情况。请继续关注我们的质量和性能改进!如果您想要自托管 Unstructured API 或在本地运行它,请查看此处的说明。

封装器

数据加载器

langchain 中的主要 unstructured 封装器是数据加载器。以下是如何使用最基本的无结构化数据加载器。langchain.document_loaders 模块中还提供了其他特定于文件的数据加载器。

from langchain.document_loaders import UnstructuredFileLoader

loader = UnstructuredFileLoader("state_of_the_union.txt")
loader.load()

如果您使用 UnstructuredFileLoader(mode="elements") 实例化加载器,当可用时,加载器将跟踪附加的元数据,如页码和文本类型(例如标题、叙述文本)。