Project Icon

rebiber

学术引用自动规范化工具

Rebiber是一个开源的学术引用规范化工具。它可以自动将arXiv预印本引用更新为正式会议发表版本,并统一引用格式。该工具利用DBLP和ACL Anthology的官方数据,支持多个主要学术会议。Rebiber还提供缩写和字段选择功能,方便研究人员生成规范的参考文献列表。

Rebiber: 一个用于规范化bibtex的官方信息工具

我们经常引用论文的arXiv版本,而没有注意到它们已经在某些会议上__发表__了。这些非官方的参考文献条目可能违反了一些会议的投稿或最终版本规则。 我们推出了__Rebiber__,一个简单的Python工具,可以自动修复这些问题。它基于DBLPACL anthology(针对NLP会议)的官方会议信息!您可以在这里查看支持的会议列表。 除了处理过时的arXiv引用外,__Rebiber__还以统一的方式(DBLP风格)规范化引用,支持缩写和值选择。

Huggingface Space上的演示 https://huggingface.co/spaces/yuchenlin/Rebiber (推荐)

Colab笔记本: 链接

更新日志

  • 2023.06.01 新的演示可在Huggingface的Space上通过Gradio使用。此外,添加了一些新的会议。

  • 2021.09.06 我们修复了一些小bug,并添加了诸如排序和arXiv链接(如果论文不在任何会议中;感谢@nicola-decao)等功能。我们还将ACL anthology的bib/json更新到最新版本,以及其他会议。

  • 2021.05.30 我们构建了Rebiber网页应用beta版本;向我们的数据集添加了新的会议;修复了一些小bug。(它已不再工作。请使用新的huggingface space演示。)

  • 2021.02.08 我们现在支持多个有用的功能:1) 关闭某些特定值,例如,"-r url,pages,address"用于从输出中删除这些值,2) 使用缩写来缩短booktitle值,例如,Proceedings of the .* Annual Meeting of the Association for Computational Linguistics --> Proc. of ACL。更多示例在这里。

  • 2021.01.30 我们构建了一个colab笔记本作为简单的网页演示。链接

安装

# pip install rebiber -U # 稳定版本
pip install -e git+https://github.com/yuchenlin/rebiber.git#egg=rebiber -U
# rebiber --update  # (可选) 更新bib数据和缩写信息 (使用wget)

或者

git clone https://github.com/yuchenlin/rebiber.git
cd rebiber/
pip install -e .

如果您想使用最新的github版本,其中包含更多bug修复,请使用第二种安装方法。

使用方法(v1.1.3)

使用官方会议信息规范化您的bibtex文件:

rebiber -i /path/to/input.bib -o /path/to/output.bib

您可以在rebiber/example_input.bibrebiber/example_output.bib中找到一对示例输入和输出文件。

参数用途
-i--input_bib。您想要更新的输入bib文件的路径
-o--output_bib。您想要保存的输出bib文件的路径。如果您没有指定-o,那么它将与-i相同。
-r--remove。您想要删除的值名称的逗号分隔列表,例如"-r pages,editor,volume,month,url,biburl,address,publisher,bibsource,timestamp,doi"。默认为__空__。
-s--shorten。布尔参数,默认为"False",用于将booktitle替换为-a中的缩写。使用-s True
-d--deduplicate。布尔参数,默认为"True",用于删除共享相同键的重复bib条目。使用-d True
-l--bib_list。要加载的bib json文件列表的路径。查看rebiber/bib_list.txt获取默认文件。通常您不需要设置此参数。
-a--abbr_tsv。会议缩写数据列表。查看rebiber/abbr.tsv获取默认文件。通常您不需要设置此参数。
-u--update。使用最新的Github版本更新本地bib相关数据。
-v--version。打印当前Rebiber的版本。
-st--sort。布尔参数,默认为"False"。用于保持输入文件中bib条目的原始顺序。将其设置为"True"时,输出文件中的bib条目按字母顺序排序。使用-st True

示例输入和输出

一个带有arXiv信息的示例输入条目(来自Google Scholar或其他地方):

@article{lin2020birds,
	title={Birds have four legs?! NumerSense: Probing Numerical Commonsense Knowledge of Pre-trained Language Models},
	author={Lin, Bill Yuchen and Lee, Seyeon and Khanna, Rahul and Ren, Xiang},
	journal={arXiv preprint arXiv:2005.00683},
	year={2020}
}

一个带有官方信息的规范化示例输出条目:

@inproceedings{lin2020birds,
title = "鸟有四条腿?!NumSense:探索预训练语言模型的数值常识知识",
author = "林比尔宇晨 和
      李世妍 和
      卡纳拉胡尔 和
      任翔",
booktitle = "2020年自然语言处理实证方法会议论文集(EMNLP)",
month = "11月",
year = "2020",
address = "线上",
publisher = "计算语言学协会",
url = "https://www.aclweb.org/anthology/2020.emnlp-main.557",
doi = "10.18653/v1/2020.emnlp-main.557",
pages = "6862--6868",
}

## 支持的会议

`bib_list.txt`包含已转换为json格式的官方bib数据列表。目前本仓库支持完整的[ACL anthology](https://www.aclweb.org/anthology/),即所有在*CL会议(ACL、EMNLP、NAACL等)及其工作坊发表的论文。
此外,我们还支持任何可从DBLP下载的会议论文集,例如ICLR2020。

请注意,DBLP只允许每次下载1000条记录,使用&h=1000&f=0,其中f=0|1000|2000指定起始索引。因此我们需要手动下载每个会议的bib文件并将它们拼接在一起。`add_conf.sh`脚本也会处理这个问题。

以下会议受支持,它们的bib/json文件位于我们的`data`文件夹中。您可以在`bib_list.txt`中开启或关闭每一项。**欢迎按照[此处](#添加新会议)的说明创建PR来添加新会议!**

| 名称 | 年份 |
| --- | ----------- |
| ACL Anthology |  (截至2023-06) |
| AAAI | 2010 -- 2020 |
| AISTATS | 2013 -- 2020 |
| ALENEX | 2010 -- 2020 |
| ASONAM | 2010 -- 2019 |
| BigDataConf | 2013 -- 2019 |
| BMVC | 2010 -- 2020 |
| CHI | 2010 -- 2020 |
| CIDR | 2009 -- 2020 |
| CIKM | 2010 -- 2020 |
| COLT | 2000 -- 2020 |
| CVPR | 2000 -- 2020 |
| ICASSP | 2015 -- 2020 |
| ICCV | 2003 -- 2019 |
| ICLR | 2013 -- 2020 |
| ICML | 2000 -- 2020 |
| IJCAI | 2011 -- 2020 |
| INTERSPEECH | 2016 -- 2021 |
| KDD | 2010 -- 2020 |
| MLSys | 2019 -- 2020 |
| MM | 2016 -- 2020 |
| NeurIPS | 2000 -- 2020 |
| RECSYS | 2010 -- 2020 |
| SDM | 2010 -- 2020 |
| SIGIR | 2010 -- 2020 |
| SIGMOD | 2010 -- 2020 |
| SODA | 2010 -- 2020 |
| STOC | 2010 -- 2020 |
| UAI | 2010 -- 2020 |
| WSDM | 2008 -- 2020 |
| WWW (网络会议) | 2001 -- 2020 |

**感谢[Anton Tsitsulin](http://tsitsul.in/)在收集如此完整的bib文件集方面所做的出色工作!**

## 添加新会议

您可以通过从DBLP下载bib文件到我们的`raw_data`文件夹,并运行准备好的脚本`add_conf.sh`来手动添加任何会议。

以ICLR2020和ICLR2019为例:

- 步骤1:访问[DBLP](https://dblp.org/db/conf/iclr/iclr2020.html)
- 步骤2:下载bib文件,并将它们放在此处作为`raw_data/iclr2020.bib`和`raw_data/iclr2019.bib`(名称应采用{conf_name}{year}.bib的格式)
- 步骤3:运行脚本
```bash
bash add_conf.sh iclr 2019 2020

特别地,要更新*CL会议,我们可以

python bib2json.py -i raw_data/anthology.bib -o data/acl.json

星标历史

Star History Chart

联系方式

如果您有任何问题或建议,请发送电子邮件至yuchen.lin@usc.edu或在此创建GitHub问题。

项目侧边栏1项目侧边栏2
推荐项目
Project Cover

豆包MarsCode

豆包 MarsCode 是一款革命性的编程助手,通过AI技术提供代码补全、单测生成、代码解释和智能问答等功能,支持100+编程语言,与主流编辑器无缝集成,显著提升开发效率和代码质量。

Project Cover

AI写歌

Suno AI是一个革命性的AI音乐创作平台,能在短短30秒内帮助用户创作出一首完整的歌曲。无论是寻找创作灵感还是需要快速制作音乐,Suno AI都是音乐爱好者和专业人士的理想选择。

Project Cover

有言AI

有言平台提供一站式AIGC视频创作解决方案,通过智能技术简化视频制作流程。无论是企业宣传还是个人分享,有言都能帮助用户快速、轻松地制作出专业级别的视频内容。

Project Cover

Kimi

Kimi AI助手提供多语言对话支持,能够阅读和理解用户上传的文件内容,解析网页信息,并结合搜索结果为用户提供详尽的答案。无论是日常咨询还是专业问题,Kimi都能以友好、专业的方式提供帮助。

Project Cover

阿里绘蛙

绘蛙是阿里巴巴集团推出的革命性AI电商营销平台。利用尖端人工智能技术,为商家提供一键生成商品图和营销文案的服务,显著提升内容创作效率和营销效果。适用于淘宝、天猫等电商平台,让商品第一时间被种草。

Project Cover

吐司

探索Tensor.Art平台的独特AI模型,免费访问各种图像生成与AI训练工具,从Stable Diffusion等基础模型开始,轻松实现创新图像生成。体验前沿的AI技术,推动个人和企业的创新发展。

Project Cover

SubCat字幕猫

SubCat字幕猫APP是一款创新的视频播放器,它将改变您观看视频的方式!SubCat结合了先进的人工智能技术,为您提供即时视频字幕翻译,无论是本地视频还是网络流媒体,让您轻松享受各种语言的内容。

Project Cover

美间AI

美间AI创意设计平台,利用前沿AI技术,为设计师和营销人员提供一站式设计解决方案。从智能海报到3D效果图,再到文案生成,美间让创意设计更简单、更高效。

Project Cover

稿定AI

稿定设计 是一个多功能的在线设计和创意平台,提供广泛的设计工具和资源,以满足不同用户的需求。从专业的图形设计师到普通用户,无论是进行图片处理、智能抠图、H5页面制作还是视频剪辑,稿定设计都能提供简单、高效的解决方案。该平台以其用户友好的界面和强大的功能集合,帮助用户轻松实现创意设计。

投诉举报邮箱: service@vectorlightyear.com
@2024 懂AI·鲁ICP备2024100362号-6·鲁公网安备37021002001498号