TutorAI
![GitHub Workflow Status (with event)](https://img.shields.io/github/actions/workflow/status/SverreNystad/TutorAI/django.yml)
![GitHub top language](https://img.shields.io/github/languages/top/SverreNystad/TutorAI)
![GitHub language count](https://img.shields.io/github/languages/count/SverreNystad/TutorAI)
[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)
[![Project Version](https://img.shields.io/badge/version-1.0.0-blue)](https://img.shields.io/badge/version-1.0.0-blue)
π Table of contents
- [TutorAI](#tutorai)
- [Introduction](#introduction)
- [Features](#features)
- [Quick Start](#quick-start)
- [Prerequisites](#prerequisites)
- [Clone the repository](#clone-the-repository)
- [Configuration](#configuration)
- [Usage](#usage)
- [π Documentations](#-documentations)
- [Contributors](#contributors)
- [License](#license)
Introduction
TutorAI is an interactive language agent designed to assist with learning academic subjects. It facilitates efficient learning by allowing users to upload textbooks in various formats and interact with the course material.
Features
TutorAI offers a comprehensive set of features to enhance the learning experience:
- Document upload: Upload course material in various formats to enable TutorAI to process and interact with the content. Supported formats include PDF, DOC, DOCX, PNG, JPG, JPEG, PPM, TIFF, BMP, and more.
- Information search: Retrieve relevant citations and incorporate them into responses to user questions. This ensures comprehensive, accurate, and well-cited information, enhancing the learning process.
- Learning plans: Tailored to the user's pace, style, and goals, offering structured paths to mastery.
- Flashcards and Memory aids: Enhance memory retention with customizable digital flashcards, exportable to Anki and Quizlet.
- Quiz and test generation: Automatically generate quizzes and tests based on the uploaded material.
- Quiz and test grading: Receive automatic grading and feedback on quizzes and tests to track progress and identify improvement areas.
- Compendium: Generate a summary of the uploaded material, making it easier to review and understand the content.
- Study streaks: Motivate regular engagement with learning material through gamified elements, making education a daily habit, and exams passed easily.
Quick Start
Prerequisites
Clone the repository
git clone https://github.com/CogitoNTNU/TutorAI.git
cd TutorAI
Configuration
Create a .env
file in the root directory of the project and add the following environment variables:
OPENAI_API_KEY = 'your_openai_api_key'
MONGODB_URI = 'your_secret_key'
Optionally, you can add the following environment variables to customize the project:
GPT_MODEL = 'gpt-3.5-turbo' # OpenAI model to use
Usage
To start TutorAI, run the following command in the root directory of the project:
docker compose up --build
Then navigate to http://localhost:3000
in your browser to access the UI of the frontend.
To access the backend, navigate to http://localhost:8000
in your browser.
π Documentations
Contributors
This project would not have been possible without the hard work and dedication of all of the contributors. Thank you for the time and effort you have put into making TutorAI a reality.
License
Licensed under the MIT License.