knowledge_gpt

Accurate answers and instant citations for your documents.

open-sourceagent-frameworks
Visit WebsiteView on GitHub
1.7k
Stars
+138
Stars/month
0
Releases (6m)

Overview

KnowledgeGPT is a document-based question-answering system that allows users to upload their documents and receive accurate answers with instant citations from the source text. Built on Streamlit for the user interface and Langchain for LLM tooling, it provides a straightforward way to interact with your documents using natural language queries. The tool integrates with OpenAI's API to process documents and generate responses, making it particularly valuable for researchers, students, and professionals who need to quickly extract information from large document collections. With support for various document formats and the ability to provide specific citations for each answer, KnowledgeGPT bridges the gap between document storage and intelligent information retrieval. The system runs locally via Streamlit server, giving users control over their data while leveraging powerful language models. Its open-source nature under MIT license makes it accessible for both personal and commercial use, with active development and community contributions. The tool supports Docker deployment for easy setup and scaling, and offers customization options like adjustable upload file sizes. While currently focused on document-based Q&A, the roadmap includes ambitious features like OCR support for scanned documents, webpage integration, and local LLM support.

Pros

  • + Provides instant citations with answers, ensuring transparency and verifiability of information sources
  • + Easy local deployment with both Poetry and Docker installation options, giving users full control over their data
  • + Built on established frameworks (Streamlit + Langchain) with active development and clear roadmap for advanced features

Cons

  • - Requires paid OpenAI API key for optimal performance and to avoid rate limits
  • - Limited to 25MB file upload size in the hosted version, which may restrict use with larger documents
  • - Currently supports limited document formats, though expansion is planned on the roadmap

Use Cases

Getting Started

Clone the repository and install dependencies using Poetry (`poetry install && poetry shell`) or build with Docker. Configure your OpenAI API key either as an environment variable in a .env file or enter it when prompted. Run the Streamlit server (`streamlit run main.py`) and access the web interface at localhost:8501 to upload documents and start asking questions.