Aplikasi chatbot AI Full-Stack yang dilengkapi dengan fitur Multi-Session, memori obrolan persisten, dan Agentic AI menggunakan LangChain/LangGraph.
- Multi-Session Chat: Pengguna dapat membuat, memilih, dan menghapus sesi percakapan secara terpisah.
- Auto-Rename Title: Judul obrolan secara otomatis menyesuaikan dengan pesan pertama yang dikirim.
- Agentic AI: AI tidak hanya membalas pesan, tetapi dapat berpikir dan menggunakan alat (tools) sebelum menjawab.
- Persistent Memory: Riwayat percakapan disimpan secara real-time ke database PostgreSQL.
Frontend:
- React.js (Vite)
- Tailwind CSS
- Lucide React (Icons)
- Axios
Backend & Database:
- Python & FastAPI
- LangChain & LangGraph (AI Logic)
- Google Gemini / OpenAI (LLM)
- Supabase (PostgreSQL & Auth)
Sebelum menjalankan aplikasi, pastikan Anda telah menginstal:
Buka terminal dan arahkan ke folder backend:
cd backend
Buat Virtual Environment dan aktifkan:
Bash
# Windows
python -m venv venv
venv\Scripts\activate
# Mac/Linux
python3 -m venv venv
source venv/bin/activate
Instal dependensi Python:
Bash
pip install -r requirements.txt
Buat file .env di dalam folder backend dan isi variabel berikut:
Cuplikan kode
SUPABASE_URL=your_supabase_url
SUPABASE_SERVICE_KEY=your_supabase_service_key
GEMINI_API_KEY=your_gemini_api_key
# Atau gunakan OPENAI_API_KEY jika menggunakan OpenAI
Jalankan server Uvicorn:
Bash
uvicorn app.main:app --reload
# Server akan berjalan di [http://127.0.0.1:8000](http://127.0.0.1:8000)
2. Setup Frontend (React)
Buka terminal baru dan arahkan ke folder frontend:
Bash
cd frontend
Instal paket NPM:
Bash
npm install
Buat file .env di dalam folder frontend dan sesuaikan URL API-nya:
Cuplikan kode
VITE_API_URL=http://localhost:8000
VITE_SUPABASE_URL=your_supabase_url
VITE_SUPABASE_ANON_KEY=your_supabase_anon_key
Jalankan server Vite:
Bash
npm run dev
# Buka http://localhost:5173 di browser Anda# ai-agent