Offline-first, multilingual clinical AI for Community Health Workers in Africa β Gemma 4 + RAG over WHO & MSF guidelines
# π₯ Daktari AI
### Clinical Decision Support for Community Health Workers across Africa
*Powered by Gemma 4 + RAG over WHO & MSF Clinical Guidelines*
---
## What is Daktari AI?
"Daktari" means *Doctor* in Swahili. Daktari AI is an offline-first, multilingual AI assistant built for **Community Health Workers (CHWs)** β the frontline volunteers who are often the only point of healthcare access for millions of people across Sub-Saharan Africa.
It uses **Gemma 4** (Google's open edge model) with **Retrieval-Augmented Generation (RAG)** over WHO and MSF clinical guidelines to provide:
- **Grounded clinical guidance** β answers backed by real medical literature, not hallucinations
- **Multilingual support** β English, Swahili, French, Hausa, Amharic, Portuguese
- **Multimodal image analysis** β CHWs can photograph wounds, rashes, or malnourished children
- **Offline-first operation** β runs on a cheap Android phone or laptop with no internet
---
## Architecture
```
[CHW types/speaks symptoms or uploads photo]
β
Gemma 4 Vision (multimodal)
β
Query β Embedding Model (all-MiniLM-L6-v2)
β
ChromaDB Vector Store
β WHO IMCI Guidelines
β MSF Clinical Guidelines
β WHO Maternal & Newborn Care
β WHO Malaria Treatment Guidelines
β
Retrieved context injected into Gemma 4 prompt
β
Response in CHW's language + source citations
```
---
## Quick Start
### 1. Install dependencies
```bash
pip install -r requirements.txt
```
### 2. Install and start Ollama
```bash
# Install Ollama:
ollama.ai
ollama pull gemma3:4b # lightweight (4B params β good for demo)
ollama pull gemma3:27b # higher quality (requires ~16GB RAM)
ollama serve
```
### 3. Ingest clinical guidelines
```bash
# Downloads WHO/MSF PDFs and builds the ChromaDB vector store
python src/ingest.py --download
```
### 4. Launch Daktari AI
```bash
python src/app.py # opens at
localhost
python src/app.py --share # generates a public Gradio link for demos
```
---
## Running on K β¦