Go to file
2023-10-06 18:09:31 +03:00
.github Update bug_report.yml 2023-10-03 15:14:44 +01:00
application Update faiss.py 2023-10-06 16:05:10 +01:00
docs correct wrapper, typos; add links 2023-10-06 15:11:22 +05:30
extensions Bump postcss from 8.4.23 to 8.4.31 in /extensions/web-widget 2023-10-05 14:36:56 +00:00
frontend remove the unwanted whitespace 2023-10-06 17:04:25 +05:30
scripts Bump langchain from 0.0.252 to 0.0.308 in /scripts 2023-10-05 13:47:34 +00:00
tests sagemaker fixes + test 2023-10-06 13:22:51 +01:00
.env-template minor fixes on deleting 2023-10-04 13:57:40 +01:00
.gitignore script 2023-10-01 17:20:47 +01:00
.ruff.toml Linting 2023-05-13 10:36:17 +02:00
CODE_OF_CONDUCT.md Update CODE_OF_CONDUCT.md 2023-10-06 00:07:13 +05:30
codecov.yml Create codecov.yml 2023-09-04 14:48:20 +01:00
CONTRIBUTING.md Update CONTRIBUTING.md 2023-10-06 01:40:03 +05:30
docker-compose-azure.yaml fix packaging and imports and introduce tests with pytest. 2023-08-14 18:53:25 +02:00
docker-compose-dev.yaml Added dev docker compose file 2023-04-26 19:05:50 +01:00
docker-compose-local.yaml script + cpu optimisations 2023-10-01 19:16:13 +01:00
docker-compose.yaml Update docker-compose.yaml 2023-10-06 11:57:08 +01:00
HACKTOBERFEST.md Update HACKTOBERFEST.md 2023-10-06 01:31:37 +05:30
LICENSE Initial commit 2023-02-02 11:03:24 +00:00
Readme Logo.png Add files via upload 2023-02-05 21:10:42 +03:00
README.md Update README.md 2023-10-06 15:29:17 +01:00
run-with-docker-compose.sh Revert "Changed environment variable names OPENAI_API_BASE and OPENAI_API_VERSION to AZURE_OPENAI_API_BASE and AZURE_OPENAI_API_VERSION" 2023-08-05 14:08:51 +02:00
setup.sh misc: fix spelling 2023-10-04 05:18:15 +10:00

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.

example1 example2 example3 example3

Production Support / Help for companies:

We're eager to provide personalized assistance when deploying your DocsGPT to a live environment.

🎉 Join the Hacktoberfest with DocsGPT and Earn a Free T-shirt! 🎉

video-example-of-docs-gpt

Roadmap

You can find our roadmap here. Please don't hesitate to contribute or create issues, it helps us improve DocsGPT!

Our Open-Source models optimized for DocsGPT:

Name Base Model Requirements (or similar)
Docsgpt-7b-falcon Falcon-7b 1xA10G gpu
Docsgpt-14b llama-2-14b 2xA10 gpu's
Docsgpt-40b-falcon falcon-40b 8xA10G gpu's

If you don't have enough resources to run it, you can use bitsnbytes to quantize.

Features

Group 9

Live preview

Join our Discord

Guides

Interested in contributing?

How to use any other documentation

How to host it locally (so all data will stay on-premises)

Project structure

  • Application - Flask app (main application).

  • Extensions - Chrome extension.

  • Scripts - Script that creates similarity search index and stores for other libraries.

  • Frontend - Frontend uses Vite and React.

QuickStart

Note: Make sure you have Docker installed

On Mac OS or Linux, write:

./setup.sh

It will install all the dependencies and allow you to download the local model or use OpenAI.

Otherwise, refer to this Guide:

  1. Download and open this repository with git clone https://github.com/arc53/DocsGPT.git

  2. Create a .env file in your root directory and set the env variable OPENAI_API_KEY with your OpenAI API key and VITE_API_STREAMING to true or false, depending on if you want streaming answers or not. It should look like this inside:

    API_KEY=Yourkey
    VITE_API_STREAMING=true
    

    See optional environment variables in the /.env-template and /application/.env_sample files.

  3. Run ./run-with-docker-compose.sh.

  4. Navigate to http://localhost:5173/.

To stop, just run Ctrl + C.

Development environments

Spin up mongo and redis

For development, only two containers are used from docker-compose.yaml (by deleting all services except for Redis and Mongo). See file docker-compose-dev.yaml.

Run

docker compose -f docker-compose-dev.yaml build
docker compose -f docker-compose-dev.yaml up -d

Run the backend

Make sure you have Python 3.10 or 3.11 installed.

  1. Export required environment variables or prepare a .env file in the /application folder:
    • Copy .env_sample and create .env with your OpenAI API token for the API_KEY and EMBEDDINGS_KEY fields.

(check out application/core/settings.py if you want to see more config options.)

  1. (optional) Create a Python virtual environment:
python -m venv venv
. venv/bin/activate
  1. Change to the application/ subdir and install dependencies for the backend:
pip install -r application/requirements.txt
  1. Run the app using flask run --host=0.0.0.0 --port=7091.
  2. Start worker with celery -A application.app.celery worker -l INFO.

Start frontend

Make sure you have Node version 16 or higher.

  1. Navigate to the /frontend folder.
  2. Install dependencies by running npm install.
  3. Run the app using npm run dev.

Many Thanks To Our Contributors

Built with 🦜🔗 LangChain