Skip to main content

如何编写自定义文档加载器

如果你想实现自己的文档加载器,有几种选项可供选择。

继承 BaseDocumentLoader

你可以直接继承 BaseDocumentLoader 类。该类提供了一些便捷的方法,用于从多种来源加载文档。

abstract class BaseDocumentLoader implements DocumentLoader {
abstract load(): Promise<Document[]>;
}

继承 TextLoader

如果你想从文本文件加载文档,可以继承 TextLoader 类。TextLoader 类会负责读取文件,你只需实现一个解析方法即可。

abstract class TextLoader extends BaseDocumentLoader {
abstract parse(raw: string): Promise<string[]>;
}

继承 BufferLoader

如果你想从二进制文件加载文档,可以继承 BufferLoader 类。BufferLoader 类会负责读取文件,你只需实现一个解析方法即可。

abstract class BufferLoader extends BaseDocumentLoader {
abstract parse(
raw: Buffer,
metadata: Document["metadata"]
): Promise<Document[]>;
}

Was this page helpful?


You can also leave detailed feedback on GitHub.