langchain_community.document_loaders.directory.DirectoryLoader

class langchain_community.document_loaders.directory.DirectoryLoader(path: str, glob: ~typing.Union[~typing.List[str], ~typing.Tuple[str], str] = '**/[!.]*', silent_errors: bool = False, load_hidden: bool = False, loader_cls: ~typing.Union[~typing.Type[~langchain_community.document_loaders.unstructured.UnstructuredFileLoader], ~typing.Type[~langchain_community.document_loaders.text.TextLoader], ~typing.Type[~langchain_community.document_loaders.html_bs.BSHTMLLoader], ~typing.Type[~langchain_community.document_loaders.csv_loader.CSVLoader]] = <class 'langchain_community.document_loaders.unstructured.UnstructuredFileLoader'>, loader_kwargs: ~typing.Optional[dict] = None, recursive: bool = False, show_progress: bool = False, use_multithreading: bool = False, max_concurrency: int = 4, *, exclude: ~typing.Union[~typing.Sequence[str], str] = (), sample_size: int = 0, randomize_sample: bool = False, sample_seed: ~typing.Optional[int] = None)[source]

从目录中加载。

使用目录路径和glob模式初始化。

参数
  • path (str) – 目录路径。

  • glob (Union[List[str], Tuple[str], str]) – 用于查找文件的glob模式或glob模式列表。默认为“**/[!.]*”(除了隐藏文件外的所有文件)。

  • exclude (Union[Sequence[str], str]) – 用于排除结果的模式或模式列表。使用glob语法。

  • silent_errors (bool) – 是否静默忽略错误。默认为False。

  • load_hidden (bool) – 是否加载隐藏文件。默认为False。

  • loader_cls (Union[Type[UnstructuredFileLoader], Type[TextLoader], Type[BSHTMLLoader], Type[CSVLoader]]) – 用于加载文件的加载器类。默认为UnstructuredFileLoader。

  • loader_kwargs (Optional[dict]) – 传递给loader_cls的关键字参数。默认为None。

  • recursive (bool) – 是否递归查找文件。默认为False。

  • show_progress (bool) – 是否显示进度条。默认为False。

  • use_multithreading (bool) – 是否使用多线程。默认为False。

  • max_concurrency (int) – 使用线程的最大数量。默认为4。

  • sample_size (int) – 您希望从目录中加载的最大文件数量。

  • randomize_sample (bool) – 打乱文件以获取随机样本。

  • sample_seed (Optional[int]) – 设置随机打乱的种子,以确保可重复性。

示例

方法

__init__(path[, glob, silent_errors, ...])

使用目录路径和glob模式初始化。

alazy_load()

Documents的懒加载器。

aload()

将数据加载到Document对象中。

lazy_load()

懒惰地加载文档。

load()

加载文档。

load_and_split([text_splitter])

加载文档并将其分割成块。

__init__(path: str, glob: ~typing.Union[~typing.List[str], ~typing.Tuple[str], str] = '**/[!.]*', silent_errors: bool = False, load_hidden: bool = False, loader_cls: ~typing.Union[~typing.Type[~langchain_community.document_loaders.unstructured.UnstructuredFileLoader], ~typing.Type[~langchain_community.document_loaders.text.TextLoader], ~typing.Type[~langchain_community.document_loaders.html_bs.BSHTMLLoader], ~typing.Type[~langchain_community.document_loaders.csv_loader.CSVLoader]] = <class 'langchain_community.document_loaders.unstructured.UnstructuredFileLoader'>, loader_kwargs: ~typing.Optional[dict] = None, recursive: bool = False, show_progress: bool = False, use_multithreading: bool = False, max_concurrency: int = 4, *, exclude: ~typing.Union[~typing.Sequence[str], str] = (), sample_size: int = 0, randomize_sample: bool = False, sample_seed: ~typing.Optional[int] = None)[source]

使用目录路径和glob模式初始化。

参数
  • path (str) – 目录路径。

  • glob (Union[List[str], Tuple[str], str]) – 用于查找文件的glob模式或glob模式列表。默认为“**/[!.]*”(除了隐藏文件外的所有文件)。

  • exclude (Union[Sequence[str], str]) – 用于排除结果的模式或模式列表。使用glob语法。

  • silent_errors (bool) – 是否静默忽略错误。默认为False。

  • load_hidden (bool) – 是否加载隐藏文件。默认为False。

  • loader_cls (Union[Type[UnstructuredFileLoader], Type[TextLoader], Type[BSHTMLLoader], Type[CSVLoader]]) – 用于加载文件的加载器类。默认为UnstructuredFileLoader。

  • loader_kwargs (Optional[dict]) – 传递给loader_cls的关键字参数。默认为None。

  • recursive (bool) – 是否递归查找文件。默认为False。

  • show_progress (bool) – 是否显示进度条。默认为False。

  • use_multithreading (bool) – 是否使用多线程。默认为False。

  • max_concurrency (int) – 使用线程的最大数量。默认为4。

  • sample_size (int) – 您希望从目录中加载的最大文件数量。

  • randomize_sample (bool) – 打乱文件以获取随机样本。

  • sample_seed (Optional[int]) – 设置随机打乱的种子,以确保可重复性。

示例

async alazy_load() AsyncIterator[Document]

Documents的懒加载器。

返回类型

异步迭代器[文档]

async aload() 列表[文档]

将数据加载到Document对象中。

返回类型

列表[文档]

lazy_load() 迭代器[文档][来源]

懒惰地加载文档。

返回类型

迭代器[文档]

load() 列表[文档][来源]

加载文档。

返回类型

列表[文档]

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

加载文档并将它们分成块。块作为文档返回。

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

参数

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

返回

文档列表。

返回类型

列表[文档]

使用DirectoryLoader的示例