/knowledge_gpt

Accurate answers and instant citations for your documents.

Primary LanguagePythonMIT LicenseMIT

📖KnowledgeGPT

GitHub GitHub Repo stars GitHub forks X (formerly Twitter) Follow

Accurate answers and instant citations for your documents.

Upload your documents and get answers to your questions, with citations from the text.

Demo

Installation

Follow the instructions below to run the Streamlit server locally.

Pre-requisites

Make sure you have Python ≥3.10 installed.

Steps

  1. Clone the repository
git clone https://github.com/mmz-001/knowledge_gpt
cd knowledge_gpt
  1. Install dependencies with Poetry and activate virtual environment
poetry install
poetry shell
  1. (Optional) Avoid adding the OpenAI API every time you run the server by adding it to environment variables.
    • Make a copy of .env.example named .env
    • Add your API key to the .env file

Note: Make sure you have a paid OpenAI API key for faster completions and to avoid hitting rate limits.

  1. Run the Streamlit server
cd knowledge_gpt
streamlit run main.py

Build with Docker

Run the following commands to build and run the Docker image.

cd knowledge_gpt
docker build -t knowledge_gpt .
docker run -p 8501:8501 knowledge_gpt

Open http://localhost:8501 in your browser to access the app.

Customization

You can increase the max upload file size by changing maxUploadSize in .streamlit/config.toml. Currently, the max upload size is 25MB for the hosted version.

Tech Stack

Roadmap

  • Add support for more formats (e.g. webpages, PPTX, etc.)
  • Highlight relevant phrases in citations
  • Support scanned documents with OCR
  • More customization options (e.g. chain type, chunk size, etc.)
  • Visual PDF viewer
  • Support for Local LLMs

Contributing

All contributions are welcome!

Contributors

Big thanks to the following people for their contributions!

License

Distributed under the MIT License. See LICENSE for more information.

Star History

Star History Chart