From 5a9feb4411eb70beb90a8841c558c04f4f172f30 Mon Sep 17 00:00:00 2001 From: Adhiraj Date: Fri, 6 Oct 2023 01:31:37 +0530 Subject: [PATCH 1/3] Update HACKTOBERFEST.md --- HACKTOBERFEST.md | 28 ++++++++++++++-------------- 1 file changed, 14 insertions(+), 14 deletions(-) diff --git a/HACKTOBERFEST.md b/HACKTOBERFEST.md index 7a0e016e1..1a39e561d 100644 --- a/HACKTOBERFEST.md +++ b/HACKTOBERFEST.md @@ -2,13 +2,13 @@ Welcome, contributors! We're excited to announce that DocsGPT is participating in Hacktoberfest. Get involved by submitting a **meaningful** pull request, and earn a free shirt in return! -All contributors with accepted PR's will receive a cool holopin! ๐Ÿคฉ (Watchout for a reply in your PR to collect it) +All contributors with accepted PRs will receive a cool Holopin! ๐Ÿคฉ (Watch out for a reply in your PR to collect it). ๐Ÿ“œ Here's How to Contribute: ๐Ÿ› ๏ธ Code: This is the golden ticket! Make meaningful contributions through PRs. ๐Ÿ“š Wiki: Improve our documentation, Create a guide or change existing documentation. - ๐Ÿ–ฅ๏ธ Design: Improve the UI/UX, or design a new feature. + ๐Ÿ–ฅ๏ธ Design: Improve the UI/UX or design a new feature. ๐Ÿ“ Guidelines for Pull Requests: @@ -16,20 +16,20 @@ Familiarize yourself with the current contributions and our [Roadmap](https://gi Deciding to contribute with code? Here are some insights based on the area of your interest: -Frontend (โš›๏ธReact, Vite): - Most of the code is located in /frontend folder. You can also check out our React extension in /extensions/react-widget. - For design references, here's the [Figma](https://www.figma.com/file/OXLtrl1EAy885to6S69554/DocsGPT?node-id=0%3A1&t=hjWVuxRg9yi5YkJ9-1). - Ensure you adhere to the established guidelines. +- Frontend (โš›๏ธReact, Vite): + - Most of the code is located in `/frontend` folder. You can also check out our React extension in /extensions/react-widget. + - For design references, here's the [Figma](https://www.figma.com/file/OXLtrl1EAy885to6S69554/DocsGPT?node-id=0%3A1&t=hjWVuxRg9yi5YkJ9-1). + - Ensure you adhere to the established guidelines. -Backend (๐ŸPython): - Focus on /application or /scripts. However, avoid the files ingest_rst.py and ingest_rst_sphinx.py as they are soon to be deprecated. - Newly added code should come with relevant unit tests (pytest). - Refer to the /tests folder for test suites. +- Backend (๐ŸPython): + - Focus on `/application` or `/scripts`. However, avoid the files ingest_rst.py and ingest_rst_sphinx.py, as they will soon be deprecated. + - Newly added code should come with relevant unit tests (pytest). + - Refer to the `/tests` folder for test suites. -Check out [Contributing Guidelines](https://github.com/arc53/DocsGPT/blob/main/CONTRIBUTING.md) +Check out our [Contributing Guidelines](https://github.com/arc53/DocsGPT/blob/main/CONTRIBUTING.md) -Once you have Created your PR and it was merged, please fill in this [form](https://airtable.com/appfkqFVjB0RpYCJh/shrXXM98xgRsbjO7s) +Once you have created your PR and our maintainers have merged it, please fill in this [form](https://airtable.com/appfkqFVjB0RpYCJh/shrXXM98xgRsbjO7s). -Don't be shy! Hop into our [Discord](https://discord.gg/n5BX8dh8rU) Server. We're a friendly bunch and eager to assist newcomers. +Feel free to join our Discord server. We're here to help newcomers, so don't hesitate to jump in! [Join us here](https://discord.gg/n5BX8dh8rU). -Big thanks for considering contributing to DocsGPT during Hacktoberfest! ๐Ÿ™ Your effort can earn you a swanky new t-shirt. ๐ŸŽ Let's code together! ๐Ÿš€ +Thank you very much for considering contributing to DocsGPT during Hacktoberfest! ๐Ÿ™ Your contributions could earn you a stylish new t-shirt as a token of our appreciation. ๐ŸŽ Join us, and let's code together! ๐Ÿš€ From 8b6b8f0c53f9b415557ff47b18172e4b0a83fdcc Mon Sep 17 00:00:00 2001 From: Adhiraj Date: Fri, 6 Oct 2023 01:40:03 +0530 Subject: [PATCH 2/3] Update CONTRIBUTING.md --- CONTRIBUTING.md | 34 ++++++++++++++++++++-------------- 1 file changed, 20 insertions(+), 14 deletions(-) diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 78a3d9b1b..b759fd46f 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -1,6 +1,6 @@ -# Welcome to DocsGPT Contributing guideline +# Welcome to DocsGPT Contributing Guidelines -Thank you for choosing this project to contribute to, we are all very grateful! +Thank you for choosing this project to contribute to. We are all very grateful! ### [๐ŸŽ‰ Join the Hacktoberfest with DocsGPT and Earn a Free T-shirt! ๐ŸŽ‰](https://github.com/arc53/DocsGPT/blob/main/HACKTOBERFEST.md) @@ -17,30 +17,36 @@ Thank you for choosing this project to contribute to, we are all very grateful! ## ๐Ÿž Issues and Pull requests -We value contributions to our issues in the form of discussion or suggestion, we recommend that you check out existing issues and our [Roadmap](https://github.com/orgs/arc53/projects/2) +We value contributions to our issues in the form of discussion or suggestions. We recommend that you check out existing issues and our [roadmap](https://github.com/orgs/arc53/projects/2). -If you want to contribute by writing code there are a few things that you should know before doing it: -We have frontend (React, Vite) and Backend (python) +If you want to contribute by writing code, there are a few things that you should know before doing it: + +We have a frontend in React (Vite) and backend in Python. + +### If you are looking to contribute to frontend (โš›๏ธReact, Vite): + +- The current frontend is being migrated from `/application` to `/frontend` with a new design, so please contribute to the new one. +- Check out this [milestone](https://github.com/arc53/DocsGPT/milestone/1) and its issues. +- The Figma design can be found [here](https://www.figma.com/file/OXLtrl1EAy885to6S69554/DocsGPT?node-id=0%3A1&t=hjWVuxRg9yi5YkJ9-1). -### If you are looking to contribute to Frontend (โš›๏ธReact, Vite): -The current frontend is being migrated from /application to /frontend with a new design, so please contribute to the new one. Check out this [Milestone](https://github.com/arc53/DocsGPT/milestone/1) and its issues also [Figma](https://www.figma.com/file/OXLtrl1EAy885to6S69554/DocsGPT?node-id=0%3A1&t=hjWVuxRg9yi5YkJ9-1) Please try to follow the guidelines. -### If you are looking to contribute to Backend (๐ŸPython): -* Check out our issues, and contribute to /application or /scripts (ignore old ingest_rst.py ingest_rst_sphinx.py files, they will be deprecated soon) -* All new code should be covered with unit tests ([pytest](https://github.com/pytest-dev/pytest)). Please find tests under [/tests](https://github.com/arc53/DocsGPT/tree/main/tests) folder. -* Before submitting your PR make sure that after you ingested some test data it is queryable. +### If you are looking to contribute to Backend (๐Ÿ Python): +- Check out our issues and contribute to `/application` or `/scripts` (ignore old `ingest_rst.py` `ingest_rst_sphinx.py` files; they will be deprecated soon). +- All new code should be covered with unit tests ([pytest](https://github.com/pytest-dev/pytest)). Please find tests under [`/tests`](https://github.com/arc53/DocsGPT/tree/main/tests) folder. +- Before submitting your PR, ensure it is queryable after ingesting some test data. ### Testing -To run unit tests, from the root of the repository execute: + +To run unit tests from the root of the repository, execute: ``` python -m pytest ``` ### Workflow: -Create a fork, make changes on your forked repository, and submit changes in the form of a pull request. +Create a fork, make changes on your forked repository, and submit changes as a pull request. ## Questions/collaboration -Please join our [Discord](https://discord.gg/n5BX8dh8rU) don't hesitate, we are very friendly and welcoming to new contributors. +Please join our [Discord](https://discord.gg/n5BX8dh8rU). Don't hesitate; we are very friendly and welcoming to new contributors. # Thank you so much for considering contributing to DocsGPT!๐Ÿ™ From e21e4d2b16b41240bbeb1cc1b5cfd70253dbf38a Mon Sep 17 00:00:00 2001 From: Adhiraj Date: Fri, 6 Oct 2023 02:05:11 +0530 Subject: [PATCH 3/3] Update README.md --- README.md | 66 ++++++++++++++++++++++++++----------------------------- 1 file changed, 31 insertions(+), 35 deletions(-) diff --git a/README.md b/README.md index aba1401f6..98958c8d6 100644 --- a/README.md +++ b/README.md @@ -18,14 +18,12 @@ Say goodbye to time-consuming manual searches, and let DocsGPT ![example2](https://img.shields.io/github/forks/arc53/docsgpt?style=social) ![example3](https://img.shields.io/github/license/arc53/docsgpt) ![example3](https://img.shields.io/discord/1070046503302877216) - - - + ### Production Support/ Help for companies: -When deploying your DocsGPT to a live environment, we're eager to provide personalized assistance. +We're eager to provide personalized assistance when deploying your DocsGPT to a live environment. - [Schedule Demo ๐Ÿ‘‹](https://cal.com/arc53/docsgpt-demo-b2b?date=2023-10-04&month=2023-10) - [Send Email โœ‰๏ธ](mailto:contact@arc53.com?subject=DocsGPT%20support%2Fsolutions) @@ -36,9 +34,9 @@ When deploying your DocsGPT to a live environment, we're eager to provide person ## Roadmap -You can find our [Roadmap](https://github.com/orgs/arc53/projects/2) here. Please don't hesitate to contribute or create issues, it helps us make DocsGPT better! +You can find our roadmap [here](https://github.com/orgs/arc53/projects/2). Please don't hesitate to contribute or create issues, it helps us improve DocsGPT! -## Our Open-Source models optimised for DocsGPT: +## Our Open-Source models optimized for DocsGPT: | Name | Base Model | Requirements (or similar) | |-------------------|------------|----------------------------------------------------------| @@ -47,7 +45,7 @@ You can find our [Roadmap](https://github.com/orgs/arc53/projects/2) here. Pleas | [Docsgpt-40b-falcon](https://huggingface.co/Arc53/docsgpt-40b-falcon) | falcon-40b | 8xA10G gpu's | -If you don't have enough resources to run it you can use bitsnbytes to quantize +If you don't have enough resources to run it, you can use bitsnbytes to quantize. ## Features @@ -58,7 +56,7 @@ If you don't have enough resources to run it you can use bitsnbytes to quantize ## Useful links [Live preview](https://docsgpt.arc53.com/) - [Join Our Discord](https://discord.gg/n5BX8dh8rU) + [Join our Discord](https://discord.gg/n5BX8dh8rU) [Guides](https://docs.docsgpt.co.uk/) @@ -70,28 +68,28 @@ If you don't have enough resources to run it you can use bitsnbytes to quantize ## Project structure -- Application - Flask app (main application) +- Application - Flask app (main application). -- Extensions - Chrome extension +- Extensions - Chrome extension. -- Scripts - Script that creates similarity search index and store for other libraries. +- Scripts - Script that creates similarity search index and stores for other libraries. -- Frontend - Frontend uses Vite and React +- Frontend - Frontend uses Vite and React. ## QuickStart Note: Make sure you have Docker installed -On Mac OS or Linux just write: +On Mac OS or Linux, write: `./setup.sh` -It will install all the dependencies and give you an option to download local model or use OpenAI +It will install all the dependencies and allow you to download the local model or use OpenAI. -Otherwise refer to this Guide: +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 +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: ``` @@ -99,15 +97,15 @@ Otherwise refer to this Guide: 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/ +3. Run `./run-with-docker-compose.sh`. +4. Navigate to http://localhost:5173/. -To stop just run Ctrl + C +To stop, just run `Ctrl + C`. ## Development environments ### Spin up mongo and redis -For development only 2 containers are used from docker-compose.yaml (by deleting all services except for Redis and Mongo). +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](./docker-compose-dev.yaml). Run @@ -120,33 +118,32 @@ docker compose -f docker-compose-dev.yaml up -d Make sure you have Python 3.10 or 3.11 installed. -1. Export required environment variables or prep .env file in application folder -Prepare .env file -Copy `.env_sample` and create `.env` with your OpenAI API token for the API_KEY and EMBEDDINGS_KEY fields +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) -3. (optional) Create a Python virtual environment +(check out [`application/core/settings.py`](application/core/settings.py) if you want to see more config options.) + +2. (optional) Create a Python virtual environment: ```commandline python -m venv venv . venv/bin/activate ``` -4. Change to `application/` subdir and install dependencies for the backend +3. Change to the `application/` subdir and install dependencies for the backend: ```commandline pip install -r application/requirements.txt ``` -5. Run the app `flask run --host=0.0.0.0 --port=7091` -6. Start worker with `celery -A application.app.celery worker -l INFO` +4. Run the app using `flask run --host=0.0.0.0 --port=7091`. +5. 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 `/frontend` folder -2. Install dependencies -`npm install` -3. Run the app -`npm run dev` +1. Navigate to the `/frontend` folder. +2. Install dependencies by running `npm install`. +3. Run the app using `npm run dev`. -## All Thanks To Our Contributors +## Many Thanks To Our Contributors @@ -154,4 +151,3 @@ Make sure you have Node version 16 or higher. Built with [๐Ÿฆœ๏ธ๐Ÿ”— LangChain](https://github.com/hwchase17/langchain) -