langchain_community.document_loaders.unstructured.UnstructuredAPIFileIOLoader

class langchain_community.document_loaders.unstructured.UnstructuredAPIFileIOLoader(file: Union[IO[bytes], Sequence[IO[bytes]]], *, mode: str = 'single', url: str = 'https://api.unstructuredapp.io/general/v0/general', api_key: str = '', **unstructured_kwargs: Any)[source]

自版本 0.2.8 起已弃用: 请使用 langchain_unstructured.UnstructuredLoader 代替。

使用 unstructured-client SDK 将类似文件的对象发送到 Unstructured API。

默认情况下,加载器将调用托管在 Unstructured API 上的 API。如果您本地运行了 unstructured API,您可以通过在初始化加载器时传递 URL 参数来更改 API 规则。托管 Unstructured API 需要API密钥。有关我们的 API 服务和获取 API 密钥的更多信息,请参阅以下链接。

您可以将加载器运行在不同的模式下:“single”,“elements”和“paged”。默认的“single”模式将返回一个单独的 langchain Document 对象。如果您使用“elements”模式,unstructured 库将把文档拆分为元素,如标题和叙事文本,并作为单独的 langchain Document 对象返回。除了这些特定于 LangChain 加载器的后处理模式外,Unstructured 还有自己的用于将元素后处理成更适用于用例(如检索增强生成RAG)的“分块”参数。您可以通过传递额外的unstructured kwargs来配置不同的unstructured设置。

示例

from langchain_community.document_loaders import UnstructuredAPIFileLoader

with open(“example.pdf”, “rb”)as f
loader = UnstructuredAPIFileIOLoader(

f,mode = "elements",strategy = "fast",api_key = "MY_API_KEY",

) docs = loader.load()

参考

https://docs.unstructured.io/api-reference/api-services/sdk https://docs.unstructured.io/api-reference/api-services/overview https://docs.unstructured.io/open-source/core-functionality/partitioning https://docs.unstructured.io/open-source/core_functionality/chunking

以文件路径初始化。

方法

__init__(file, *[, mode, url, api_key])

以文件路径初始化。

alazy_load()

用于文档的懒加载。

aload()

将数据加载到文档对象中。

lazy_load()

加载文件。

load()

将数据加载到文档对象中。

load_and_split([text_splitter])

加载文档并将它们分割成块。

参数
  • file (Union[IO[bytes], Sequence[IO[bytes]]]) –

  • mode (str) –

  • url (str) –

  • api_key (str) –

  • unstructured_kwargs (Any) –

__init__(file: Union[IO[bytes], Sequence[IO[bytes]]], *, mode: str = 'single', url: str = 'https://api.unstructuredapp.io/general/v0/general', api_key: str = '', **unstructured_kwargs: Any)[source]

以文件路径初始化。

参数
  • file (Union[IO[bytes], Sequence[IO[bytes]]]) –

  • mode (str) –

  • url (str) –

  • api_key (str) –

  • unstructured_kwargs (Any) –

async alazy_load() AsyncIterator[Document]

用于文档的懒加载。

返回类型

AsyncIterator[Document]

async aload() List[Document]

将数据加载到文档对象中。

返回类型

列表[文档]

lazy_load() 迭代器[Document]

加载文件。

返回类型

迭代器[Document]

load() 列表[Document]

将数据加载到文档对象中。

返回类型

列表[文档]

load_and_split(text_splitter: Optional[TextSplitter] = None) 列表[Document]

加载文档并分割成块。块以文档的形式返回。

不要覆盖此方法。应考虑将其弃用!

参数

text_splitter (可选[TextSplitter]) – 用于分割文档的 TextSplitter 实例。默认为 RecursiveCharacterTextSplitter。

返回

文档列表。

返回类型

列表[Document]

使用 UnstructuredAPIFileIOLoader 的示例