Unstructured
The
unstructuredpackage from Unstructured.IO extracts clean text from raw source documents like PDFs and Word documents. This page covers how to use theunstructuredecosystem within LangChain.
安装与设置
如果您使用的是本地运行的加载器,请按照以下步骤操作以启动 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]"。
- 您可以使用额外选项安装特定于文档的依赖项,例如
-
如果您的系统尚未安装以下系统依赖项,请使用例如
brew install在 Mac 上进行安装。 根据您要解析的文档类型,可能不需要所有这些依赖项。libmagic-dev(文件类型检测)poppler-utils(图片和PDF)tesseract-ocr(图片和PDF)qpdf(PDF文件)libreoffice(MS Office 文档)pandoc(EPUB文件)
-
在本地运行时,Unstructured 还建议通过遵循此指南使用 Docker 以确保所有系统依赖项正确安装。
Unstructured API 需要 API 密钥来发起请求。 你可以在此处申请 API 密钥,并立即开始使用! 请查看此处的 README 文件,了解如何开始进行 API 调用。 我们非常希望听到您的反馈,请在我们的社区 Slack 中告诉我们您的使用体验。 敬请期待我们在质量和性能方面的进一步改进! 如果您想自行托管或在本地运行 Unstructured API,请在此处查看相关说明。
数据加载器
Unstructured 的主要用途是在数据加载器中。
UnstructuredLoader
查看使用示例,了解如何使用此加载程序通过无服务器的Unstructured API在本地和远程进行分区。
from langchain_unstructured import UnstructuredLoader
UnstructuredCHMLoader
CHM 表示 Microsoft Compiled HTML Help。
from langchain_community.document_loaders import UnstructuredCHMLoader
UnstructuredCSVLoader
一个 comma-separated values (CSV) 文件是一种使用逗号分隔值的文本文件。文件的每一行都是一条数据记录。
每条记录由一个或多个字段组成,字段之间用逗号分隔。
查看一个 使用示例。
from langchain_community.document_loaders import UnstructuredCSVLoader
UnstructuredEmailLoader
查看一个 使用示例。
from langchain_community.document_loaders import UnstructuredEmailLoader
UnstructuredEPubLoader
EPUB 是一种使用“.epub”文件扩展名的 e-book file format。该术语是电子出版物的缩写,有时也写作 ePub。EPUB 被许多电子阅读器支持,并且大多数智能手机、平板电脑和计算机都有兼容的软件。
查看一个 使用示例。
from langchain_community.document_loaders import UnstructuredEPubLoader
UnstructuredExcelLoader
查看一个 使用示例。
from langchain_community.document_loaders import UnstructuredExcelLoader
UnstructuredFileIOLoader
查看一个 使用示例。
from langchain_community.document_loaders import UnstructuredFileIOLoader
UnstructuredHTMLLoader
查看一个 使用示例。
from langchain_community.document_loaders import UnstructuredHTMLLoader
UnstructuredImageLoader
查看一个 使用示例。
from langchain_community.document_loaders import UnstructuredImageLoader
UnstructuredMarkdownLoader
查看一个 使用示例。
from langchain_community.document_loaders import UnstructuredMarkdownLoader
UnstructuredODTLoader
Open Document Format for Office Applications (ODF),也被称为OpenDocument,
是一种用于文字处理文档、电子表格、演示文稿和图形的开放文件格式,采用ZIP压缩的XML文件。它的开发目的是为办公应用程序提供一种开放的、基于XML的文件格式规范。
查看一个 使用示例。
from langchain_community.document_loaders import UnstructuredODTLoader
UnstructuredOrgModeLoader
一种 Org Mode 文档是一种文档编辑、格式化和组织模式,专为自由软件文本编辑器 Emacs 中的笔记、规划和撰写而设计。
查看一个 使用示例。
from langchain_community.document_loaders import UnstructuredOrgModeLoader
UnstructuredPDFLoader
查看一个 使用示例。
from langchain_community.document_loaders import UnstructuredPDFLoader
UnstructuredPowerPointLoader
查看一个 使用示例。
from langchain_community.document_loaders import UnstructuredPowerPointLoader
UnstructuredRSTLoader
A reStructured Text (RST) 文件是一种用于文本数据的文件格式,
主要在 Python 编程语言社区中用于技术文档。
查看一个 使用示例。
from langchain_community.document_loaders import UnstructuredRSTLoader
UnstructuredRTFLoader
在API文档中查看使用示例。
from langchain_community.document_loaders import UnstructuredRTFLoader
UnstructuredTSVLoader
一个 tab-separated values(TSV)文件是一种用于存储表格数据的简单文本文件格式。
记录之间通过换行分隔,记录中的值通过制表符分隔。
查看一个 使用示例。
from langchain_community.document_loaders import UnstructuredTSVLoader
UnstructuredURLLoader
查看一个 使用示例。
from langchain_community.document_loaders import UnstructuredURLLoader
UnstructuredWordDocumentLoader
查看一个 使用示例。
from langchain_community.document_loaders import UnstructuredWordDocumentLoader
UnstructuredXMLLoader
查看一个 使用示例。
from langchain_community.document_loaders import UnstructuredXMLLoader