BibtexLoader#
- class langchain_community.document_loaders.bibtex.BibtexLoader(file_path: str, *, parser: BibtexparserWrapper | None = None, max_docs: int | None = None, max_content_chars: int | None = 4000, load_extra_metadata: bool = False, file_pattern: str = '[^:]+\\.pdf')[source]#
加载一个bibtex文件。
每个文档代表bibtex文件中的一个条目。
如果在file bibtex字段中存在PDF文件,原始PDF将被加载到文档文本中。如果没有这样的文件条目,则使用abstract字段代替。
初始化BibtexLoader。
- Parameters:
file_path (str) – bibtex文件的路径。
parser (BibtexparserWrapper | None) – 要使用的解析器。如果为None,则使用默认解析器。
max_docs (int | None) – 最大关联文档加载数量。使用 -1 表示无限制。
max_content_chars (int | None) – 从PDF中加载的最大字符数。
load_extra_metadata (bool) – 是否从PDF加载额外的元数据。
file_pattern (str) – 用于匹配bibtex中文件名的正则表达式模式。
方法
__init__
(file_path, *[, parser, max_docs, ...])初始化BibtexLoader。
一个用于文档的懒加载器。
aload
()将数据加载到Document对象中。
使用 bibtexparser 加载 bibtex 文件并获取文章文本和文章元数据。
load
()将数据加载到Document对象中。
load_and_split
([text_splitter])加载文档并将其分割成块。
- __init__(file_path: str, *, parser: BibtexparserWrapper | None = None, max_docs: int | None = None, max_content_chars: int | None = 4000, load_extra_metadata: bool = False, file_pattern: str = '[^:]+\\.pdf')[源代码]#
初始化BibtexLoader。
- Parameters:
file_path (str) – bibtex文件的路径。
parser (BibtexparserWrapper | None) – 要使用的解析器。如果为None,则使用默认解析器。
max_docs (int | None) – 最大关联文档加载数量。使用 -1 表示无限制。
max_content_chars (int | None) – 从PDF中加载的最大字符数。
load_extra_metadata (bool) – 是否从PDF加载额外的元数据。
file_pattern (str) – 用于匹配bibtex中文件名的正则表达式模式。
- lazy_load() Iterator[Document] [source]#
使用bibtexparser加载bibtex文件并获取文章文本以及文章元数据。 参见 https://bibtexparser.readthedocs.io/en/master/
- Returns:
以文本格式显示文档的document.page_content的文档列表
- Return type:
迭代器[文档]
- load_and_split(text_splitter: TextSplitter | None = None) list[Document] #
加载文档并将其分割成块。块以文档形式返回。
不要重写此方法。它应该被视为已弃用!
- Parameters:
text_splitter (可选[TextSplitter]) – 用于分割文档的TextSplitter实例。 默认为RecursiveCharacterTextSplitter。
- Returns:
文档列表。
- Return type:
列表[Document]
使用 BibtexLoader 的示例