π₯ HHR Multilingual Health Chatbot - Afaan Oromo + Amharic + English. FAISS RAG for HHR data + DuckDuckGo fallback. 100% free, no API keys, CPU-only, self-hosted. Built for Hararghe Health Research, Ethiopia.
# π₯ HHR Multilingual Health Chatbot
**Hararghe Health Research - Afaan Oromo + Amharic + English**
A production-ready, **100% free** multilingual chatbot for Hararghe Health Research (HHR) that answers questions in **English, Afaan Oromo, and Amharic** - using HHR's own data for local questions and DuckDuckGo for live web search.
---
## β¨ Features
β
**Truly Multilingual** - Ask in Afaan Oromo, get reply in Afaan Oromo!
β
**HHR Knowledge Base** - Scraped HHR website + FAISS vector search
β
**Live Web Search** - DuckDuckGo fallback (FREE, no API key)
β
**Instant FAQs** - Pre-loaded question buttons
β
**No API Costs** - All tools open-source or free tier
β
**CPU Only** - Runs on 8GB RAM, no GPU needed
β
**Data Sovereignty** - Self-hosted, no cloud dependency
---
## π οΈ Tech Stack
| Component | Technology |
|----------|------------|
| **Backend** | FastAPI + Uvicorn |
| **Embeddings** | intfloat/multilingual-e5-small |
| **Vector DB** | FAISS (Facebook AI Similarity Search) |
| **Translation** | Helsinki-NLP OPUS-MT (OromoβEnglish, AmharicβEnglish) |
| **Language Detection** | LangDetect + Oromo keyword fallback |
| **Web Search** | DuckDuckGo Instant Answer API (FREE) |
| **Frontend** | HTML/CSS/JavaScript (no frameworks) |
---
## π Project Structure
hhr-chatbot/
βββ app.py # Main FastAPI application
βββ translator.py # Oromo/Amharic translation
βββ duckduckgo_search.py # FREE web search fallback
βββ faq_data.py # Pre-loaded FAQ database
βββ requirements.txt # Python dependencies
βββ .gitignore # Files to exclude from git
βββ README.md # This file
β
βββ scripts/
β βββ scrape_champs.py # Website scraper
β βββ clean_data.py # Data cleaning
β βββ build_index.py # FAISS index builder
β
βββ models/ # FAISS index (gitignored)
βββ data/ # Scraped data (gitignored)
βββ venv/ # Virtual environment (gitignored)
βββ chat.html # Web interface