Logo Lanfrica

gammuush/orochatbot

Domain:

natural language processingeducation

Record type:

software
Creator:
gam
Host:
A localized AI tutor chatbot for Ethiopian elementary school students (grades 4–8) in Afaan Oromo. # 🌐 OroChatbot: Production-Ready Afaan Oromo AI Chatbot A high-fidelity, production-grade conversational AI framework designed specifically for the **Afaan Oromo** language. Built utilizing **FastAPI**, **React SPAs**, **Hugging Face Transformers**, and **Docker**. --- ## πŸš€ Key Architectural Strengths - **Afaan Oromo Digraph Awareness**: Tokenizer is fine-tuned to properly digest Afaan Oromo specific digraph segments (like `dh`, `ch`, `sh`, `ny`, `ph`) without sub-tokenizing them incorrectly. - **Morphological Suffix Parsing**: The preprocessing pipeline breaks words down, extracting suffixes (like `oota`, `ummaa`, `dhaan`, `tti`) dynamically to allow morph-semantic similarity matching. - **Dual-Engine Response Pipeline**: - **Primary**: Sequence-to-Sequence (Seq2Seq) text generator using fine-tuned `xlm-roberta-base` encoder-decoders. - **Fallback**: Multilingual semantic similarity retrieval engine. If custom model checkpoints are not yet compiled, the system automatically pools raw question representations and serves appropriate Q&A matches. - **Interactive Controls**: Live training dashboard inside the UI which triggers asynchronous background fine-tuning pipelines and monitors training loss metrics in real-time. - **Complete Validation Suite**: Built-in score calculators computing BLEU-4, ROUGE-1/2/L, accuracy, and model perplexity scores dynamically. --- ## πŸ“ System Blueprint Structure ``` orochatbot/ β”œβ”€β”€ backend/ β”‚ β”œβ”€β”€ app/ β”‚ β”‚ β”œβ”€β”€ api/ # FastAPI Endpoint Controllers & Limiters β”‚ β”‚ β”œβ”€β”€ models/ # Schemas & Model Generators β”‚ β”‚ β”œβ”€β”€ preprocessing/ # Digraph-aware Text Normalizers β”‚ β”‚ β”œβ”€β”€ training/ # PyTorch Dataset Loaders & Trainer Loop β”‚ β”‚ β”œβ”€β”€ utils/ # Structured Logger β”‚ β”‚ └── main.py # App bootstrapper β”‚ β”œβ”€β”€ data/ β”‚ β”‚ └── raw/ # Curated conversational datasets β”‚ β”œβ”€β”€ Dockerfile β”‚ └── requirements.txt β”œβ”€β”€ frontend/ β”‚ β”œβ”€β”€ src/ # React compon …