keyush nisar commited on
Commit
75e4ede
Β·
unverified Β·
1 Parent(s): c869a72

Update README.md

Browse files
Files changed (1) hide show
  1. README.md +98 -26
README.md CHANGED
@@ -1,47 +1,119 @@
1
- # Knowledge_forge
2
  # KnowledgeForge
3
 
4
- *An AI-powered educational tool for content analysis and visualization.*
5
 
6
- KnowledgeForge is a Retrieval-Augmented Generation (RAG) application that empowers users to extract, analyze, and interact with knowledge from diverse sources like web pages, YouTube videos, and custom text. Featuring a modern frontend with Three.js 3D particles and glassmorphism design, it integrates a Flask backend with FAISS for vector search and Google’s Gemini API for natural language processing. Whether you’re summarizing articles, generating mock tests, or visualizing concepts with mind maps and flowcharts, KnowledgeForge is your all-in-one learning companion.
7
 
8
- ---
9
 
10
- ## Features
11
- - **Content Ingestion**: Extract text from web URLs, YouTube videos (transcripts + page content), and user-provided text.
12
- - **Question Answering**: Ask questions based on ingested content with context-aware responses.
13
- - **Summarization**: Generate concise summaries of your content.
14
- - **Mock Tests**: Create multiple-choice tests on specific topics.
15
- - **Visualizations**: Produce mind maps and flowcharts using Graphviz.
16
- - **Stunning UI**: 3D particle background with Three.js and glassmorphism design for an immersive experience.
17
- - **Scalable Backend**: Built with Flask, FAISS for efficient vector retrieval, and Gemini for generation.
18
 
19
- ---
20
 
21
- ## Tech Stack
22
- - **Frontend**: HTML, CSS, JavaScript, Three.js
23
- - **Backend**: Flask (Python), Flask-CORS
24
- - **AI/ML**: SentenceTransformers (all-MiniLM-L6-v2), FAISS, Google Gemini API
25
- - **Crawling**: Selenium, Crawl4AI, YouTube Transcript API
26
- - **Visualization**: Graphviz
27
- - **Dependencies**: Playwright, BeautifulSoup4
28
 
29
- ---
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
30
 
31
- ## Prerequisites
32
  - Python 3.11+
33
  - Google Gemini API Key (sign up at [Google AI Studio](https://aistudio.google.com/))
34
  - Chrome browser (for Selenium compatibility)
35
  - Git
36
 
37
- ---
38
-
39
- ## Setup Instructions
40
 
41
- ### 1. Clone the Repository
42
  ```bash
 
43
  git clone https://github.com/nisaral/knowledge_forge.git
44
  cd knowledge_forge
45
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
46
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
47
 
 
 
 
 
 
1
  # KnowledgeForge
2
 
3
+ <div align="center">
4
 
5
+ ![KnowledgeForge Logo](https://img.shields.io/badge/KnowledgeForge-AI%20Learning%20Companion-blue?style=for-the-badge)
6
 
7
+ *An AI-powered educational tool for content analysis and visualization*
8
 
9
+ [![Python](https://img.shields.io/badge/Python-3.11+-blue.svg)](https://www.python.org/)
10
+ [![Gemini API](https://img.shields.io/badge/Gemini-API-orange.svg)](https://aistudio.google.com/)
11
+ [![License](https://img.shields.io/badge/License-MIT-green.svg)](LICENSE)
 
 
 
 
 
12
 
13
+ </div>
14
 
15
+ ## πŸ” Overview
 
 
 
 
 
 
16
 
17
+ KnowledgeForge is a Retrieval-Augmented Generation (RAG) application that empowers users to extract, analyze, and interact with knowledge from diverse sources like web pages, YouTube videos, and custom text.
18
+
19
+ Featuring a modern frontend with Three.js 3D particles and glassmorphism design, it integrates a Flask backend with FAISS for vector search and Google's Gemini API for natural language processing. Whether you're summarizing articles, generating mock tests, or visualizing concepts with mind maps and flowcharts, KnowledgeForge is your all-in-one learning companion.
20
+
21
+ ## ✨ Features
22
+
23
+ - **🌐 Content Ingestion**: Extract text from web URLs, YouTube videos (transcripts + page content), and user-provided text
24
+ - **❓ Question Answering**: Ask questions based on ingested content with context-aware responses
25
+ - **πŸ“ Summarization**: Generate concise summaries of your content
26
+ - **πŸ“š Mock Tests**: Create multiple-choice tests on specific topics
27
+ - **🧠 Visualizations**: Produce mind maps and flowcharts using Graphviz
28
+ - **🎨 Stunning UI**: 3D particle background with Three.js and glassmorphism design for an immersive experience
29
+ - **⚑ Scalable Backend**: Built with Flask, FAISS for efficient vector retrieval, and Gemini for generation
30
+
31
+ ## πŸ› οΈ Tech Stack
32
+
33
+ | Category | Technologies |
34
+ |----------|--------------|
35
+ | **Frontend** | HTML, CSS, JavaScript, Three.js |
36
+ | **Backend** | Flask (Python), Flask-CORS |
37
+ | **AI/ML** | SentenceTransformers (all-MiniLM-L6-v2), FAISS, Google Gemini API |
38
+ | **Crawling** | Selenium, Crawl4AI, YouTube Transcript API |
39
+ | **Visualization** | Graphviz |
40
+ | **Dependencies** | Playwright, BeautifulSoup4 |
41
+
42
+ ## πŸ“‹ Prerequisites
43
 
 
44
  - Python 3.11+
45
  - Google Gemini API Key (sign up at [Google AI Studio](https://aistudio.google.com/))
46
  - Chrome browser (for Selenium compatibility)
47
  - Git
48
 
49
+ ## πŸš€ Installation
 
 
50
 
 
51
  ```bash
52
+ # Clone the repository
53
  git clone https://github.com/nisaral/knowledge_forge.git
54
  cd knowledge_forge
55
 
56
+ # Create a virtual environment
57
+ python -m venv venv
58
+
59
+ # Activate the virtual environment
60
+ # For Windows
61
+ venv\Scripts\activate
62
+ # For macOS/Linux
63
+ source venv/bin/activate
64
+
65
+ # Install dependencies
66
+ pip install -r requirements.txt
67
+
68
+ # Set up your Gemini API key
69
+ # Create a .env file and add: GEMINI_API_KEY=your_api_key_here
70
 
71
+ # Run the application
72
+ python app.py
73
+ ```
74
+
75
+ ## πŸ“Š Usage
76
+
77
+ ### Add Content
78
+ - Use the **Web URL** tab to input a webpage URL
79
+ - Use the **YouTube** tab for video URLs (transcripts + metadata)
80
+ - Use the **Custom Text** tab to paste your own text
81
+
82
+ ### Interact
83
+ - **Ask Questions**: Type a question and optionally select a source
84
+ - **Summarize**: Generate a summary of all or specific content
85
+ - **Mock Test**: Create a test by entering a topic
86
+ - **Mind Map/Flowchart**: Visualize concepts with a topic input
87
+ - **Clear Data**: Reset the session using the "Clear Data" button
88
+
89
+ ## πŸ“· Screenshots
90
+
91
+ <div align="center">
92
+ <em>Screenshots coming soon!</em>
93
+ </div>
94
+
95
+ ## 🀝 Contributing
96
+
97
+ Contributions are welcome! Please feel free to submit a Pull Request.
98
+
99
+ 1. Fork the repository
100
+ 2. Create your feature branch (`git checkout -b feature/amazing-feature`)
101
+ 3. Commit your changes (`git commit -m 'Add some amazing feature'`)
102
+ 4. Push to the branch (`git push origin feature/amazing-feature`)
103
+ 5. Open a Pull Request
104
+
105
+ ## πŸ“œ License
106
+
107
+ This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.
108
+
109
+ ## πŸ™ Acknowledgements
110
+
111
+ - [Google Gemini API](https://aistudio.google.com/) for powerful AI capabilities
112
+ - [Three.js](https://threejs.org/) for the immersive 3D background
113
+ - [FAISS](https://github.com/facebookresearch/faiss) for efficient vector search
114
+
115
+ ---
116
 
117
+ <div align="center">
118
+ <sub>Built with ❀️ by the KnowledgeForge team</sub>
119
+ </div>