All Projects → thundergolfer → arXie-Bot

thundergolfer / arXie-Bot

Licence: MIT license
arXie is a Slack bot that browses and filters the arXiv repository for you

Programming Languages

python
139335 projects - #7 most used programming language

Projects that are alternatives of or similar to arXie-Bot

Obed Bot
🍴 Obed Slack Bot, na požiadanie kontroluje aktuálnu ponuku denného menu reštaurácii. [only for slovak|czech users]
Stars: ✭ 32 (+10.34%)
Mutual labels:  slackbot, slack-bot
Slack Block Builder
Lightweight, no-dependency JavaScript library for creating Slack Block Kit UIs, with a builder syntax, inspired by SwiftUI.
Stars: ✭ 129 (+344.83%)
Mutual labels:  slackbot, slack-bot
Jbot
Make Slack and Facebook Bots in Java.
Stars: ✭ 1,148 (+3858.62%)
Mutual labels:  slackbot, slack-bot
Scrape Rss Bot
Slack bot that converts links to an RSS feed
Stars: ✭ 16 (-44.83%)
Mutual labels:  slackbot, slack-bot
Sactive Bot
😈 An extensible chat bot framework. sactive-bot is an evolution of the open source hubot project. - https://www.shipengqi.top/sactive-bot .
Stars: ✭ 212 (+631.03%)
Mutual labels:  slackbot, slack-bot
Wc2018 Slack Bot
World Cup 2018 Slack Bot
Stars: ✭ 11 (-62.07%)
Mutual labels:  slackbot, slack-bot
Botonomous
A PHP Framework For Creating Autonomous Slack Bots
Stars: ✭ 109 (+275.86%)
Mutual labels:  slackbot, slack-bot
iou-slack-bot
💸 IOU Slack Bot - Keep track of your debts with your peers.
Stars: ✭ 13 (-55.17%)
Mutual labels:  slackbot, slack-bot
Go Sarah
Simple yet customizable bot framework written in Go.
Stars: ✭ 188 (+548.28%)
Mutual labels:  slackbot, slack-bot
Chatskills
Run and debug Alexa skills on the command-line. Create bots. Run them in Slack. Run them anywhere!
Stars: ✭ 171 (+489.66%)
Mutual labels:  slackbot, slack-bot
Slacker
Slack Bot Framework
Stars: ✭ 495 (+1606.9%)
Mutual labels:  slackbot, slack-bot
walkiebot
walkiebot opensource
Stars: ✭ 42 (+44.83%)
Mutual labels:  slackbot, slack-bot
Threat-Intel-Slack-Bot
Interactive Threat Intelligence Bot that leverages serverless framework, AWS/GCP, and Slack
Stars: ✭ 26 (-10.34%)
Mutual labels:  slackbot, slack-bot
Slack Ruby Client
A Ruby and command-line client for the Slack Web, Real Time Messaging and Event APIs.
Stars: ✭ 957 (+3200%)
Mutual labels:  slackbot, slack-bot
fplbot
🤖 Chatbot for Fantasy Premier League (Slack/Discord)
Stars: ✭ 14 (-51.72%)
Mutual labels:  slackbot, slack-bot
Slack Machine
A sexy, simple, yet powerful and extendable Slack bot
Stars: ✭ 91 (+213.79%)
Mutual labels:  slackbot, slack-bot
dienstplan
Slack bot app for duty rotations
Stars: ✭ 14 (-51.72%)
Mutual labels:  slackbot, slack-bot
SlackWebhooksGithubCrawler
Search for Slack Webhooks token publicly exposed on Github
Stars: ✭ 21 (-27.59%)
Mutual labels:  slackbot, slack-bot
Fantasy football chat bot
GroupMe Discord and Slack Chatbot for ESPN Fantasy Football
Stars: ✭ 166 (+472.41%)
Mutual labels:  slackbot, slack-bot
Awesome Bots
The most awesome list about bots ⭐️🤖
Stars: ✭ 2,864 (+9775.86%)
Mutual labels:  slackbot, slack-bot

arXie Slack Bot Build Status Code Climate

arXiv {pronounced archive}, arXie {pronounced... archie}


Add to Slack

arXie is a Slack bot that browses and filters the arXiv repository for you. You're kept informed on what's happening in Machine Learning and AI with minimal effort.

This production of this bot was motivated by this question in Google Brain's r/machinelearning AMA

How do you keep up with the vast amount of work being done on deep learning? Do each of you just focus on one thing or is everyone reading many papers daily? I'm a second year AI master student and I find it overwhelming.

I've taken all feedback from that thread and the hacker news thread to make the process on ingesting the massive amount of Machine Learning research relatively pain free.

Set-Up

Disclaimer:

ArXie-Bot uses arxiv-sanity.com as an interface to the ArXiv papers repository.
As arxiv-sanity has a _username_, _password_ login system, Arxie-Bot is required
to either receive some existing login details from you, or ask you
to message it some fresh ones to use.

As you have probably figured, this requires messaging through Slack a password,
which is god-awful security. Though an arxiv-sanity.com account is a pretty low
value target, it is still something that needs to be fixed.

The first step will probably involve moving to a process whereby Arxie-Bot
creates an password for you on the back-end and emails you that password to a
secure email so that you may use the arxiv-sanity.com account outside of Slack.

It will be harder to facilitate the secure  passing of an existing password to
the bot, but that is a desired feature.

Coming soon once I've implemented what's necessary for the "Add to Slack" button process

How To Basics

The following commands are available to you:

1. Get Library

The "Library" is those papers that are stored for your account at arxiv-sanity.com, and a summary will be presented by saying things like this:

@arxie-bot Get my library, @arxie-bot get library, @arxie-bot Fetch my library, @arxie-bot Get my papers library

2. Get Paper

Get a paper's summary:

@arxie-bot Show <paper title>

3. Get Recommended

Given papers you've saved, pull a few recent papers arxiv-sanity.com thinks you'd like.

@arxie-bot Get recommended papers, @arxie-bot I want my recommended papers, @arxie-bot recommended

4. Clear Library

The "Library" is those papers that are stored for you at arxiv-sanity.com, and they all be deleted by saying things like this:

@arxie-bot delete library, @arxie-bot delete all in library, @arxie-bot wipe library, @arxie-bot clear library

5. Search

Supply a query and search against the papers in arxiv-sanity.com.

@arxie-bot search for <search query>, @arxie-bot search <query>

Development

Installation

You can use virtualenv arxie-env to create a virtual environment called "arxie-env". Running pip install -r requirements.txt.

You will require an API AI token and a Slack API Token for the ArXie-Bot, which is accessible once the bot has been adding to your team (details here for Slack). Add these tokens as environment variables and the ArXie bot will pick them up.

Running Locally

The following environment variables must be populated:

APIAI_TOKEN=<GET FROM https://api.ai/>
SLACK_TOKEN=<GET A 'Bot user OAuth access token'>

ARXIE_DB_TOKEN=<ANY HIGH-ENTROPY STRING>
ENV="DEV"

Run python -m bot.app

Deployment and Running in 'Prod'

Arxie-bot can be deployed to the Google Cloud by following and adapting Build a Slack Bot with Node.js on Kubernetes. The kubernetes/ folder has the config and more info.

The following environment variables must be populated:

APIAI_TOKEN=<GET FROM https://api.ai/>
SLACK_TOKEN=<GET A 'Bot user OAuth access token'>

ARXIE_DB_TOKEN=<ANY HIGH-ENTROPY STRING>
DEV="PROD"
PROJECT_ID=<YOUR GCLOUD PROJECT ID>

When in production, Arxie-bot uses Google Datastore to store arxiv-sanity.com account details for Slack users.

License

This project is under the MIT License.


Made With

Imgur Imgur Imgur Imgur

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].