vishalshelke commited on
Commit
c239d5d
·
verified ·
1 Parent(s): 6313e60

Update README.md

Browse files
Files changed (1) hide show
  1. README.md +93 -1
README.md CHANGED
@@ -13,4 +13,96 @@ sdk_version: 5.33.1
13
  title: AI tutor
14
  sdk: gradio
15
  app_file: main.py
16
- pinned: false
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
13
  title: AI tutor
14
  sdk: gradio
15
  app_file: main.py
16
+ pinned: false
17
+
18
+
19
+
20
+ # AI Tutor Application
21
+
22
+ ## Overview
23
+ The AI Tutor Application is an advanced tool designed to transform documents (e.g., PDFs) or user queries into interactive and structured lectures. Equipped with cutting-edge AI capabilities, this application provides voice narration, retrieval-augmented generation (RAG) chatbot functionality, and PDF generation for educational purposes.
24
+
25
+ ## Features
26
+
27
+ ### 1. **Lecture Generation**
28
+ - Converts PDF content or user-provided queries into structured lectures.
29
+ - Generates detailed outlines, sections, and content tailored to the user's learning objectives.
30
+ - Supports multiple styles (e.g., academic, casual) and includes examples if requested.
31
+
32
+ ### 2. **Voice Narration**
33
+ - Synthesizes lecture content into audio using text-to-speech (TTS) technology.
34
+ - Offers multiple voice options to suit user preferences.
35
+
36
+ ### 3. **RAG Chatbot**
37
+ - Provides a chatbot powered by Retrieval-Augmented Generation (RAG) to answer questions based on lecture or PDF content.
38
+ - Maintains session memory for personalized interactions.
39
+
40
+ ### 4. **PDF Processing**
41
+ - Extracts and processes text from PDF files.
42
+ - Supports metadata extraction and text cleaning for better analysis.
43
+
44
+ ### 5. **Interactive Gradio Interface**
45
+ - User-friendly interface for uploading documents, generating lectures, and interacting with the chatbot.
46
+ - Allows users to download generated lectures as PDFs or audio files.
47
+
48
+ ### 6. **Customizable Learning Objectives**
49
+ - Users can specify learning objectives to tailor the lecture content.
50
+ - AI analyzes objectives to create relevant and engaging content.
51
+
52
+ ## How It Works
53
+ 1. **Input**: Upload a PDF document or provide a query/learning objective.
54
+ 2. **Processing**: The application analyzes the input, generates a structured lecture, and optionally synthesizes audio.
55
+ 3. **Output**: Download the lecture as a PDF or listen to the audio narration.
56
+
57
+ ## Installation
58
+ 1. Clone the repository:
59
+ ```bash
60
+ git clone <repository-url>
61
+ ```
62
+ 2. Navigate to the project directory:
63
+ ```bash
64
+ cd PDFLectureMaster
65
+ ```
66
+ 3. Install dependencies:
67
+ ```bash
68
+ pip install -r requirements.txt
69
+ ```
70
+
71
+ ## Usage
72
+ 1. Start the Gradio interface:
73
+ ```bash
74
+ python main.py
75
+ ```
76
+ 2. Open the provided URL in your browser.
77
+ 3. Upload a PDF or enter a query to generate a lecture.
78
+
79
+ ## Project Structure
80
+ - `main.py`: Entry point for the Gradio application.
81
+ - `app/`: Contains the core modules for lecture generation, chatbot, PDF processing, and more.
82
+ - `lecture_generator.py`: Handles lecture creation.
83
+ - `voice_synthesizer.py`: Converts text to speech.
84
+ - `rag_system.py`: Implements the RAG chatbot.
85
+ - `pdf_processor.py`: Extracts and processes PDF content.
86
+ - `gradio_interface.py`: Defines the Gradio interface.
87
+
88
+ ## Requirements
89
+ - Python 3.11 or higher
90
+ - OpenAI API key (set in `.env` file)
91
+
92
+ ## Environment Variables
93
+ Create a `.env` file in the project root and add the following:
94
+ ```env
95
+ OPENAI_API_KEY=<your_openai_api_key>
96
+ ```
97
+
98
+ ## License
99
+ This project is licensed under the MIT License. See the LICENSE file for details.
100
+
101
+ ## Acknowledgments
102
+ - [OpenAI](https://openai.com/) for GPT-based models.
103
+ - [Gradio](https://gradio.app/) for the interactive interface.
104
+ - [ReportLab](https://www.reportlab.com/) for PDF generation.
105
+
106
+ ---
107
+
108
+ *This project was developed to make learning more interactive and accessible by leveraging AI technologies.*