无结构化
unstructured
包来自 Unstructured.IO,可以从原始源文件(如 PDF 和 Word 文档)中提取干净的文本。 本页面介绍了如何在 LangChain 中使用unstructured
生态系统。
安装和设置
如果您使用的是本地运行的加载器,请按照以下步骤获取 unstructured
及其依赖项的本地运行环境。
- 使用
pip install unstructured
安装 Python SDK。- 您可以使用 extras 安装特定于文档的依赖项,例如
pip install "unstructured[docx]"
。 - 要安装所有文档类型的依赖项,请使用
pip install "unstructured[all-docs]"
。
- 您可以使用 extras 安装特定于文档的依赖项,例如
- 如果您的系统上尚未安装以下系统依赖项,请安装它们。根据您解析的文档类型,您可能不需要全部依赖项。
libmagic-dev
(文件类型检测)poppler-utils
(图像和 PDF)tesseract-ocr
(图像和 PDF)libreoffice
(MS Office 文档)pandoc
(EPUB)
如果您希望快速上手,可以简单地运行 pip install unstructured
,然后使用 UnstructuredAPIFileLoader
或 UnstructuredAPIFileIOLoader
。这将使用托管的 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")
实例化加载器,当可用时,加载器将跟踪附加的元数据,如页码和文本类型(例如标题、叙述文本)。