Skip to main content
Open In ColabOpen on GitHub

BibTeX

BibTeX 是一种文件格式和参考文献管理系统,通常与 LaTeX 排版系统一起使用。它用于组织和存储学术和研究文档的参考文献信息。

BibTeX 文件具有 .bib 扩展名,由表示各种出版物(如书籍、文章、会议论文、论文等)引用的纯文本条目组成。每个 BibTeX 条目遵循特定的结构,并包含不同书目详细信息的字段,如作者姓名、出版物标题、期刊或书籍标题、出版年份、页码等。

BibTeX 文件还可以存储文档的路径,例如可以检索的 .pdf 文件。

安装

首先,你需要安装 bibtexparserPyMuPDF

%pip install --upgrade --quiet  bibtexparser pymupdf

示例

BibtexLoader 有以下参数:

  • file_path: .bib bibtex 文件的路径
  • 可选的 max_docs: 默认值为None,即无限制。使用它来限制检索到的文档数量。
  • 可选的 max_content_chars: 默认=4000。用于限制单个文档中的字符数。
  • 可选的 load_extra_meta: 默认=False。默认情况下,只从bibtex条目中加载最重要的字段:Published(出版年份)、Title(标题)、Authors(作者)、Summary(摘要)、Journal(期刊)、Keywords(关键词)和URL(网址)。如果为True,它还将尝试加载并返回entry_idnotedoilinks字段。
  • 可选的 file_pattern: 默认=r'[^:]+\.pdf'。用于在 file 条目中查找文件的正则表达式模式。默认模式支持 Zotero 风格的 bibtex 样式和裸文件路径。
from langchain_community.document_loaders import BibtexLoader
API Reference:BibtexLoader
# Create a dummy bibtex file and download a pdf.
import urllib.request

urllib.request.urlretrieve(
"https://www.fourmilab.ch/etexts/einstein/specrel/specrel.pdf", "einstein1905.pdf"
)

bibtex_text = """
@article{einstein1915,
title={Die Feldgleichungen der Gravitation},
abstract={Die Grundgleichungen der Gravitation, die ich hier entwickeln werde, wurden von mir in einer Abhandlung: ,,Die formale Grundlage der allgemeinen Relativit{\"a}tstheorie`` in den Sitzungsberichten der Preu{\ss}ischen Akademie der Wissenschaften 1915 ver{\"o}ffentlicht.},
author={Einstein, Albert},
journal={Sitzungsberichte der K{\"o}niglich Preu{\ss}ischen Akademie der Wissenschaften},
volume={1915},
number={1},
pages={844--847},
year={1915},
doi={10.1002/andp.19163540702},
link={https://onlinelibrary.wiley.com/doi/abs/10.1002/andp.19163540702},
file={einstein1905.pdf}
}
"""
# save bibtex_text to biblio.bib file
with open("./biblio.bib", "w") as file:
file.write(bibtex_text)
docs = BibtexLoader("./biblio.bib").load()
docs[0].metadata
{'id': 'einstein1915',
'published_year': '1915',
'title': 'Die Feldgleichungen der Gravitation',
'publication': 'Sitzungsberichte der K{"o}niglich Preu{\\ss}ischen Akademie der Wissenschaften',
'authors': 'Einstein, Albert',
'abstract': 'Die Grundgleichungen der Gravitation, die ich hier entwickeln werde, wurden von mir in einer Abhandlung: ,,Die formale Grundlage der allgemeinen Relativit{"a}tstheorie`` in den Sitzungsberichten der Preu{\\ss}ischen Akademie der Wissenschaften 1915 ver{"o}ffentlicht.',
'url': 'https://doi.org/10.1002/andp.19163540702'}
print(docs[0].page_content[:400])  # all pages of the pdf content
ON THE ELECTRODYNAMICS OF MOVING
BODIES
By A. EINSTEIN
June 30, 1905
It is known that Maxwell’s electrodynamics—as usually understood at the
present time—when applied to moving bodies, leads to asymmetries which do
not appear to be inherent in the phenomena. Take, for example, the recipro-
cal electrodynamic action of a magnet and a conductor. The observable phe-
nomenon here depends only on the r

这个页面有帮助吗?