Skip to content

tqa236/ragable

Repository files navigation

ragable

Description

ragable is a free, containerised question-answer framework that allows you to ask questions to your documents in an intuitive way.

This app uses a method called retrieval augmented generation (RAG) to retrieve information that is relevant to your question from your uploaded document. It then uses a large language model (LLM) to answer the question with the retrieved context.

The current implementation uses the following components:

Demo

This demo shows the app answering a question related to Alphabet Inc's Q3 financial result from 2023. Notice the app frontend is shown on the left; the logs are shown on the upper right; the PDF report is shown on the bottom left.

demo

Usage

Note: The first time you run this, it might take a while to build all the images and download the embedding models.

  1. You will need an API key from OpenAI or Google. You can create one for free here:

    • Google - to use models like Gemini (Recommended since it's free)
    • OpenIA - to use models like GPT4
  2. Set up your API keys in a file called .env (see .env.example for an example)

  3. Now set up the backend and frontend

    docker compose up
  4. Navigate to the frontend in your browser: http://localhost:8501/

  5. Upload a PDF document that you would like to ask a question about

  6. Ask a question in the chat input section and wait for a response

Development Environment

  1. Create a virtual environment
uv venv ragable --python 3.13
source ragable/bin/activate
uv pip install -e ".[dev]"
  1. Set up your API keys in a file called .env (see .env.example for an example)
  2. When you run your backend and frontend containers locally, use docker compose up --build to ensure the latest changes are reflected in the containers.

Development

Acknowledgement

The first versuib of this project is built upon https://github.com/ruankie/rag-qa, MIT License

About

ragable is a free, containerized question-answer application

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published