非结构化
来自
unstructured
包 Unstructured.IO 从原始源文件(如 PDF 和 Word 文档)中提取干净的文本。 本页面介绍如何在 LangChain 中使用unstructured
生态系统。 ecosystem within LangChain.
安装和设置
如果您正在使用本地运行的加载程序,请按照以下步骤获取 unstructured
和
其依赖项在本地运行。
- 使用
pip install "unstructured[local-inference]"
安装 Python SDK - 如果系统上尚未安装以下系统依赖项,请安装它们。
根据您要解析的文档类型,您可能不需要全部。
libmagic-dev
(文件类型检测)poppler-utils
(图像和 PDF)tesseract-ocr
(图像和 PDF)libreoffice
(MS Office 文档)pandoc
(EPUB)
如果您希望快速上手,可以
直接运行 pip install unstructured
并使用 UnstructuredAPIFileLoader
或
UnstructuredAPIFileIOLoader
。这将使用托管的 Unstructured API 处理您的文档。
请注意,当前(截至 2023 年 5 月 1 日)Unstructured API 是开放的,但很快将需要
API 密钥。一旦可用,Unstructured 文档页面 将提供
有关如何生成 API 密钥的说明。如果您想自己托管 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")
实例化加载器,加载器
将在可用时跟踪其他元数据,例如页码和文本类型(例如标题、叙述文本)
。