Domain-Specific ChatGPT Platform.
Jarvis is a cutting-edge platform that integrates ChatGPT with domain-specific knowledge. By vectorizing vast amounts of domain knowledge, Jarvis allows users to utilize GPT in context with domain-specific information. Furthermore, with the power of fine-tuning, Jarvis offers a more customized GPT experience tailored to the specific needs of its users.
- Domain Knowledge Utilization:
Langchain
/Openai
- Vectorestore / Database:
Redis
- WSS server / API server:
Fastapi
/Nginx
- For Report: Report Jupyter Notebook Repo
- Domain Knowledge Integration: Jarvis transforms extensive domain knowledge into vectorstore, enabling GPT to operate within a specific domain context.
- Customizable GPT: Through fine-tuning, users can have a GPT experience that is more aligned with their specific requirements.
- Chatbot Service: Designed with use-cases such as onboarding part-time staff for solo entrepreneurs and facilitating conversations with book authors.
- Report Generation: Using the user's chat conversation history as input, Jarvis allows users to select a topic of interest. It then provides an in-depth report, analyzing the topic across 3-4 subtopics.
-
Chatbot: Ideal for scenarios like assisting self-employed individuals in onboarding part-time workers or enabling conversations with book authors.
-
Report Writing: Users can input their existing chat conversation history, and upon selecting a desired topic, Jarvis will generate a comprehensive report, breaking down the topic into 3-4 detailed subtopics.
$ poetry init
$ poetry env use python3.8
$ poetry add langchain faiss-cpu
$ poetry config virtualenvs.in-project true
$ poetry config virtualenvs.path "./.venv"
$ make up
$ make prod-down && make deploy
# ssh
$ make ssh
-
Preparation:
- Install
gcloud-cli
: Official Installation Guide
- Install
-
VM Deployment:
- Execute the script to deploy the VM:
$ ./gcp_vm.sh tidy-amplifier-387210 asia-northeast3-a e2-standard-4 jarvis-ins
- Execute the script to deploy the VM:
-
DNS & IP Configuration:
- Configure Google Cloud DNS and set a fixed IP:
-
Nameserver & IP Settings:
- to set the Nameserver and IP from 가비아.
-
VM Initialization:
$ ./init_vm.sh
-
SSL Configuration:
- Modify
./data/nginx/app.conf
by commenting out the HTTPS section. This is essential for generating the.pem
file using thelets encrypt
script. ⚠️ Note: If you skip this step, nginx might not find the SSL and won't run, leading to aconnection refused error
.
- Modify
-
SSL Certificate Initialization:
$ ./init-letsencrypt.sh
-
Revert SSL Configuration:
- Restore the original settings of
./data/nginx/app.conf
.
- Restore the original settings of
-
Environment Setup & Deployment:
$ vim .env && make deploy