The tool is a chatbot receiving applications for a job. It asks the prescreening questions defined by the recruiter. It also parses and memorizes the company documents to answer questions from the candidate. If the chatbot does not know the answer it emails the question to the recruiter.
The answers of the candidates are stored in a Google Sheet file.
The users can self-deploy the backend to Vercel.
Company documents are stored in Upstash Vector.
Chat history is stored in Upstash Redis.
The users need to provide a JSON to configure the chatbot. (job-config.json)
Feel free to create issues on the repository.
- Create an Upstash Vector Index.
- Create an Upstash Redis Database.
- Get an OpenAI API Key.
- Get an email address and a password. (Provide the email address, password, and email service type while creating the .env file.)
- Create a Google service account and enable Google Sheets and Google Drive API. (Provide service account email to GOOGLE_CLIENT_EMAIL and private key to GOOGLE_PRIVATE_KEY while creating the .env file.)
- Fill and upload the job-config.json file to Google Drive.
- Create a folder on Google Drive to receive uploaded CVs.
- Create a Google Sheets document to store applicant answers
To install the project on your local device in order to make changes or run it, you can follow these steps:
- Install the source code to your device
git clone [email protected]:upstash/QuickApply.git
- Go to the project folder
cd QuickApply
- Install
next
if not installed already
npm install next
- Create a
.env
file and fill it with your API keys.
# .env
UPSTASH_REDIS_REST_URL="..."
UPSTASH_REDIS_REST_TOKEN="..."
OPEN_AI_API_KEY="..."
UPSTASH_VECTOR_REST_URL="..."
UPSTASH_VECTOR_REST_TOKEN="..."
EMAIL="..."
EMAIL_PASSWORD="..."
EMAIL_SERVICE="gmail"
GOOGLE_PRIVATE_KEY="..."
GOOGLE_CLIENT_EMAIL="..."
GOOGLE_SHEET_ID="..."
GOOGLE_DRIVE_ID="..."
MODEL_NAME="..."
CONFIG_FILE_ID="..."
- Run the project
npm run dev
- Go to
https://localhost:3000/
Once you run the program, you will be greeted by the AI-powered assistant's welcome message.
After answering the assistant's questions, it will ask you to upload your CV.
When you upload your CV, it will allow you to ask questions about the job.
The applicant must indicate he or she has no further questions to the assistant to finish the application process and save the application.
You can deploy to project using the Vercel Platform from the creators of Next.js using the button below.