This project aims to provide a Django-React-based application for identifying and replacing patterns in CSV or Excel files. It leverages LLMs (Language Model Models) for natural language processing.
The frontend of this application is built using React, a popular JavaScript library for building user interfaces. It provides a responsive and interactive user interface that allows users to easily interact with the application. The frontend code can be found in the /frontend
directory.
The backend of this application is built using Django, a high-level Python web framework. It handles the business logic, data processing, and communication with the database. The backend code can be found in the /backend
directory.
- Pattern identification: The application uses advanced algorithms to identify patterns in CSV or Excel files, making it easier to analyze and manipulate data.
- Pattern replacement: Once patterns are identified, users can choose to replace them with desired values, streamlining data cleaning and transformation processes.
- Large File Support: Application supports large file uplaods.
- Django-React integration: The project combines the power of Django on the backend and React on the frontend, providing a seamless user experience.
- LLMs for NLP: Leveraging Language Model Models, the application can understand and process natural language, enhancing its pattern identification capabilities.
- Data Description and Dummy (Synthetic) Data: Leveraging LLMs, users can generate a short description of uploaded data along with a dummy data, that can be used for training or testing.
- Export Data: Export the modified and synthetic data as CSV or Excel files.
To run the application locally, follow these steps:
Remember to have your openai API key setup as "OPENAI_API_KEY" in system.
Frontend:
- Navigate to the frontend directory:
cd frontend
- Install the required dependencies:
npm install
- Start the frontend development server:
npm run dev
Backend:
- Navigate to the backend directory:
cd backend
- Create a virtual environment:
python -m venv venv
- Activate the virtual environment:
- On Windows:
venv\Scripts\activate
- On macOS and Linux:
source venv/bin/activate
- On Windows:
- Install the required dependencies:
pip install -r requirements.txt
- Set up the database:
python manage.py migrate
- Start the backend development server:
python manage.py runserver
Now you can access the application in your web browser at http://localhost:5173
(default port) and interact with the front and backend components.
To run the application using Docker Compose, follow these steps:
- Ensure you have Docker and Docker Compose installed on your machine.
- Create a
.env
file in the project's root directory and add your API key asOPENAI_API_KEY=your_api_key
. - Run the following command to start the application:
docker-compose up
Now you can access the application in your web browser at http://localhost:5173
and interact with the application.
- Access the application in your web browser at
http://localhost:5173
- Upload a CSV / Excel file and input a natural language instruction to find a pattern and replace it with a value.
- Review the uploaded data and identified patterns and choose to replace them if desired.
- Download the modified file with replaced patterns.
- [Optional] Generate data description and synthetic data using LLM.
Demo Video Link: Video Link
Contributions are welcome! If you'd like to contribute to this project, please follow these steps:
- Fork the repository.
- Create a new branch:
git checkout -b my-new-branch
- Make your changes and commit them:
git commit -am 'Add some feature'
- Push to the branch:
git push origin my-new-branch
- Submit a pull request.
This project is licensed under the MIT License. See the LICENSE file for more information.