Inspiration
Across sub-Saharan Africa, 38–70% of medical and laboratory equipment is broken or unused at any given time, and there are fewer than 10 biomedical engineers per million people (vs 100+ in high-income countries). When a ventilator, centrifuge, or analyzer fails in a district clinic, there is often no on-site engineer, no manufacturer support, and no internet to reach one. The knowledge to fix it exists — just not where and when it is needed.
What it does
Fundi is an offline copilot for biomedical-equipment technicians. Describe a symptom, paste an error code, or feed a device log, and Fundi returns:
- the most likely failure mode, with a citation to real-world reports,
- concrete offline checks the technician can perform first, and
- a clear Escalate / Order part / Resolve on site decision.
It runs entirely on a clinic's existing 8 GB laptop with zero internet, and works in English, Kiswahili, Yoruba, and Igbo.
How we built it
- Model: Qwen2.5-1.5B-Instruct, quantized to GGUF Q4_K_M, running 100% offline via llama.cpp (~1.9 GB peak RAM).
- Grounding (licensing-clean, public-domain): retrieval over the FDA MAUDE adverse-event database (CC0) — 5.74M records filtered to 115,462 real device-malfunction reports with human-assigned problem codes — plus the WHO Medical Device Technical Series for maintenance methodology. We deliberately avoided copyrighted vendor service manuals.
- Retrieval + app: an offline BM25 retriever over 2,084 failure-mode cards + 845 WHO guidance chunks, served by a zero-dependency local web app. Every answer carries citations.
- African-language bridge: MADLAD-400 (Apache-2.0, CTranslate2 int8) translates the query into English and the cited answer back — keeping the scored model English-core.
Accomplishments we're proud of
- A genuinely offline, licensing-clean tool — not a cloud API in disguise.
- An honest, real-label benchmark: on a held-out 800-question test built from real human-assigned MAUDE labels (device-conditioned hard distractors), retrieval grounding lifts accuracy from 62.6% to 68.4%.
- Verified against the official ADTC profiler: passes schema/format, ~1.9 GB peak RAM, no thermal penalty.
What we learned
On the target's SIMD-off CPU build, inference is single-digit tokens/sec for everyone — so efficiency and grounding matter far more than raw model size (a 0.5B model measured the same throughput). And public failure data (FDA MAUDE) is a powerful, untapped, legally-clean substrate for equipment maintenance.
What's next for Fundi
Optional light domain fine-tuning, live sensor/telemetry ingestion, clinician validation of outputs, and field piloting with an African clinic partner.
Built With
- bm25
- ctranslate2
- fda-maude
- gguf
- llama.cpp
- madlad-400
- python
- qwen2.5
- rag
- who

Log in or sign up for Devpost to join the conversation.