drewskidang / arxiv-chat

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

TitanML | Arxiv Chat

Image from TitanML

About   |   Development    

📗 About

This the repo for a flan-t5-xl based Arxiv interaction platform, for summarizing and asking questions about Arxiv papers. For details on the theory behind the app, check out our blog here. The frontend is built and served using Streamlit, and individual models are accessed using simple FastApi servers. The vector database required for question answering is designed using a modified version of VLite - specifically the text chunking functionality is customised, and can be easily overwritten in /embeddings/app/vlite/utils.py.

💻 Development

To run this app yourself requires Docker. Three components need to be built individually and then unified with Docker Compose.
From in /src, run:

docker build -t frontend .

From in /embeddings, run:

docker build -t embeddings .

Download the Titan Takeoff repo, and build the image:

docker build -t takeoff .

All endpoints can be customised to match the needs of your models. The summarizer and Q&A models need to be downloaded and accessible, to be volume mounted into the Takeoff container - follow instructions at the specific repo for how to setup.

To run the whole system, navigate to /docker, customize the yaml file with the locations of your models and any other differences, and run:

docker compose up

About


Languages

Language:Python 99.1%Language:Dockerfile 0.6%Language:Shell 0.3%