Giter Site home page Giter Site logo

carrier-owl's Introduction

Carrier Owl

伝書フクロウという意味です。

About Carrier Owl

前日のarxivから気になる論文にスコアを付けてslackに通知するシステムです。
通知の際に、abstractをDeepLで翻訳しています。
導入は20minぐらいで終わります!!
スコアは、ターゲットとなるキーワードに重み付けをして決まります。(例 resnet=5, kaggle=3, audio=3)
ユーザーが好きな領域好きなキーワードを登録することで、通知される論文は変わります。

  • 登録キーワード例

    keywords:
        sound: 1
        audio: 1
        sound feature: 3
        audio feature: 3
        noise removal: 2
        spectrogram: 3
    
  • 通知例(score昇順)

Installation

requirements

  • google chrome
  • python3

step

  1. このリポジトリをフォークする

  2. フォークしたリポジトリをクローンする

  3. pythonライブラリのインストール pip install -r reuirements.txt

  4. Selenium のインストール(Seleniumについてはこちら)

    • chromeのバージョンの確認をしてください。

      • linuxの場合、以下のコマンドで確認できます。 google-chrome --version
    • webdriverのインストール。chromeのメジャーバージョンだけ抜き取って使います。

      • 例) chromeのバージョンが 84.0.4147.105場合 pip install chromedriver-binary==84.*
    • seleniumのインストール pip install selenium

  5. webhook urlの取得

    • 特定のslackチャンネルに流すための準備を行います。
    • incomming webhookのwebhook urlを取得してください。
    • slack通知の時のアイコンが設定できますので、よければこれ使ってください。
  6. webhook urlの設定

    • config.yaml 内の、'your webhook url' を取得したURlに変更します。

  7. 領域の設定

    • 通知させたいarxivの論文の領域を指定します。
    • (computer scienceの人はこの手順を飛ばしてstep8に進んでも構いません)
    • computer science なら cs などそれぞれに名前がついています。以下の手順で確認します。
    • 手順
      1. arxiv.orgにアクセス

      2. 通知させたい領域のresentと書かれた部分をクリック。

      3. 遷移後のページのurlを見て、list//recentに囲われている文字列を使います。

        • computer scienceの例: https://arxiv.org/list/cs/recent
        • この場合、cs をこの後利用する。
      4. config.yaml 内の、subject を3で取得した文字列に変更します。(デフォルトではcsになっています。)

  8. キーワードの設定

    • config.yaml にキーワードとそのキーワードのスコアを設定します。
    • 例(音に関する論文を通知してほしい場合)
      keywords:
          sound: 1
          audio: 1
          sound feature: 3
          audio feature: 3
          noise removal: 2
          spectrogram: 3
      
    • 仕組みとしては、以下のような感じです。
      1. abstractにキーワードが含まれているか

      2. 含まれていれば、キーワードの合計をscoreとし、昇順で通知

  9. 動作確認

    • 動作確認してみましょう。
      1. cd Carrier-Owl/src
      2. python3 carrier-owl.py
    • slackに通知が行けば成功です。
  10. 定期実行

    • cron(linux)を使えば定期実行ができます。
    • 設定例(月火水木金の9:50に実行)
      • 50 9 * * 1,2,3,4,5 python3 ~/Git/Carrier-Owl/src/carrier-owl.py

Reference

carrier-owl's People

Contributors

fkubota avatar

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.