Skip to content

Latest commit

 

History

History
84 lines (67 loc) · 2.82 KB

README.md

File metadata and controls

84 lines (67 loc) · 2.82 KB

GTABot: [GPT + Telegram + arXiv] A GPT-powered Bot for Telegram that enables searching and exploring arXiv papers.

Welcome to the GTABot project, an open-source AI-driven bot that helps users explore and discover research papers on arXiv. This bot is built using the GPT-4 architecture, which empowers it to provide paper summaries, filter papers based on your interests, and answer queries about specific papers or research topics. Our goal is to help researchers, students, and enthusiasts save time and efficiently find relevant research.

Features

  • Paper Summarization[TODO]: GTABot can provide concise summaries of arXiv papers, allowing users to quickly understand the main contributions and findings of a study.
  • Paper Recommendation: Based on user preferences and interests, the bot suggests relevant papers from arXiv's vast repository.
  • Topic-based Search: Users can search for papers on specific topics or with particular keywords.
  • FAQ Answering[TODO]: GTABot can answer common questions about papers, such as methodology, results, and impact.

Screenshots

Name Preview Note
Homepage Homepage
Admin Homepage Admin Homepage
Admin Subject Admin Subject
Admin Paper Admin Paper
Telegram Channel Telegram Channel

Getting Started Locally

  1. Clone the repository
git clone https://github.com/xiaoli/GTABot.git
  1. Navigate to the project directory
cd GTABot
  1. Install the required dependencies
pip install -r requirements.txt
  1. DB migration
python manage.py migrate
  1. Environment Variables
cp env_example .env
EDIT .env TO FILL YOUR OWN SETTINGS
  1. Create a superuser account
python manage.py createsuperuser
  1. Run the web server
python manage.py runserver
  1. Add some interesting subjects
Admin >> Home >> Research >> Subjects >> Add Subject
  1. Run the bot
python manage.py grabpapers

Getting Started on Heroku

Refer to Getting Started on Heroku with Python

Heroku Scheduler

Heroku Scheduler >> Add job >> "python manage.py grabpapers" / Every 10 minutes

Heroku App Settings >> Config Vars

Refer to env_example:

TELEGRAM_API_TOKEN='{AAA:BBB}'
TELEGRAM_CHANNEL_ID=-100{CHANNEL_ID}
ARXIV_HOST_URL='https://arxiv.org'
ENABLE_TELEGRAM_CHANNEL_MSG=True
ARXIV_MAX_RESULTS_COUNT=10