5.langchain 入门到放弃(二) Document loaders-File Directory

68 阅读1分钟

5.langchain 入门到放弃(二) Document loaders-File Directory

  langchain 入门到放弃(二) Document loaders-File Directory

  加载文件目录

  File Directory

  1. 加载文件夹下所有的txt文件

from langchain_community.document_loaders import DirectoryLoader
loader = DirectoryLoader('../source', glob="**/*.txt")
docs = loader.load()
len(docs)

  DirectoryLoader

  2. 加载文件所有文件,根据不同文件类型,使用不同的加载器

from langchain_community.document_loaders import DirectoryLoader
'''
加载source目录下的文件,默认使用UnstructuredFileLoader进行加载,
但是为了区分文件类型,然后根据文件类型进行不同加载,则使用loader_cls进行自定义函数load_file
'''
loader = DirectoryLoader('../source',loader_cls=load_file)
docs = loader.load()
len(docs)

# 加载Directory下文件的函数
def load_file(file_path):
    if file_path.endswith('.csv'):
        return CSVLoader(file_path)
    elif file_path.endswith('.txt'):
        return TextLoader(file_path)
    else:
        raise ValueError(f"Unsupported file type: {file_path}")

  3. 跳过无法加载的文件,继续加载过程。

  silent_errors=True

from langchain_community.document_loaders import DirectoryLoader
loader = DirectoryLoader('../source', glob="**/*.txt",silent_errors=True)
docs = loader.load()
len(docs)

  ‍