An AI-powered customer support assistance portal that leverages Google Gemini for intelligent interactions, image analysis for refund claims, and automated policy enforcement.
- AI-Powered Chat Interface: Intelligent conversational agent using Google Gemini to handle customer inquiries.
- Automated Image Analysis: Validates refund claims by analyzing uploaded images of damaged products using Gemini Vision.
- Policy Enforcement: Automatically applies company-specific return policies to decision-making.
- Multi-Tenancy Support: Manages multiple companies with distinct profiles and policies.
- Admin Dashboard: Comprehensive dashboard for administrators to view claims, manage escalations, and oversee refund queues.
- Real-time Stats: Tracks interaction metrics, AI resolution rates, and customer satisfaction scores.
- Supabase Integration: Robust database management for transactions, companies, and claims.
- Backend: Python (FastAPI), Uvicorn
- Frontend: Flutter (Web)
- AI/LLM: Google Gemini (Generative AI & Vision)
- Database: Supabase (PostgreSQL)
- Deployment: Vercel
app/: Contains the FastAPI backend application.main.py: Entry point for the API and static file serving.services.py: Business logic, AI integration, and database interactions.
assistance_web/: Specific frontend assets and Flutter web build.database_schema.sql: SQL schema for setting up the Supabase database.vercel.json: Configuration for deployment on Vercel.
- Python 3.9+
- Supabase Account & Project
- Google Gemini API Key
-
Clone the repository:
git clone https://github.com/your-username/assistance-portal.git cd assistance-portal -
Install Python dependencies:
pip install -r requirements.txt
-
Environment Configuration: Create a
.envfile in the root directory and add the following:GEMINI_API_KEY=your_gemini_api_key SUPABASE_URL=your_supabase_url SUPABASE_KEY=your_supabase_key
-
Database Setup: Run the SQL commands from
database_schema.sqlin your Supabase SQL editor to set up the tables.
- Start the server:
uvicorn app.main:app --reload
- Access the application:
Open your browser and navigate to
http://localhost:8000.
- Company Registration:
- Use the API or potential setup scripts to register a company.
- A unique tagline and admin credentials will be generated.
- Customer Support:
- Navigate to
/{company_tagline}to access the customer support chat. - Users can chat, upload images for claims, and get instant feedback.
- Navigate to
- Admin Panel:
- Navigate to
/api/admin/login(or the respective frontend route) to log in. - View pending claims, approve/reject refunds, and manage escalations.
- Navigate to
Contributions are welcome! Please feel free to submit a Pull Request.