GithubHelp home page GithubHelp logo

mlnlp-world / myarxiv Goto Github PK

View Code? Open in Web Editor NEW
230.0 4.0 19.0 6.24 MB

Arxiv个性化定制化模版,实现对特定领域的相关内容、作者与学术会议的有效跟进。

Home Page: https://mlnlp-world.github.io/MyArxiv/

License: GNU General Public License v2.0

Handlebars 39.85% CSS 50.15% JavaScript 10.00%

myarxiv's Introduction

MyArxiv

version Status-building PRs-Welcome stars FORK Issues


项目动机

Arxiv作为当前最受欢迎的学术论文预印的网站之一,每天有大量的最新学术论文在此网站发布。许多一线研究者,在这样信息爆炸的时代,为了第一时间有效地关注到与自己研究“相关”的学术论文,每天都需要耗费较多时间进行检索和审阅过滤掉“无关”的学术论文,这无疑为大家的科研带来了较大的负担。为了帮助大家高效地、自由地阅览Arxiv最新学术论文,本项目为大家提供了Arxiv个性化定制化模版,实现对特定领域的相关内容、作者与学术会议的有效跟进,将Arxiv定制化为MyArxiv

本项目所用徽章来自互联网,如侵犯了您的图片版权请联系我们删除,谢谢。

项目简介

MyArxiv项目基于Arxiv官方APIGithub Actions相关服务,为大家了提供了Arxiv的定制化服务,使用者可以通过配置相关文件,从Arxiv每日发布的最新研究成果中,实现个性化地、轻松地阅览属于自己的Arxiv网站,其功能如下:

基本功能

  • 跟踪指定领域的最新成果
  • 缓存指定时段的文章信息

特色功能

  • 快速聚焦到文章标题中的指定关键字
  • 方便注意到文章作者中的指定学者
  • 及时了解到相关知名会议、期刊的学术文章

项目预览

使用者可以访问https://mlnlp-world.github.io/MyArxiv/进行对当前项目进行预览,以便更好地熟悉和使用当前项目。

  • MyArxiv总页面概览:

​ 其中包含了指定领域的多天的文章最新更新情况

  • 进一步查看领域中更新的文章列表:

​ 每一个条目中有特定类型的前缀标识(e.g. 标识是否有高亮的作者)、包含高亮的文章标题(e.g. Dialogue)以及相应的会议信息(e.g. EMNLP 2022)。

  • 更加细化地对感兴趣的文章内容进行查看:

​ 其中有包含高亮详细作者列表(e.g. Qun Liu)、摘要以及对应的comment(e.g. EMNLP 2022, Long paper, Main conference)。

使用说明

  • 单击标题展开并仔细查看其摘要。
  • 单击摘要跳转到对应的Arxiv文章。
  • 指定关键字、指定学者和会议/期刊信息的高亮显示。
  • 通过文章条目前缀标识区分论文是新提交的还是更新的
  • 通过文章条目前缀标识区分论文是否由高亮的作者撰写的
  • 使用Tab键展开/折叠所有文章。
  • 实现了对于Latex公式的渲染。
  • 支持深色/浅色模式。

快速上手指南

使用MyArxiv实现个人定制的Arxiv,使用默认设置快速上手,步骤如下:

Get Start

1. 建立仓库

当前MyArxiv仓库为模版仓库,当我们建立属于自己的MyArxiv时,需要从当前模版新建仓库到自己的Github账号下。

假设仓库地址为github.com/username/reponame,便于后续说明。

2. 修改cachr url

修改config.toml中文件中的cache_url设置(MyArxiv数据缓存地址,该地址设置与你托管当前项目的网站地址相关),将其对应的Github账户,从MLNLP-World修改为自己当前的账户,如下图所示:

3. Github pages设置

进入当前Repo对应的Settings后,进入Pages页面,设置Branchgh-pages分支。

使用至此,你已经基于MyArxiv的默认配置实现了快速上手,直接访问Github Pages对应的网页username.github.io/MyArxiv,可以查看属于自己的MyArxiv:

定制化指南

MyArxiv是高度可定制化的,使用者可以根据自己的实际需求进行更改,实现个性化定制,如下内容对于可定制化的部分进行说明。

Build Steps

1. 托管网站设置

config.toml配置文件中,个人网站相关设置部分如下图所示:

此部分与个人MyArxiv托管的网站设置相关,默认设置如下:

site_title = "MyArxiv"
limit_days = 7
cache_url = "https://mlnlp-world.github.io/MyArxiv/cache.json"
  • site_title:MyArxiv网站名称,默认为"MyArxiv"

  • limit_days:MyArxiv网站所缓存的过去几天的最新论文,默认为缓存过去7天的最新论文。

  • cache_url:MyArxiv数据缓存地址,该地址设置与你托管当前项目的网站地址相关。

    • 若使用默认的Github Pages,那么会在username.github.io域名上托管该项目,项目具体地址为username.github.io/reponame,就要将cache_url设置为username.github.io/reponame/cache.json
    • 若使用其他域名yourarxivdomain托管该项目,则要将cache_url使用对应的网址进行替换,设置为yourarxivwebsite/cache.json

2. Arxiv领域偏好设置

config.toml配置文件中,Arxiv领域偏好设置部分如下图所示:

此部分与个人定制的Arxiv领域配置相关,设置的样例如下:

[[sources]]
limit = 150
category = "cs.CL"
title = "Computation and Language"
  • limit:每天更新当前Arxiv领域中的论文数目,默认为150,(一般来说,大部分单领域Arxiv论文的每日更新数目不会超过150。)
  • category:所感兴趣的Arxiv文章领域标识,需根据Arxiv官网查找对应领域的标识。
  • title:领域标识对应的领域名称,需根据Arxiv官网查找对应领域的名称。

上述设置为一个Arxiv领域对应的设置单元样例,默认设置涵盖NLP研究者主要关注的Arxiv中cs.CLcs.CVcs.IRcs.LG以及cs.MM领域,使用者可以根据自己的研究偏好参照上述说明进行更改。

3. 高亮脚本设置

config.toml配置文件中,高亮脚本设置部分如下图所示:

此部分与个人定制的高亮信息相关,使用者在此部分可以根据自己的研究偏好,进一步添加定制化高亮信息。

[scripts]
highlight_title = "scripts/highlight_title.rhai"
highlight_author = "scripts/highlight_author.rhai"
highlight_conference = "scripts/highlight_conference.rhai"

目前所支持的高亮信息,包括文章标题、作者和会议名称三个方面。然而此部分所给出的信息只有脚本文件的位置,使用者需要转移到脚本文件夹./scripts下修改对应的高亮配置文件./scripts/config.rhai,其中文件中相关设置部分如下:

./scripts/config.rhai中,定制化改动如下:

  • let titles = titles_model + titles_method + titles_type;:标题的高亮可以自定义其内容,默认由模型方法以及类型三部分组成:
    • let titles_type = ["Dataset", "Survey"];:添加需要高亮的文章类型;
    • let titles_model = ["BERT", "GPT", "Transformer"];添加需要高亮的文章模型信息;
    • let titles_method = ["Pre-train", "Pretrain", "Prompt", "Self-Supervised"];添加需要高亮的文章方法信息;
  • let authors_array = ["Yann LeCun", "Geoffrey Hinton", "Yoshua Bengio"];添加需要高亮的作者信息;
  • let conferences = []; 高亮的会议列表,默认包含了当前AI领域的大部分主流会议信息;

4. workflow设置

workflow设置位于文件./.github/workflows/update-feed.yml中:

可以参考如下部分需要对此文件进行修改。

  • name: workflowname:对Workflow进行命名,默认为Update

  • - cron: "12 5 * * *":对Workflow运行的时间进行设置,即对MyArxiv每天更新的时间进行设置,可以参考crontab,对时间进行调整

5. MyArxiv网页设置

完成MyArxiv个性定制化后,下面进行网页显示的修改,主要修改目标文件为./includes/index.hbs,使用者可以根据自己的风格喜好对网页格式进行各类更改,如下提供两个更改样例:

  • 网页标题的修改:

    index.hbs中,网页标题相关配置如下所示:

    • 其中位于line 56的蓝线高亮部分为当前配置的网页标题,使用者可以自行进行更改:

      <div class="header-title">
                      NAME YOU LIKE
                  </div>
    • 其中位于index.hbs line 50 的分区中已经注释掉的部分中,红线高亮部分表示将自己的MyArxiv仓库地址进行链接并对标题进行重新命名的相关设置,可以使用此设置,替代默认的网页标题,修改格式如下:

          <div style="display:flex; justify-content:space-between; align-items:flex-end;">
              <div>
                  <a href="https://github.com/username/reponame" style="text-decoration: none;">
                      <div class="header-title">
                          <span class="header-title-preffix">NAME YOU LIKE
                      </div>
                  </a>
              </div>
  • 徽章的修改:

    index.hbs中,网页标题相关配置如下所示:

    • 其中位于line 125的蓝线高亮部分为当前配置的网页时间戳,使用者可以根据自己需要进行自行更改:

      {{time_format build_time "%F %T %Z"}}
    • 其中位于index.hbs line 119 的分区中已经注释掉的部分中,红线高亮部分表示使用shield.io实时更新当前workflow的build时间戳,对index.hbsline 118链接的workflow地址进行修改;可以使用此设置,设置徽章替代默认的网页时间戳,修改格式如下:

      <img id="build-timestamp-badge"
                           src="https://img.shields.io/github/workflow/status/username/reponame/workflowname?label={{time_format
                          build_time "%F %T %Z"}}&style=for-the-badge"
                      alt="{{time_format build_time "%F %T %Z"}}">

      其中涉及workflowname需要与./.github/workflows/update-feed.yml中的name的保持一致。

配置修改完成,将上述更改提交至个人的Github仓库。

6. Github Pages设置

在完成上述定制后,需要对个人的MyArxiv库Github Pages进行设置,将项目进行托管:

  • 访问Github Pages设置https://github.com/username/reponame/settings/pages

  • 若使用username.github.io来托管MyArxiv,则:

    • 将其中的Branch设置为gh-pages分支;
    • 成功Build后,定制化结束;
    • 访问username.github.io./reponame,即可实现MyArxiv的定制化访问
  • 若使用其他域名来托管MyArxiv,则:

    • 将其中的Branch设置为gh-pages分支;

    • 将自己的域名填入Custom Domain;

    • ./statics文件夹下新建CNAME文件,将域名写入其中:

      >> cd ./statics
      >> touch CNAME
      >> echo "your domain" > CNAME
    • 成功Build后,定制化结束;

    • 访问username.github.io/reponame,即可实现MyArxiv的定制化访问

到这里,就实现了MyArxiv的定制化。Enjoy YourArxiv !

参考资源

该项目部分参考如下项目:

致谢

感谢如下项目对本项目提供的帮助:

组织者

感谢以下同学对本项目的组织

贡献者

感谢以下同学对本项目的支持与贡献

myarxiv's People

Contributors

alongwy avatar entslscheia avatar looperxx avatar yizhen20133868 avatar yudizh avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

myarxiv's Issues

[feature request] 文章关键字筛选 / 排序

感谢维护开源工具,对我的研究工作很有帮助~
据我的理解,目前MyArxiv是不是会默认显示所有关注领域内的内容(e.g. Computation and Language),并没有对检索到的文章进行过滤/排序。然而,研究者通常只对一小部分方法感兴趣(可以通过关键字识别),这种方法会导致MyArxiv 检索到的内容大部分是不关心的文章。
可能的改进方案:

  1. 加入排序功能(对检索到的领域内文章进行关键字/作者/会议排序,即高亮的文章优先显示)
  2. 加入筛选功能(对检索到的文章进行筛选,只显示包含对应关键字/作者/会议的文章)

谢谢~

Action failed

感谢大佬的项目,我部署的时候遇到了这个错误,不知道能不能解决?

issues with custom domain

感谢贡献!我在custom domain下显示page的一直是readme.md的内容,请问知道应该怎么调整吗?

image image

update feed workflow startup failure | 关于workflow配置文件的问题

非常nice的一个项目!我想请教一下关于workflow配置文件的问题。我在不修改原repo的update-feed.yml的情况下出现了 every step must define a `uses` or `run` key的错误,将L45改为- uses: peaceiris/actions-gh-pages@v3又出现了actions/checkout@v2 and peaceiris/actions-gh-pages@v3 are not allowed to be used in erosminer/MyArxiv. Actions in this workflow must be: within a repository owned by erosminer.的错误。是其他哪里的配置出了问题吗?非常感谢。

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.