Logo Lanfrica

zuck30/SWAHIBA

Domain:

natural language processing

Record type:

software
Creator:
zuc
Host:
Swahili-Gpt, Swahiba App The App Official Repo # Swahiba This project presents a complete implementation of a frontend specifically designed for the mixed‑language communication style used across East Africa. > **Please, refer to this repository, Where Model Development is taking place** >zuck30/swahili-llm-scratch # Features - Natural conversation supporting pure Kiswahili, pure English, and natural Kiswaenglish code-switching - Multiple conversation management with create, switch, and delete functionality - Real-time responses with typing indicators - Persistent conversation history in local storage for now # How to Run Follow these steps to set up and run the chat application: # 1. Install Dependencies First, install all required npm packages: ```bash npm install ``` # 2. Install Additional Packages Install Heroicons for the icon set: ```bash npm install @heroicons/react ``` # 3. Set Up Environment Variables Create a `.env.local` file in the project root: ```bash NEXT_PUBLIC_SUPABASE_URL=your_supabase_url NEXT_PUBLIC_SUPABASE_ANON_KEY=your_supabase_anon_key SUPABASE_SERVICE_ROLE_KEY=your_supabase_service_role_key ``` See SUPABASE_SETUP.md for database schema and Edge Function setup. # 4. Run Development Server Start the Next.js development server: ```bash npm run dev ``` # Backend Integration The chat is served by a Supabase Edge Function that proxies to the DeepSeek API and logs consented conversations. - **POST** `/api/chat` - Main chat endpoint # Data Pipeline Consented conversations are logged to Supabase. You can process them using the provided scripts: 1. **Clean Logs**: `npx ts-node scripts/clean_logs.ts` (Strips PII and saves to `data/cleaned_logs.json`) 2. **Export Multi-turn**: `npx ts-node scripts/export_instruct.ts` (Converts to multi-turn JSONL format for model training) # How to Contribute Contributions are welcome and easy to follow: - **Code, ideas, and documentation** → submit via Pull Requests or open an Issue - **Do NOT commit large data file …