Introduction
DocsGPT is a smart AI assistant to aid all of your technical documentation needs. You can directly communicate with it through a chat interface and it will provide you with the required solution by going through the technical documentation of a given product on its own.
In this tutorial, you will learn how to self-host an instance of DocsGPT on a DigitalOcean cloud instance called Droplet.
Initiating DigitalOcean Droplet
DigitalOcean is a famous cloud provider that provides affordable cloud solutions to its consumers. You will now deploy a cloud VM instance called Droplet on the DigitalOcean platform. Follow the steps below to create a Droplet easily.
Step 1: Log in to your DigitalOcean account to open your user dashboard. If you don't have an account yet, simply create one here. You can claim free credits worth $200 valid for 60 days to try the platform seamlessly.
Step 2: Once you are in the user dashboard, click on Droplets
in the left navigation panel and then click on the Create Droplet
button. This should take you to the new Droplet configuration wizard.
Step 3: On this page, you need to define the configuration for your cloud instance. You can define the configuration as per your needs but feel free to use the configuration given below to complete this tutorial.
- Choose Region: Choose the region closest to you to minimize latency.
- Datacenter: Leave it at default. If there are multiple options available for your region, then select the data center that falls closer to your geographic location.
- VPC Network: This is set to default.
-
Choose an image: Click on the
OS
tab and then selectUbuntu
. - Version: 22.04 (LTS) x64 (You can also go for the latest 23.10 x64 version)
-
Choose Size: Select the sub-options as follows.
- Droplet Type: Basic (Plan Selected)
- CPU Options: Regular [Disk Type: SSD]
- Plans: $24/mo (4GB / 2 CPUs, 80GB SSD Disk, 4 TB Transfer)
- Additional Storage: Leave it as it is.
-
Choose Authentication Method: Select Password
- Create root password: Provide a password for your root user.
- Recommended Options: Leave it as it is as we don't have any extra configuration required for this tutorial.
-
Finalize Details: Use the sub-options as follows.
- Quantity: 1 Droplet
- Hostname: docsgpt-demo (You can provide any name.)
- Tags: Leave it blank.
-
Project: Select
Demo
or youremail
from the dropdown.
Now click on the Create Droplet
button to start provisioning the VM.
Step 4: It will take some time for the instance to be up and running. Wait until the loading bar completes in the following screen and you see a green dot beside the Droplet name that confirms its running status.
Step 5: Now click on the droplet name i.e., docsgpt-demo
and then click on Console
on the next screen to log in to your Droplet. This will open a new terminal window.
You are now ready to proceed with the installation of DocsGPT on your Droplet.
Deploying DocsGPT
Now you need to follow the steps given below to successfully deploy DocsGPT on your cloud instance.
Step 1: Clone the DocsGPT repository to your instance. Use the command given below to do so.
git clone https://github.com/arc53/DocsGPT.git
Step 2: Update the package indexes of your Ubuntu system with the command given below.
sudo apt update
Step 3: DocsGPT needs containerization tools like docker
and docker-compose
to run. You can install them with the commands given below. Press Y
when prompted to proceed with the installation.
sudo apt install docker docker-compose
Step 4: The .env
variables for DocsGPT need to be set. You can do so by going to the DocsGPT folder and adding a .env
file.
cd DocsGPT/
nano .env
Save the following values in the .env
file.
LLM_NAME=DocsGPT-7b (You can choose any available LLM under DocsGPT)
API_KEY= <Your OpenAI API key>
VITE_API_STREAMING= true
You can exit the Nano editor by using Ctrl + X
and then hitting Y
followed by Enter
.
Step 5: DocsGPT's front end needs to connect and communicate with its backend properly for its work. To do this, you need to edit the docker-compose.yaml
file so that it points to the correct IP address of the backend. Use the command below to edit the file.
nano docker-compose.yaml
Find Line 7 in the editor and edit the VITE_API_HOST
parameter. It should use the public IPv4 of your Droplet.
VITE_API_HOST=http://<Droplet Public IPv4>:7091
You can find the Publiv IPv4 of the Droplet on the Droplet details page.
Now save the changes and exit the editor.
Step 6: You are now ready to run DocsGPT on your Droplet with the command given below. Remember that the initial startup time will be a bit longer as it requires downloading all the necessary dependencies and then building the app.
sudo docker-compose up -d
Once you see the done
status of a list of DocsGPT jobs in the terminal, you're good to work with it on your Droplet.
Working with DocsGPT
You can now access DocsGPT by visiting the following URL.
http://<Public Droplet IPv4:5173>
When you open this URL for the first time, you will need to choose a source documentation. Select default
and click on Save
to test the deployment.
You can now ask generic questions about DocsGPT and it will provide you with the relevant answers.
You: What is DocsGPT?
DocsGPT: DocsGPT is an AI-powered language model developed using OpenAI's GPT (Generative Pre-trained Transformer) architecture. It is designed specifically to assist users in composing and editing documents. DocsGPT can help generate text in various formats, such as essays, code snippets, technical documentation, and more. It understands natural language commands and provides informative responses to user queries. Through its conversational interface, DocsGPT can assist with a wide range of document-related tasks, including content generation, formatting, organization, and more.
Your DocsGPT deployment is now ready to help you with any technical documentation needs.
Conclusion
DocsGPT can be a great asset to save time by eliminating the need to manually search across docs to seek answers. The team behind this is working continuously to bring more features and upgrade the user experience. You also have the option to try their cloud version directly if you don't wish to host it by yourself.
The community is always welcome to try it out and provide their valuable feedback or suggest additional features by joining their Discord.
Lastly, before you leave, feel free to drop a Like if you loved reading this article, and don't forget to share it with your peers.
Top comments (0)