![School of Code CoachBot.](/SchoolOfCode/bc16-final-projects-team-large-language-mavericks/raw/main/public/CoachBot_Banner.png)
CoachBot: your guide, your mentor, your learning companion; a transformative experience that goes beyond your regular chatbots. With insights, resources, and quizzes, it propels learners forward. Say farewell to shallow interactions. Our CoachBot: the catalyst for learning excellence.
Links · GPT Model Version · Creating a KV Database Instance · Notion Database · Running locally · Authors
- Live Demo : https://soc-llm.vercel.app/
- GitHub Repository : https://github.com/SchoolOfCode/bc16-final-projects-team-large-language-mavericks
- Project Presentation Video : https://www.youtube.com/watch?v=69QqHgv90Ss
- Presentation Slides : https://coachbot.my.canva.site/coachbot
This project uses OpenAI gpt-3.5-turbo
as the default but can be easily changed in the ./lib/chat/actions.tsx
file to a version of your choice.
To run this project, you will need to add the following environment variables to your .env file
To use OpenAI's API you must provide you own key
You must first activate a Billing Account here
Then get your OpenAI API Key here
Now you can update your OpenAI API key in your .env file as shown in the .env.example to send/receive responses from OpenAI
To use the Login and chat history functionality the relevent information is stored in a KV database by default.
Follow the steps outlined in the quick start guide provided by Vercel. This guide will assist you in creating and configuring your KV database instance on Vercel, enabling your application to interact with it.
Remember to update your environment variables
KV_URL=" "
KV_REST_API_URL=" "
KV_REST_API_TOKEN=" "
KV_REST_API_READ_ONLY_TOKEN=" "
in the .env
file with the appropriate credentials provided during the KV database setup.
This project retrevies information from a Notion database to give the LLM more context and information about the School of Code
For the Notion database to work without needing to change the system prompt you will need to use tags to identify the files in your database.
For the LLM to read your curriculum tag one file as curriculum
. The link to this should be a Notion document for the LLM to read.
To set up your Notion databse you will need to update your .env to contain both :
NOTION_API_DB_ID=" "
NOTION_API_KEY=" "
These can both be set up here
To get an API key you need to create an intergration as described here
Example for reference below :
You will need to use the environment variables defined in .env.example
to run the CoachBot.
Note: You should not commit your
.env
file or it will expose secrets that will allow others to control access to your various OpenAI and authentication provider accounts.
- GitHub Repository : https://github.com/SchoolOfCode/bc16-final-projects-team-large-language-mavericks
Clone the project
git clone https://github.com/SchoolOfCode/bc16-final-projects-team-large-language-mavericks.git
Go to the project directory
cd bc16-final-projects-team-large-language-mavericks
Install dependencies
npm install
or
pnpm install
Start the server
npm run dev
or
pnpm dev
Your app template should now be running on localhost:3000.
This School of Code project was built by the Large Language Mavericks:
@nashetty
@mrw46
@Ludwig-J
@yuliiastrizhalko
The CoachBot was built on a Next.js boilerplate using this library which was created by Vercel and Next.js team members, with contributions from: