跳转到内容

文档加载器

langchain_core.document_loaders

文档加载器。

BaseLoader

基类: ABC

文档加载器接口。

实现应使用生成器实现惰性加载方法,以避免一次性将所有文档加载到内存中。

load 方法仅为用户方便而提供,不应被覆盖。

方法 描述
load

将数据加载到 `Document` 对象中。

aload

将数据加载到 `Document` 对象中。

load_and_split

加载 `Document` 并将其分割成块。块将作为 `Document` 返回。

lazy_load

`Document` 的惰性加载器。

alazy_load

`Document` 的惰性加载器。

load

load() -> list[Document]

将数据加载到 `Document` 对象中。

返回 描述
list[Document]

文档。

aload async

aload() -> list[Document]

将数据加载到 `Document` 对象中。

返回 描述
list[Document]

文档。

load_and_split

load_and_split(text_splitter: TextSplitter | None = None) -> list[Document]

加载 `Document` 并将其分割成块。块将作为 `Document` 返回。

危险

不要重写此方法。应将其视为已弃用!

参数 描述
text_splitter

用于分割文档的 `TextSplitter` 实例。默认为 `RecursiveCharacterTextSplitter`。

TYPE: TextSplitter | None DEFAULT: None

引发 描述
ImportError

如果 `langchain-text-splitters` 未安装且未提供 `text_splitter`。

返回 描述
list[Document]

`Document` 列表。

lazy_load

lazy_load() -> Iterator[Document]

`Document` 的惰性加载器。

YIELDS 描述
Document

`Document` 对象。

alazy_load async

alazy_load() -> AsyncIterator[Document]

`Document` 的惰性加载器。

YIELDS 描述
AsyncIterator[Document]

`Document` 对象。

BaseBlobParser

基类: ABC

Blob 解析器的抽象接口。

Blob 解析器提供了一种将存储在 Blob 中的原始数据解析为一个或多个 Document 对象的方法。

解析器可以与 Blob 加载器组合使用,从而可以轻松地重用解析器,而无需关心 Blob 最初是如何加载的。

方法 描述
lazy_parse

惰性解析接口。

parse

立即将 Blob 解析为一个或多个 Document 对象的列表。

lazy_parse abstractmethod

lazy_parse(blob: Blob) -> Iterator[Document]

惰性解析接口。

子类需要实现此方法。

参数 描述
blob

Blob 实例

类型: Blob

返回 描述
Iterator[Document]

Document 对象的生成器

parse

parse(blob: Blob) -> list[Document]

立即将 Blob 解析为一个或多个 Document 对象的列表。

这是一个用于交互式开发环境的便捷方法。

生产环境应用应优先使用 lazy_parse 方法。

子类通常不应覆盖此 parse 方法。

参数 描述
blob

Blob 实例

类型: Blob

返回 描述
list[Document]

Document 对象列表

BlobLoader

基类: ABC

Blob 加载器实现的抽象接口。

实现者应能够根据某些标准从存储系统中加载原始内容,并以 Blob 流的形式惰性返回原始内容。

方法 描述
yield_blobs

一个用于加载由 LangChain 的 Blob 对象表示的原始数据的惰性加载器。

yield_blobs abstractmethod

yield_blobs() -> Iterable[Blob]

一个用于加载由 LangChain 的 Blob 对象表示的原始数据的惰性加载器。

返回 描述
Iterable[Blob]

一个 Blob 的生成器

LangSmithLoader

基类: BaseLoader

将 LangSmith 数据集示例加载为 Document 对象。

将示例输入加载为 Document 的页面内容,并将整个示例放入 Document 的元数据中。这使您能够轻松地从加载的文档中创建少样本示例检索器。

惰性加载示例
from langchain_core.document_loaders import LangSmithLoader

loader = LangSmithLoader(dataset_id="...", limit=100)
docs = []
for doc in loader.lazy_load():
    docs.append(doc)
# -> [Document("...", metadata={"inputs": {...}, "outputs": {...}, ...}), ...]
方法 描述
load

将数据加载到 `Document` 对象中。

aload

将数据加载到 `Document` 对象中。

load_and_split

加载 `Document` 并将其分割成块。块将作为 `Document` 返回。

alazy_load

`Document` 的惰性加载器。

__init__

创建一个 LangSmith 加载器。

lazy_load

`Document` 的惰性加载器。

load

load() -> list[Document]

将数据加载到 `Document` 对象中。

返回 描述
list[Document]

文档。

aload async

aload() -> list[Document]

将数据加载到 `Document` 对象中。

返回 描述
list[Document]

文档。

load_and_split

load_and_split(text_splitter: TextSplitter | None = None) -> list[Document]

加载 `Document` 并将其分割成块。块将作为 `Document` 返回。

危险

不要重写此方法。应将其视为已弃用!

参数 描述
text_splitter

用于分割文档的 `TextSplitter` 实例。默认为 `RecursiveCharacterTextSplitter`。

TYPE: TextSplitter | None DEFAULT: None

引发 描述
ImportError

如果 `langchain-text-splitters` 未安装且未提供 `text_splitter`。

返回 描述
list[Document]

`Document` 列表。

alazy_load async

alazy_load() -> AsyncIterator[Document]

`Document` 的惰性加载器。

YIELDS 描述
AsyncIterator[Document]

`Document` 对象。

__init__

__init__(
    *,
    dataset_id: UUID | str | None = None,
    dataset_name: str | None = None,
    example_ids: Sequence[UUID | str] | None = None,
    as_of: datetime | str | None = None,
    splits: Sequence[str] | None = None,
    inline_s3_urls: bool = True,
    offset: int = 0,
    limit: int | None = None,
    metadata: dict | None = None,
    filter: str | None = None,
    content_key: str = "",
    format_content: Callable[..., str] | None = None,
    client: Client | None = None,
    **client_kwargs: Any,
) -> None

创建一个 LangSmith 加载器。

参数 描述
dataset_id

用于筛选的数据集 ID。

类型: UUID | str | None 默认值: None

dataset_name

用于筛选的数据集名称。

类型: str | None 默认值: None

content_key

要设置为 Document 页面内容的输入键。'.' 字符被解释为嵌套键。例如,content_key="first.second" 将导致 Document(page_content=format_content(example.inputs["first"]["second"]))

类型: str 默认值: ''

format_content

用于将从示例输入中提取的内容转换为字符串的函数。默认为对内容进行 JSON 编码。

类型: Callable[..., str] | None 默认值: None

example_ids

用于筛选的示例 ID。

类型: Sequence[UUID | str] | None 默认值: None

as_of

用于检索示例的数据集版本标签或时间戳。响应示例将仅包含在标记(或时间戳)版本时存在的那些示例。

类型: datetime | str | None 默认值: None

splits

数据集拆分的列表,例如 traintestvalidation。仅返回指定拆分中的示例。

类型: Sequence[str] | None 默认值: None

inline_s3_urls

是否内联 S3 URL。

类型: bool 默认值: True

offset

起始偏移量。

类型: int 默认值: 0

limit

要返回的最大示例数。

TYPE: int | None DEFAULT: None

metadata

用于筛选的元数据。

类型: dict | None 默认值: None

filter

应用于示例的结构化筛选字符串。

类型: str | None 默认值: None

client

LangSmith 客户端。如果未提供,将从以下参数初始化。

类型: Client | None 默认值: None

client_kwargs

传递给 LangSmith 客户端初始化的关键字参数。仅在未指定 client 时才应指定。

类型: Any 默认值: {}

引发 描述
ValueError

如果同时提供了 clientclient_kwargs

lazy_load

lazy_load() -> Iterator[Document]

`Document` 的惰性加载器。

YIELDS 描述
Document

`Document` 对象。

© . This site is unofficial and not affiliated with LangChain, Inc.