Spaces:
Paused
title: Knowledge Net
emoji: 🔬
colorFrom: indigo
colorTo: red
sdk: docker
app_port: 3000
pinned: true
license: apache-2.0
short_description: Agentic Deep Research Workflow using Data Cascading
KnowledgeNet
KnowledgeNet is an AI-driven framework designed to automate the research process by collecting, processing, and presenting information from various online sources. It leverages advanced web crawling, natural language processing, and data visualization techniques to deliver comprehensive research insights.
Features
- Automated Web Crawling: Utilize Crawl4AI with Playwright for efficient data extraction.
- Natural Language Processing: Employ large language models (LLMs) for data analysis and summarization.
- Interactive Dashboard: Visualize research findings through an intuitive React/Next.js frontend.
- Scalability: Implement Celery with message brokers for distributed task management.
- Cloud Integration: Deploy using AWS services for robust and scalable infrastructure.
Architecture Overview
graph TD
User["User"] -->|Research Query| API_Gateway["AWS API Gateway"]
API_Gateway --> Lambda["AWS Lambda"]
Lambda --> SQS["AWS SQS (Task Queue)"]
SQS --> Celery["Celery Workers (Distributed Tasks)"]
Celery -->|Processes Tasks| DynamoDB["AWS DynamoDB"]
Celery -->|Uploads Files| S3["AWS S3 (File Storage)"]
Celery -->|Triggers Notifications| SNS["AWS SNS (Notifications)"]
Celery -->|Logs Metadata| CloudWatch["AWS CloudWatch"]
DynamoDB -->|Provides Data| Lambda
S3 -->|Serves Content| CloudFront["AWS CloudFront (CDN)"]
CloudFront -->|Delivers Content| User
CloudWatch --> DevOps["DevOps Monitoring"]
subgraph "AWS Infrastructure"
API_Gateway
Lambda
SQS
Celery
DynamoDB
S3
SNS
CloudWatch
CloudFront
end
Installation
Install UV - Package Manager (Recommended)
https://docs.astral.sh/uv/getting-started/installation/
Install Bun - Package Manager (Recommended)
Clone the repository
git clone https://github.com/sohamw03/knowledge_net.git cd knowledge_netBackend Setup:
Navigate to the backend directory:
cd backendCreate virtual environment and install dependencies:
uv syncActivate the virtual environment:
source .venv/bin/activate # For Linux/Mac .venv\Scripts\activate # For WindowsInstall playwright chromium:
playwright install chromium --with-depsAdd environment variables to
.envfile:cp .env.example .envFrontend Setup:
Navigate to the frontend directory:
cd ../frontendInstall the dependencies:
bun install --forceAdd environment variables to
.envfile:cp .env.example .env
Usage
Start the Backend:
Ensure you're in the backend directory and the virtual environment is activated.
Run the Flask-SocketIO asynchronous server:
uvicorn app:app --host 0.0.0.0 --port 5000Start the Frontend:
In a new terminal, navigate to the frontend directory.
Start the development server:
bun devAccess the Application:
Open your browser and navigate to
http://localhost:3000to interact with KnowledgeNet.
Contributing
We welcome contributions to enhance KnowledgeNet. To contribute:
Fork the repository.
Create a new branch:
git checkout -b feature/YourFeatureNameCommit your changes:
git commit -m 'Add some feature'Push to the branch:
git push origin feature/YourFeatureNameOpen a pull request detailing your changes.
License
This project is licensed under the Apache-2.0 License. See the LICENSE file for more details.