无结构化
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") 实例化加载器,当可用时,加载器将跟踪附加的元数据,如页码和文本类型(例如标题、叙述文本)。
