Spaces:
Sleeping
Sleeping
keyush nisar commited on
Update README.md
Browse files
README.md
CHANGED
|
@@ -1,47 +1,119 @@
|
|
| 1 |
-
# Knowledge_forge
|
| 2 |
# KnowledgeForge
|
| 3 |
|
| 4 |
-
|
| 5 |
|
| 6 |
-
KnowledgeForge
|
| 7 |
|
| 8 |
-
-
|
| 9 |
|
| 10 |
-
|
| 11 |
-
|
| 12 |
-
|
| 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 |
-
##
|
| 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 |
+

|
| 6 |
|
| 7 |
+
*An AI-powered educational tool for content analysis and visualization*
|
| 8 |
|
| 9 |
+
[](https://www.python.org/)
|
| 10 |
+
[](https://aistudio.google.com/)
|
| 11 |
+
[](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>
|