This is a powerful and easy-to-use AI web application that lets users:
- Upload a dataset
- Choose between Classification or Clustering
- Train models automatically
- Download reports and predictions
- Ask questions about the data using AI-powered Q&A (RAG + LoRA)
Built with custom machine learning models, optimized for deployment on AWS, and a clean UI.
- Automatically finds the best number of clusters (Elbow & Silhouette methods)
- Supports K-Means and Agglomerative Clustering
- PCA visualization for easy understanding
- Creates and downloads a PDF report + CSV results
- Users can choose from four custom-built models:
- Naive Bayes
- Decision Tree
- Random Forest
- Logistic Regression (with automatic hyperparameter tuning when user selects best model)
- Or, let the system automatically select the best model based on ROC-AUC
- After training:
- Download the trained model
- View and download log records
- Download a full training report
- Ask the AI about prediction results via the Q&A system (CSV does not include direct predictions)
- Ask questions about your uploaded dataset and model results
- Uses Retrieval-Augmented Generation (RAG) with TinyLlama
- Fine-tuned on your data using LoRA (Low-Rank Adaptation)
- Fast retrieval with ChromaDB
Area | Tools & Technologies |
---|---|
Backend | Flask, PyTorch, LangChain, Transformers |
Frontend | HTML, JavaScript |
ML Models | Custom Naive Bayes, Decision Tree, etc. |
LLM | TinyLlama + LoRA |
Vector Store | ChromaDB |
Deployment | Docker, AWS EC2, S3 |
CI/CD | Crontab (checks Github for updates hourly) |
Here's a simplified view of the system flow:
User → Web UI (Flask) → Model Selector → ML Training/Prediction
↓ ↓
AI Q&A (RAG) S3: Model, Logs, Results
↓
TinyLlama + LoRA
project/
├── src/
│ ├── app.py # Main Flask application
│ ├── lora_train.py # LoRA fine-tuning on TinyLlama
│ ├── rag_index.py # Embedding & indexing for RAG
│ ├── rag_qa.py # RAG-based QA interface
│ ├── utils/ # Helper modules and shared functions
│ └── models/
│ ├── classification_main.py # Full classification workflow
│ ├── classification_model.py # All classification model implementations
│ ├── clustering_main.py # Full clustering workflow
│ └── clustering_model.py # All clustering model implementations
├── templates/
│ └── index.html # Frontend UI (Form, Chat interface)
├── static/ # CSS and JavaScript files
├── models/ # Trained models (saved to S3)
├── logs/ # Log files (viewable/downloadable)
├── requirements.txt # Python dependencies
└── README.md
namdarine - No-Code AI Engineer
🚀 Live App: https://automlplatform.tech/
🧑💻 Portfolio: https://namdarine.github.io
✍️ Blog (Medium): https://medium.com/@namdarine
I'm currently building and sharing insights about no-code AI systems and automation.
Passionate about making AI more accessible, and empowering users to build AI without writing code.
I believe that AI should be created, understood, and used by everyone - not just engineers.
This project is part of my mission to break down the barrier between people and AI by providing a no-code, accessible platform.
It reflects my core belief:
"AI should not be something controlled by a few.
It should be a tool that anyone can create with, lead, and understand."
🧠 Philosophy: "AI belongs to everyone."
💡 Mission: "Empowering AI Without Code." / "Making AI More Accessible."
This belief drives the brand identity behind namdarine and my long-term goal to design a future where AI is truly a digital right, not a technical privilege.
This project is licensed under the MIT License.
See the LICENSE file for details.