目录加载器#
- class langchain_community.document_loaders.directory.DirectoryLoader(path: str, glob: ~typing.List[str] | ~typing.Tuple[str] | str = '**/[!.]*', silent_errors: bool = False, load_hidden: bool = False, loader_cls: ~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: dict | None = None, recursive: bool = False, show_progress: bool = False, use_multithreading: bool = False, max_concurrency: int = 4, *, exclude: ~typing.Sequence[str] | str = (), sample_size: int = 0, randomize_sample: bool = False, sample_seed: int | None = None)[源代码]#
从目录加载。
使用目录路径以及如何对其进行全局匹配进行初始化。
- Parameters:
path (str) – 目录的路径。
glob (List[str] | Tuple[str] | str) – 用于查找文件的glob模式或glob模式列表。 默认为“**/[!.]*”(除隐藏文件外的所有文件)。
exclude (Sequence[str] | str) – 要从结果中排除的模式或模式列表。使用 glob 语法。
silent_errors (bool) – 是否静默忽略错误。默认为 False。
load_hidden (bool) – 是否加载隐藏文件。默认为 False。
loader_cls (Type[UnstructuredFileLoader] | Type[TextLoader] | Type[BSHTMLLoader] | Type[CSVLoader]) – 用于加载文件的加载器类。 默认为 UnstructuredFileLoader。
loader_kwargs (dict | None) – 传递给 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 (int | None) – 设置随机洗牌的种子以确保可重复性。
示例
方法
__init__
(path[, glob, silent_errors, ...])使用目录路径和如何对其进行全局初始化。
一个用于文档的懒加载器。
aload
()将数据加载到Document对象中。
懒加载文档。
load
()加载文档。
load_and_split
([text_splitter])加载文档并将其分割成块。
- __init__(path: str, glob: ~typing.List[str] | ~typing.Tuple[str] | str = '**/[!.]*', silent_errors: bool = False, load_hidden: bool = False, loader_cls: ~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: dict | None = None, recursive: bool = False, show_progress: bool = False, use_multithreading: bool = False, max_concurrency: int = 4, *, exclude: ~typing.Sequence[str] | str = (), sample_size: int = 0, randomize_sample: bool = False, sample_seed: int | None = None)[来源]#
使用目录路径以及如何对其进行全局匹配进行初始化。
- Parameters:
path (str) – 目录的路径。
glob (List[str] | Tuple[str] | str) – 用于查找文件的glob模式或glob模式列表。 默认为“**/[!.]*”(除隐藏文件外的所有文件)。
exclude (Sequence[str] | str) – 要从结果中排除的模式或模式列表。使用 glob 语法。
silent_errors (bool) – 是否静默忽略错误。默认为 False。
load_hidden (bool) – 是否加载隐藏文件。默认为 False。
loader_cls (Type[UnstructuredFileLoader] | Type[TextLoader] | Type[BSHTMLLoader] | Type[CSVLoader]) – 用于加载文件的加载器类。 默认为 UnstructuredFileLoader。
loader_kwargs (dict | None) – 传递给 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 (int | None) – 设置随机洗牌的种子以确保可重复性。
示例
- load_and_split(text_splitter: TextSplitter | None = None) list[Document] #
加载文档并将其分割成块。块以文档形式返回。
不要重写此方法。它应该被视为已弃用!
- Parameters:
text_splitter (可选[TextSplitter]) – 用于分割文档的TextSplitter实例。 默认为RecursiveCharacterTextSplitter。
- Returns:
文档列表。
- Return type:
列表[Document]
使用 DirectoryLoader 的示例