Project GenieCart is an AI-driven e-commerce tool designed to streamline product data management and categorization. It leverages advanced machine learning models and AI agents to automate data analysis, filtering, and organization.
For detailed information about the project, please refer to the project proposal:
📄 GenieCart Documentation
- AI Integration: Utilizes cutting-edge AI models for product filtering and analysis.
- Automated Data Conversion: Converts JSON product data into structured CSV formats.
- E-commerce Optimization: Enhances the accuracy and efficiency of product categorization.
- Frontend and Backend Support: Modular structure for extensibility and scalability.
To fully utilize GenieCart, the following secrets need to be configured in the .env file:
GEMINI_API_KEY=your_gemini_api_key
GEMINI_API_KEY_1=your_gemini_api_key_1
GEMINI_API_KEY_2=your_gemini_api_key_2
GEMINI_API_KEY_3=your_gemini_api_key_3
GEMINI_API_KEY_4=your_gemini_api_key_4
GEMINI_API_KEY_5=your_gemini_api_key_5
TAVILY_API_KEY=your_tavily_api_key
OPENAI_API_KEY=your_openai_api_key
USER_AGENT=your_user_agent_string
DB_credentials=your_db_credentials(run the db dump in the root to create a local database)
SMTP server credentials=your_smtp_server_credentials(for sending emails)
Project_GenieCart/
├── AI_Agents/ # AI-driven components for decision-making and filtering
├── Final_products/ # JSON data files for products
├── ML-model/ # Machine learning models and scripts
├── frontend/ # Frontend code for user interaction
├── machine_platform_user_profile/ # User profile management
├── products.csv # Consolidated product data in CSV format
├── .gitignore # Git ignore file
└── README.md # Project documentation
- Python 3.8+
- Node.js (for frontend functionality)
- API Keys as listed in the Secrets Configuration section
- Clone the repository:
git clone https://github.com/Cognic-AI/Project_GenieCart.git
- Install Python dependencies:
pip install -r requirements.txt
- Configure the secrets in
.env:echo "GEMINI_API_KEY=your_api_key_here" >> .env echo "GEMINI_API_KEY_1=your_api_key_here" >> .env echo "GEMINI_API_KEY_2=your_api_key_here" >> .env echo "GEMINI_API_KEY_3=your_api_key_here" >> .env echo "GEMINI_API_KEY_4=your_api_key_here" >> .env echo "GEMINI_API_KEY_5=your_api_key_here" >> .env echo "TAVILY_API_KEY=your_api_key_here" >> .env echo "OPENAI_API_KEY=your_api_key_here" >> .env echo "USER_AGENT=your_web_browser_user_agent_here" >> .env echo "PRODUCT_CSV=product.csv" >> .env echo "DB_HOST=your_db_host_here" >> .env echo "DB_USER=your_db_user_here" >> .env echo "DB_PASSWORD=your_db_password_here" >> .env echo "DB_NAME=your_db_name_here" >> .env echo "DB_PORT=your_db_port_here" >> .env echo "SMTP_USER=your_smtp_user_here" >> .env echo "SMTP_PASSWORD=your_smtp_password_here" >> .env echo "SMTP_SERVER_HOST=your_smtp_server_here" >> .env
python "Machine_Customer_Endpoint.py"Navigate to the frontend directory and start the development server:
cd frontend
npm install
npm run devemail: [email protected]
password: 1234To test the API endpoint using Postman:
-
Create a new POST request to
http://localhost:8000/api/recommend -
Set the request headers:
Content-Type: application/json -
Add the following JSON body:
{ "secret_key": "YOUR_SECRET_KEY", "item_name": "Your Item Name", "custom_domains": ["custom_domain1", "custom_domain2"], "price_level": 2, "tags": ["tag1", "tag2"] } -
Send the request and you should receive the response the status.
- Python (Backend)
- TypeScript (Frontend)
- Google Gemini (AI integration)
- Tavily API (Web search)
- OpenAI ChatGPT 4o mini (AI integration)
- Machine Learning (Recommendation system)
- MySQL (Database)
- SMTP (Email server)
Contributions are welcome! Please fork the repository, make your changes, and submit a pull request.
This project is licensed under the MIT License. See the LICENSE file for more details.
For inquiries, visit Cognic AI or email [email protected].