A document loader that loads documents from multiple files. It extends the BaseDocumentLoader class and implements the load() method.


const multiFileLoader = new MultiFileLoader(
["path/to/file1.pdf", "path/to/file2.txt"],
{
".pdf": (path: string) => new PDFLoader(path),
},
);

const docs = await multiFileLoader.load();
console.log({ docs });

Hierarchy (view full)

Constructors

Properties

Methods

Constructors

Properties

filePaths: string[]
unknown: UnknownHandling = UnknownHandling.Warn

Methods

  • Loads the documents from the provided file paths. It checks if the file is a directory and ignores it. If a file is a file, it checks if there is a corresponding loader function for the file extension in the loaders mapping. If there is, it loads the documents. If there is no corresponding loader function and unknown is set to Warn, it logs a warning message. If unknown is set to Error, it throws an error.

    Returns Promise<Document<Record<string, any>>[]>

    A promise that resolves to an array of loaded documents.

  • Parameters

    • Optionalsplitter: BaseDocumentTransformer<DocumentInterface<Record<string, any>>[], DocumentInterface<Record<string, any>>[]>

    Returns Promise<Document<Record<string, any>>[]>

    A Promise that resolves with an array of Document instances, each split according to the provided TextSplitter.

    Use this.load() and splitter.splitDocuments() individually. Loads the documents and splits them using a specified text splitter.