An intelligent e-commerce assistant for Baysart Marketplace that provides product search, recommendations, and customer support.
- Multi-language support (Azerbaijani, English, Russian, Turkish)
- Product search and recommendations
- Conversation memory and context awareness
- Admin dashboard for analytics and monitoring
- A/B testing support for response optimization
The application uses a multi-agent architecture:
- Router & Orchestrator: Coordinates which agents handle each request
- Instruction Agent: Interprets user intent and handles product search queries
- Memory Agent: Maintains conversation context and history
- Product Agent: Handles product search and recommendations
- Translation Agent: Provides multilingual support
- Personality Agent: Ensures consistent tone and style
- Policy Agent: Enforces content guidelines and security policies
- Python 3.10+
- MongoDB (optional, can use SQLite for development)
- OpenRouter API key (for LLM access)
- Clone the repository:
git clone https://github.com/yourorganization/elchi-ai.git
cd elchi-ai
- Create a virtual environment:
python -m venv venv
source venv/bin/activate # On Windows: venv\Scripts\activate
- Install dependencies:
pip install -r requirements.txt
- Set up environment variables:
cp .env.example .env
# Edit .env file with your configuration
- Initialize the database:
python -m src.db.init_db
- Run the application:
python app.py
or
FLASK_DEBUG=True FLASK_APP=app.py flask run --port=5002
elchi-ai/
├── app.py # Main application entry point
├── config/ # Configuration files
├── docker/ # Docker configuration
├── requirements.txt # Python dependencies
├── src/ # Application source code
│ ├── api/ # API routes and controllers
│ ├── db/ # Database models and initialization
│ ├── models/ # Data schemas and model definitions
│ ├── search/ # Search functionality
│ ├── services/ # Core business logic services
│ │ ├── agent/ # AI agents
│ │ ├── chat/ # Chat handling
│ │ ├── product/ # Product handling
│ │ └── translation/ # Translation services
│ ├── utils/ # Utility functions
│ └── web/ # Web interface templates
└── tests/ # Test suite
The API documentation is available at /api/docs when running the application in debug mode.
See CONTRIBUTING.md for guidelines on how to contribute to this project.
This project is licensed under the terms of the LICENSE file included in the repository.