来自 Unstructured.IO 的unstructured软件包可以从原始源文档(如 PDF 和 Word 文档)中提取干净的文本。本页面介绍了如何在 LangChain 中使用unstructured生态系统。
安装和设置
如果您正在使用本地运行的加载器,请按照以下步骤来运行unstructured 及其依赖项。
-
为了最小化安装占用空间并利用开源
unstructured软件包中不提供的功能,请通过pip install unstructured-client安装 Python SDK,并同时安装pip install langchain-unstructured,以便使用UnstructuredLoader并通过 Unstructured API 进行远程分区。此加载器位于 LangChain 合作伙伴仓库中,而非langchain-community仓库中,您将需要一个api_key,您可以在此处免费生成一个密钥。- Unstructured SDK 的文档可以在这里找到:https://docs.unstructured.io/api-reference/api-services/sdk
-
要在本地运行所有内容,请通过
pip install unstructured安装开源 Python 软件包,并同时安装pip install langchain-community,然后使用上面提到的相同的UnstructuredLoader。- 您可以使用额外功能安装特定于文档的依赖项,例如
pip install "unstructured[docx]"。在此处了解有关额外功能的更多信息:此处。 - 要安装所有文档类型的依赖项,请使用
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 的主要用途是在数据加载器中。
UnstructuredLoader
请参阅使用示例,了解如何使用此加载器在本地和远程通过无服务器 Unstructured API 进行分区。UnstructuredCHMLoader
CHM 表示 Microsoft Compiled HTML Help。
UnstructuredCSVLoader
逗号分隔值 (CSV) 文件是一种使用逗号分隔值的有界文本文件。文件的每一行都是一条数据记录。每条记录由一个或多个字段组成,字段之间用逗号分隔。 请参阅使用示例。UnstructuredEmailLoader
请参阅使用示例。UnstructuredEPubLoader
EPUB 是一种使用“.epub”文件扩展名的电子书文件格式。该术语是 electronic publication 的缩写,有时也写作 ePub。EPUB 受到许多电子阅读器的支持,并且兼容的软件可用于大多数智能手机、平板电脑和计算机。 请参阅使用示例。UnstructuredExcelLoader
请参阅使用示例。UnstructuredFileIOLoader
请参阅使用示例。UnstructuredHTMLLoader
UnstructuredImageLoader
请参阅使用示例。UnstructuredMarkdownLoader
请参阅使用示例。UnstructuredODTLoader
开放文档格式办公应用程序 (ODF),也称为 OpenDocument,是一种开放文件格式,用于文字处理文档、电子表格、演示文稿和图形,并使用 ZIP 压缩的 XML 文件。它的开发旨在为办公应用程序提供一个开放的、基于 XML 的文件格式规范。 请参阅使用示例。UnstructuredOrgModeLoader
Org Mode 文档是一种文档编辑、格式化和组织模式,专为自由软件文本编辑器 Emacs 中的笔记、计划和创作而设计。 请参阅使用示例。UnstructuredPDFLoader
UnstructuredPowerPointLoader
请参阅使用示例。UnstructuredRSTLoader
reStructured Text (RST) 文件是一种用于文本数据的文件格式,主要在 Python 编程语言社区用于技术文档。 请参阅使用示例。UnstructuredRTFLoader
请参阅 API 文档中的使用示例。UnstructuredTSVLoader
制表符分隔值 (TSV) 文件是一种简单的、基于文本的文件格式,用于存储表格数据。记录由换行符分隔,记录中的值由制表符分隔。 请参阅使用示例。UnstructuredURLLoader
请参阅使用示例。UnstructuredWordDocumentLoader
请参阅使用示例。UnstructuredXMLLoader
请参阅使用示例。以编程方式连接这些文档到 Claude、VSCode 等,通过 MCP 获取实时答案。