Open-Source RAG Assistant
DocsGPT is an open-source genAI tool that helps users get reliable answers from any knowledge source, while avoiding hallucinations. It enables quick and reliable information retrieval, with tooling and agentic system capability built in.
- 🗂️ Wide Format Support: Reads PDF, DOCX, CSV, XLSX, EPUB, MD, RST, HTML, MDX, JSON, PPTX, and images.
- 🌐 Web & Data Integration: Ingests from URLs, sitemaps, Reddit, GitHub and web crawlers.
- ✅ Reliable Answers: Get accurate, hallucination-free responses with source citations viewable in a clean UI.
- 🔗 Actionable Tooling: Connect to APIs, tools, and other services to enable LLM actions.
- 🧩 Pre-built Integrations: Use readily available HTML/React chat widgets, search tools, Discord/Telegram bots, and more.
- 🔌 Flexible Deployment: Works with major LLMs (OpenAI, Google, Anthropic) and local models (Ollama, llama_cpp).
- 🏢 Secure & Scalable: Run privately and securely with Kubernetes support, designed for enterprise-grade reliability.
- Full GoogleAI compatibility (Jan 2025)
- Add tools (Jan 2025)
- Anthropic Tool compatibility
- Add triggerable actions / tools (webhook)
- Add OAuth 2.0 authentication for tools and sources
- Manually updating chunks in the app UI
- Devcontainer for easy development
- Chatbots menu re-design to handle tools, scheduling, and more
You can find our full roadmap here. Please don't hesitate to contribute or create issues, it helps us improve DocsGPT!
We're eager to provide personalized assistance when deploying your DocsGPT to a live environment.
Note
Make sure you have Docker installed
- Clone the repository and run the following command:
git clone https://github.com/arc53/DocsGPT.git
cd DocsGPT
On Mac OS or Linux, write:
- Run the following command:
./setup.sh
It will install all the dependencies and allow you to download the local model, use OpenAI or use our LLM API.
Otherwise, refer to this Guide for Windows:
On windows:
-
Create a
.env
file in your root directory and set the env variables. It should look like this inside:LLM_NAME=[docsgpt or openai or others] API_KEY=[if LLM_NAME is openai]
See optional environment variables in the /application/.env_sample file.
-
Run the following command:
docker-compose up
-
Navigate to http://localhost:5173/.
To stop, just run Ctrl + C
.
Note
For development environment setup instructions, please refer to the Development Environment Guide.
Please refer to the CONTRIBUTING.md file for information about how to get involved. We welcome issues, questions, and pull requests.
-
Application - Flask app (main application).
-
Extensions - Extensions, like react widget or discord bot.
-
Scripts - Miscellaneous scripts.
We as members, contributors, and leaders, pledge to make participation in our community a harassment-free experience for everyone, regardless of age, body size, visible or invisible disability, ethnicity, sex characteristics, gender identity and expression, level of experience, education, socio-economic status, nationality, personal appearance, race, religion, or sexual identity and orientation. Please refer to the CODE_OF_CONDUCT.md file for more information about contributing.
The source code license is MIT, as described in the LICENSE file.
This project is supported by: