DocsGPT 🦖
Open-Source Documentation Assistant
DocsGPT is a cutting-edge open-source solution that streamlines the process of finding information in project documentation. With its integration of the powerful GPT models, developers can easily ask questions about a project and receive accurate answers.
Say goodbye to time-consuming manual searches, and let DocsGPT help you quickly find the information you need. Try it out and see how it revolutionizes your project documentation experience. Contribute to its development and be a part of the future of AI-powered assistance.
Features
Roadmap
You can find our Roadmap here, please don't hesitate contributing or creating issues, it helps us make DocsGPT better!
Live preview
Join Our Discord
Project structure
-
Application - flask app (main application)
-
Extensions - chrome extension
-
Scripts - script that creates similarity search index and store for other libraries.
-
frontend - frontend in vite and
QuickStart
Note: Make sure you have docker installed
- Open dowload this repository with
git clone https://github.com/arc53/DocsGPT.git
- Open docker-compose.yaml and replace <your_api_key> with your OpenAI's key (there are 4 places)
- Run
docker-compose build && docker-compose up
To stop just run Ctrl + C
Development environments
Spin up only 2 containers from docker-compose.yaml (by deleting all services except for redis and mongo)
Make sure you have python 3.10 or 3.11 installed
- Navigate to
/application
folder - Install dependencies
pip install -r requirements.txt
- Prepare .env file Copy .env_sample and create .env with your openai api token
- Run the app
python app.py
- Start worker with
celery -A app.celery worker -l INFO
To start frontend
- Navigate to
/frontend
folder - Install dependencies
npm install
- In the file
.env.development
instead ofVITE_API_HOST = https://docsapi.arc53.com
useVITE_API_HOST=http://localhost:5001
- Run the app
npm run dev
How to install the Chrome extension
Guides
Interested in contributing?
How to use any other documentation
How to host it locally (so all data will stay on-premises)
Built with 🦜️🔗 LangChain