Insight Backend is the server-side component of the Insight machine learning web application. It provides a RESTful API for dataset management, model training, and prediction.
To get started with Insight Backend, you'll need to clone this repository to your local machine and install its dependencies. Here's how to do that:
- Clone the repository:
git clone https://github.com/SandeepK1729/insight-backend.git
- Install dependencies:
pip install -r requirements.txt
- Create .env file in Insight directory:
SECRET_KEY=<your-secret-key>
- Change DATABASES in Insight/settings.py to LOCAL_DATABASE
- Run migrations:
python manage.py migrate
- Start the server:
python manage.py runserver
Insight Backend provides a number of API endpoints for dataset management, model training, and prediction.
Request | Route | Action |
---|---|---|
POST | /api/register |
Create a new user account |
POST | /api/login |
Log in to an existing account |
POST | /api/logout |
Log out of an existing account |
GET | /api/user |
Get info of current user |
PUT | /api/user |
Modifies current user |
DELETE | /api/user |
Delete current user account |
PATCH | /api/user |
Change password of current user |
POST | /api/user/api_key |
Generate new API key for user |
Request | Route | Action |
---|---|---|
GET | /api/models |
Get all saved models |
POST | /api/models |
Prediction from model |
GET | /api/model/<int:model_id> |
Get info of specific saved model |
PUT | /api/model/<int:model_id> |
train the specific saved model |
PATCH | /api/model/<int:model_id> |
Modifies the specific saved model |
DELETE | /api/model/<int:model_id> |
Delete specific saved model |
POST | /api/model/<int:model_id> |
Prediction from specific model |
To use Insight, you'll need to make requests to these endpoints using a client such as axios or fetch. You can also use the provided frontend application, which is available in the insight-frontend repository.
Insight Backend currently supports the following machine learning algorithms:
-
Regression
- Linear Regression
- Polynomial Regression
- Support Vector Regression
- Decision Tree Regression
- Random Forest Regression
-
Classification
- Logistic Regression
- K-Nearest Neighbors
- Support Vector Machine
- Naive Bayes
- Decision Tree Classification
- Random Forest Classification
-
Ensemble
- AdaBoost
- Gradient Boosting
If you'd like to contribute to Insight Backend, you can fork the repository and submit a pull request with your changes. Please make sure that your changes are well-documented and tested before submitting a pull request.
Insight Backend was built using the following technologies:
- Python
- Django
- Django REST Framework
Insight Backend is released under the MIT License. Feel free to use, modify, and distribute the code however you like.
- add report generation in specific model file put i.e, training process
Back