非结构化API文件IO加载器#
- class langchain_community.document_loaders.unstructured.UnstructuredAPIFileIOLoader(file: 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起已弃用:请改用
:class:`~langchain_unstructured.UnstructuredLoader`
。在langchain-community==1.0之前不会移除。使用unstructured-client SDK将类似文件的对象发送到Unstructured API。
默认情况下,加载器会调用托管的Unstructured API。如果您在本地运行unstructured API,可以通过在初始化加载器时传入url参数来更改API规则。托管的Unstructured API需要一个API密钥。请参阅以下链接以了解更多关于我们的API产品并获取API密钥。
您可以在不同的模式下运行加载器:“single”、“elements”和“paged”。默认的“single”模式将返回一个单一的langchain Document对象。如果您使用“elements”模式,unstructured库将文档拆分为诸如Title和NarrativeText等元素,并将它们作为单独的langchain Document对象返回。除了这些后处理模式(这些模式特定于LangChain加载器),Unstructured还有自己的“chunking”参数,用于将后处理元素拆分为更有用的块,适用于诸如检索增强生成(RAG)等用例。您可以传入额外的unstructured kwargs来配置不同的unstructured设置。
示例
从langchain_community.document_loaders导入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])使用文件路径进行初始化。
一个用于文档的懒加载器。
aload
()将数据加载到Document对象中。
加载文件。
load
()将数据加载到Document对象中。
load_and_split
([text_splitter])加载文档并将其分割成块。
- Parameters:
文件 (联合[IO[字节], 序列[IO[字节]]])
mode (str)
url (str)
api_key (str)
unstructured_kwargs (Any)
- __init__(file: IO[bytes] | Sequence[IO[bytes]], *, mode: str = 'single', url: str = 'https://api.unstructuredapp.io/general/v0/general', api_key: str = '', **unstructured_kwargs: Any)[source]#
使用文件路径进行初始化。
- Parameters:
文件 (IO[字节] | 序列[IO[字节]])
mode (str)
url (str)
api_key (str)
unstructured_kwargs (Any)
- load_and_split(text_splitter: TextSplitter | None = None) list[Document] #
加载文档并将其分割成块。块以文档形式返回。
不要重写此方法。它应该被视为已弃用!
- Parameters:
text_splitter (可选[TextSplitter]) – 用于分割文档的TextSplitter实例。 默认为RecursiveCharacterTextSplitter。
- Returns:
文档列表。
- Return type:
列表[Document]